2007年06月28日(Thu) うすぐもりですよ。湿度も高いですよ。 [長年日記]
● Matrix ― 着席論 (Gecko's Eyes)
Ruby会議でいろいろ楽しそうな話を聴いたのに自分で手を動かせないなあ、と思いながら、tumblrにメモをしておいたら、こんなすばらしい小論になって返ってきました。
赤と一緒にうさぎもMatrixの象徴として使われていたと思うんだけど、なぜうさぎなのかまだわからないんだよなあ。→赤だけじゃなくて、緑もでした〜。Refactor!
そういえば、「Take the red pill」でRubyを使いはじめるのはかくたにさんのプレゼンだったっけ。
● ログ用Wikiの構想を書いたら、手が早いなあ。ありがたい♪(とは言え、ログを取る側ではレンダリング結果を見てる余裕はないので、レンダリングはWikiエンジン側でやって時々更新されれば十分だと思うのですが) あとは、Javascriptで差分をとってサーバに差分だけ送れるといいんですけどね。
● …と思ったけど、ログ用Wikiの場合はクライアント側での計算コストと通信コストのバランスを取らなくちゃいけないんだよね。ほとんどの場合は、1行の変更か1行の追加だろうからエディットグラフの解はコストの同じのが1つか2つしかないんだよね。計算コストの低い方法で偶然見つけたエディットグラフを送っちゃうのが吉な気がしてきた。
● Javascriptでdiffを取る
というわけで作ってみちゃいました。diff-070629.html。JavascriptのArray#eachの書き方がわからなかったりして苦労した。
いまのところ、It's All Textからの更新を捕捉できないのと、最後に2行以上追加する場合のエディットグラフが直感的ではないのが問題。あれ、空行を挿入した時もおかしくなりますね。
どうでしょう?onkeyupでは頻繁すぎるかもしれないけど、何秒かに1回差分を送るようにすれば使えないことはないかもしれない。
最近のツッコまれどころ