2002-01-10(木) 8150歩 [長年日記]
■ tDiary
夕べ、スナップショット1.3.2.20020110をリリースしたんだけど、ひどいバグが見つかってしまったのでアナウンス中止。というわけで、今日になって1.3.2.20020110.1に入れ替え。実はキャッシュを実装してみたんだが、携帯端末用と一般用のキャッシュファイルを同一にしてしまっていたのが敗因。もちろん別々にしないとダメだにょ。
キャッシュは、最新表示と月毎表示の時に利用される(日毎はサイズが小さいので毎回生成しても問題ない)。本文の更新時刻(ツッコミ含む)よりキャッシュが新しい場合には、キャッシュを採用する。キャッシュファイルはdiary.rhtmlの適用までを行ったものなので、キャッシュがヒットした場合の処理はプラグインの適用だけになり、3段階あるerb処理が2段階も省かれることになる。プラグインをあまり使ってない人には特に絶大な効果があるはず。
なお、リンク元の追加は更新時刻を変更しないので、キャッシュにヒットしてしまう。これでは困るので、リンク元の表示をプラグインとして追い出し、毎回生成することにした。最新・月毎で使われるreferer_of_today_shortと日毎・更新で使われるreferer_of_today_longの2つ。
それからキャッシュをプラグインから使うために、Pluginクラスに@cache_pathを追加。実は@data_pathも追加してあるけど、将来別々にする可能性もあるので@cache_pathの利用を推奨。
■ というわけでベンチマーク。去年の8月を使ったのは、一番データが大きかったから。
% time (echo date=200108 | ./index.rb > /dev/null) ( echo date=200108 | ./index.rb > /dev/null ) 4.20s user 0.14s system 99% cpu 4.346 total % time (echo date=200108 | ./index.rb > /dev/null) ( echo date=200108 | ./index.rb > /dev/null ) 2.40s user 0.07s system 99% cpu 2.471 total
最初のがキャッシュファイルがない状態、次のはキャッシュが効いてる状態。リンク元生成をプラグインに追い出す前は確実に2倍は出ていたんだけど、今は1.8倍くらいか。まぁ、営業的にはだいたい2倍と言っていい数字だろう(営業って?)。というわけで、XREAあたりで負荷率が気になってる人もチャレンジする価値はあるかも。もっともスナップショットなのでそれなりの覚悟はよろしく。
■ リンク元といえば、昨日は『最高に気持ち悪い 写真』で検索されてしまって、シオシオですよ。ちょうどHalfLifeをやってる頃だからひっかかったんだろうなぁ。
■ Content-Encoding: deflate(2)
最近のw3mは対応しているという指摘をいただいたので、自宅のMaryを上げてみた。とりあえずAsumi用の0.2.3.2のSRPMをもらってきて、これをビルド。おお、たしかに見えるようになった♪ これでdeflateもどんと来いだ。時間を見て0.2.4のRPMを作ってみよう。
ただ、移行時の手違いでbookmarkを飛ばしてしまったのが泣ける。まぁ、会社で使ってるのもほぼ同じだからそれを持っていけばいいのだが。つーか、最近はアンテナしか使ってないよ(笑)。
2002-01-09(水) 8198歩 [長年日記]
■ Sylpheed
夕べ書き忘れたけど、0.7.0になっていたので自宅の方を入れ替え。なんたって嬉しいのは「いくつかのウィンドウでWMCLASSを指定するようにした」だろー。これで、ウィンドウマネージャがメール作成ウィンドウの場所をちゃんと覚えてくれるようになった。
そうか、WMCLASSを変えればちゃんと覚えてくれるんだな、GNOME(というかsawfish?)。Ruby/GTKでWMCLASSを指定する方法があるのかどうか調べること。と心にメモ。→なかださんのツッコミにより調べるまでもなく解決
■ あとCourier-IMAPも1.4.1になってるんだよなぁ。相変わらずビルドできないから、これはAsumi化後だな。
■ 新型iMac(2)
たしかに、宗教がかってる人もいるけど、それだけじゃないんだよねぇ。けっきょくAppleが作るのは、万人がほどほどに認める中途半端なモノではなく、きっちり好き嫌いの分かれるデザインである、というだけなのかも。旧iMacだってそうだったし。
PalmFanの1/9分に「Pixer社のLuxo Jr.だ」という指摘があって、そういうつながりか、とちょっと納得(笑)。でも、Luxo Jr.は頭でっかちという「かわいいの基本」を押さえているけど、iMacは台座はデカいは、首は太いわで、ちぃともかわいくはない。もちろん重い液晶パネルを支えなければならないからだけど、Luxo Jr.ライクなデザインを狙ったとしたら失敗してるよな。
■ それはそうと、この写真はサイコー(笑)。ネタはセキュリティホールmemo。って、どこがセキュリティ……?
■ セミコロン
セミコロンを入れ忘れてもいいように、自動的にセミコロンを追加してくれるプリプロセッサをRubyで書くというのはどうか(笑)。自動的に識別するのは無理か。
2002-01-08(火) 6647歩 [長年日記]
■ 新型iMac
控えめに言ってもかっこ悪いんだけど、好意的な評価もあったりして混乱する。自分のセンスに自信がないことには自信があるんだけど(意味ふめ)。まぁ、衝撃的なことはたしかだよな。旧iMacも衝撃的ではあったので、そういう意味ではiMacらしいのか。
ただ、本体てっぺんには液晶を挿すんじゃなくて、周辺機器の「小さいお餅」を乗せられるようにして欲しかったな。そしたら神棚に置ける。
■ オブジェクト指向言語は間違っていた!
RWikiのToshiさんのページから。正月ボケからのリハビリに(笑)。
言いたいことはよくわかる。Toshさんが書いているように、Mix-inの発展ととらえると、Ruby屋は理解が早そう。ただ、クラスとモジュールという二面性で物事を把握し続けることは、けっこう難しい気がする。というか、コードが分散してしまって、クラス(やオブジェクト)を一かたまりのモノとして捉えられなくなってしまいそうな。クラスとモジュール、どっちに軸足をおいて考えればいいのかわからなくて混乱。おれの頭が悪いのか? あとでテクニカルレポートも読んでみよう。
しかし、コンパイルが必要な言語というだけで試してみる気が失せてしまうというのはどうにかならんか、おれ(笑)。
■ 関心空間
年明けにやっとひとつキーワード「ASIMOクロック」を追加した。まだこれだけ。
ユーザ中にはいかにたくさんのキーワードを登録するかに血道を上げてる人もいるようだけど、このシステムはいかに少ないキーワードで自分を表現するかにかかっている。と、おれ的に定義したので、これからも「胸がキュッ」とするものだけを登録していくことにしよう。
つーか、いい歳してロボットの人形で「キュッ」としてるのはどうよ?
■ POBox
旅行中に1.6.2が出ていたので入れ替え。コードの全面見直しで速くなっているらしい。……確かに速くなってる……気がする(よくわからん)。それより、入力文字を修正する時にも候補が出るようになったのが嬉しいな、こりゃ。
姉妹ソフトとしてPalmKanaKBなんてのが出ていた。増井さんがユニマガあたりで書いていた記憶がある。面白そうだなぁ。シールを作って入れてみようかな……と思ったけど、どう考えても五十音のテーブルから文字を探すのと、Graffitiを直接入力するのでは、後者の方が速いよな、慣れてるし。初心者にはいいかもしれない。Graffitiの評価は初心者には低いようだし。
■ 沖縄
過去の日記を少し補完。
■ Content-Encoding: deflate
http://cvs.m17n.org/~akr/diary/というサイトからリンクがあるようなんだけど、中身が見えない。なんでかなー、と思って検索してみたら、w3mのML経由でここに到達。deflateとかいう圧縮フォーマットだったらしい。ぜんぜん知らんかった。でも丸一年前の話題……。
inflate.cをコンパイルして、ローカルで読んだ。そうか、MixJuiceの関係者……なのかな?(2002-01-09追記:と思ったらなんのことはない、たなかあきらさんでした)。
それにしても、普段使っているIE(5.5SP2)でもGaleon(0.12)でもw3m(0.2.1)でも読めないので、上に紹介されているような細工をするのもなんだか面倒。たぶんもう見に行(き|け)ません。すみません(笑)。それよりメジャーなgzipでなくわざわざdeflateを使っている理由に興味ありますな。
#いちおう自宅のw3mには対策を組み込んだ
◆ しんちゃん [明日バイク乗るぞぉ〜〜〜〜(笑)]
◆ ただただし [げげ。傘持ってこなきゃ]
◆ doggie [自信ないですが、 Keep-Alive のときは、データを chunk (データの長さとデータのセット)にわけて転送..]