Ruby + Mosaic = Rusaic ブラウザを作ってみた(gzip対応)

結構前に作りはじめて、そこそこ安定してきたのでこっそり公開。対話的に使えるわけではなく、プログラム中から気軽にhttp/httpsアクセスしたいというのが目的。今から見るとちょっとRubyの機能を使いこなしていない書き方や、意図の不明なコメントもちらほ…

JavascriptでROT13 ROT47

昨日のRubyでROT13 ROT47 - 深く、広く、高くをJavascriptでやってみる。 JavacriptではRubyのような便利な書き方ができないので、対応表を作成するか、ASCIIコードを数字に変換して足し引きするか、どっちかだろう。 ということで。 ASCIIコードバージョン …

RubyでROT13 ROT47

強度は無くてもいいので、目隠し程度の 簡単な暗号化・復号化のアルゴリズムがないかな〜と思って探していたら、 ROT13、ROT47という簡単な換字式暗号があるのを発見。 ROT13 - Wikipedia Rubyでは、 rot13 = "Hello World #123".tr!("A-Za-z", "N-ZA-Mn-za-…

RubyでCGIクラスを使わずに愚直にCookieを発行する

自分のためのメモ key = "hoge" value = "fuga" t = DateTime.now.new_offset(0) + Rational(1, 24) #cookieの有効期限は1時間 print "Content-type: text/html\n" print "Set-Cookie: #{key}=#{value};expires=#{t.strftime("%a, %d-%b-%Y %H:%M:%S GMT")}…

MacBook Air 11インチ欲しい!

MacBook Air 11インチ欲しい! もし当たったらこれからは毎食後歯を磨くことにします。

OpenID2.0 についての関連リンクまとめ

OpenID 2.0 公式ドキュメント 日本語:Final: OpenID Authentication 2.0 - 最終版 原文:Final: OpenID Authentication 2.0 - Final OpenIDの概観を掴むには 仕様から学ぶOpenIDのキホン (1/3):OpenIDの仕様と技術(1) - @IT ↑ただ、OpenID1.1にもとづい…

プロテニスプレイヤー ラファエル・ナダル の名言

テニスはポイントの積み重ねで勝負が決まる。だから、全部のポイントが大事で、大事じゃないポイントなんてない。 ひとつひとつ積み重ねて、結果として勝敗が分かれるんだ。とにかく常に全力を出す。 人生でもそうだと思うけど、大きな決断なんてない。小さ…

人生で大切なことは全てスーパーマリオカートのタイムアタックから学んだ

同じようなことの繰り返しの中に変化と成長があるということ スタートダッシュは大事だということ 全てのコーナーでドリフトする必要などないということ 1つミスをしても時計は進み続けるということ 同じコーナーの同じポイントで同じ量のハンドルを切って…

自分の「外部記憶装置」一覧

を書き出してみるエントリー。ただし物理的メディア(手帳など)は除く。 「外部記憶装置」をまず定義してみると、 「自分が見て、聞いて、感じて、考えて、行動したこと、しようとしていることを記録する装置」 パソコンのHDD Dropbox 携帯電話の電話帳 は…

多元管理の煩わしさとEvernote

Evernoteにはまだ手を出していないのだけれど、その人気がなんとなく分かる気がする今日この頃。ドキュメントはDropbox、Webの気になることははてなブックマーク、ToDo管理はGoogleで、というようにクラウド上の「外部記憶装置」を活用してはいるのだけれど…

リダイレクトしたらエスケープした文字列が戻ってしまう

はてなにログインした状態で http://b.hatena.ne.jp/my/add.confirm?url=http%3A//HOGE/%23fuga とすると、myの部分をはてなIDに変換したURLにリダイレクトして、ブックマークすることが出来るのだが、その時にブクマ対象のURL文字列の一部がunescapeされて…

Firefox addonからJSON形式のデータをサーバーにPOSTしたとき 1/2

エスケープせずにデータを送信していたので、文字列の中に&が入っていた場合、サーバーがそこでデータの区切りと判断してしまい、JSONパースエラーになってしまっていた。仕方ないのでescapeして送信しようとしたが、サーバー側でうまくunescape出来ない。結…

Ubuntu 10.04 にspidermonkey-binをインストール

Debianだとリポジトリに入っているけどUbuntuでは入っていないようなので、 ソースコードから。blog.katsuma.tv を参考に。 $wget ftp://ftp.mozilla.org/pub/js/js-1.7.0.tar.gz $tar xvzf js-1.7.0.tar.gz $cd js/src $make -f Makefile.ref $sudo cp Linu…

ショートカットが自動で張り替えられてた

Dropboxに入れてたアプリの場所を変更したので、デスクトップにあるショートカット(alias)を作り直そうとしたら、自動で参照先が変更されていた。 この機能、いつから実装されてた?それともDropboxのせい?う〜ん。 ちなみにXPのsp3。 ググっても、「Ctrl…

クローンソフトの作成

ソフトの作りはじめでいい練習になると思うのが、WindowsのソフトをLinuxに移植する、クローンソフトの作成。ゴールが明確だし、仕様で悩まない。Windowsで使い慣れたソフトをLinuxでも使えるようになる、というのは結構いいモチベーションになる。でもこれ…

xfce4が死んでどうにもならなくなったとき

パネルもデスクトップもnautilusに食われて、死んでしまった。 セッションの生き残りで、thunarは使えたので、 そこからterminalを起動して、nautilusをkill。 nautilusのプロセスIDは $ps ax | grep nautilus などとすると分かる。 その後、 $xfce4-session…

クリップボードの拡張

記憶されている文字列の後ろに選択文字列を追加する、ということが出来るようになるだけでも、相当便利になると思う。また、画像によって文字列が上書きされてしまうというのも感覚にはそぐわない。 もうちょっと「空気を読んで」欲しいものだ。

さくらインターネットのレンタルサーバーにtokyocabinetとRuby APIをインストール

したときのメモtokyocabinetのインストールは さくらインターネットにTokyoTyrantをいれてみる - コードで気楽な日々を を参考にすんなりと。 ただし「1978th.net」を「fallabs.com」に読み替える必要あり。Ruby APIのインストールは RubyからTokyoCabinetを…

OOo Writerのページ設定

Open Office Writerのページ設定 書式(O)→ページ

情報の適正量

最大は時間の許す限り取り入れられる情報。 最小は次の自分の行動を決定できるだけの量。適正量はその間のどこか。

JavascriptのXMLHttpRequestでサーバーのリダイレクトを補足する

のは「無理」。言語の仕様上無理。 サーバーからのリダイレクトは言語使用者から隠蔽されていて、間接的に「リダイレクトされたこと」を認識できる程度。以下、試みて無理だったこと ・サーバーから302が返ってきたのを補足し、そこでrequestをabortして、リ…

Ubuntu 10.04 にDropBox

Windowsでは以前から使っていたのだけど、 CentOSで挫折したのと「MSOfficeのファイルをLinuxと同期してもなあ」という思いが邪魔をして、放ったらかしになっていた。 何となく思い立ってやってみたら、すんなり入って特に不具合もない。なんでもっと早く思…

はてなブックマークのユーザーが使っているタグ一覧をJSONで取得するには

http://b.hatena.ne.jp/-user-/tags.json で。 Firefoxアドオンのjsファイルを参考に。 40-RemoteCommands.jsの18行目とか。 公開・非公開関係なく取得できるっぽい。

はてなブックマークにシーケンシャルにアクセスしたいとき

http://b.hatena.ne.jp/entry?eid=n としてnを増やしていく。 抜けている番号はない模様。あるいは、 http://b.hatena.ne.jp/entry/n でも可。 ただし、こちらはブックマークされているページのURLを含んだURLにリダイレクトされる。

UbuntuにTokyoCabinetのRubyバインディングをインストール

ruby-devを入れてあれば $ruby extconf.rb $make $sudo make install でOK. @10.04 LTSload error のときは以下を参考に http://d.hatena.ne.jp/shokai/20100421/1271829071

UbuntuにTokyoCabinetをインストール

基本的には、ソースを落としてきて $./configure $make $sudo make install でOK.ただし、あらかじめlibbzip-devやzlib1g-devなどをインストールしておく必要あり。 10.04にて

手垢のついたインターフェイス

グループウェアのように 必ずしも自発的に使っているわけではない人をも対象にしたソフトは、 手垢のついたインターフェイスが最適。 この基本は変わらないが、人は変わる。 物理的存在としてのフォルダは使われていないし、 逆にメールは老若男女使えると思…

パソコン:1人1台から1役1台へ

パソコンだけでなく、さまざまな機器を含めて。パソコンは確かにマルチな役割をこなしてくれる。 悪く言えば器用貧乏。 別の作業をするのにモノ自体が違う方が分かりやすいことだってあるし、 割り切った機能性のほうが使い勝手がいい。どこまで受け持って、…

What's the next step?

今更ながらダビンチコードを見た。 その中での一言。 真実を判断するよりも、次にどう動くかを決める。 What do I do next?とかよりも前向きな印象を受けるのもグッド.

error.logを空にする

$sudo cp /dev/null /var/log/apache2/error.log