2004年 9月 (1)。

Last Modified: Sat Sep 11 00:39:51 EDT 2004 (09/11, 13:39 JST)

Sep 10 [Fri]


(08:37)
なにかね。
また夢を見たよ。夢の中で「ドリフの大爆笑」の公開録画を見ていた (そんなものに行った記憶はないし、だいいちそんなことが本当にあったかどうかすらわからないのだが)。 起きてから、これが今ではもう不可能であることに気づく。 夢でおこる出来事はいつも平均するとだいたいどれくらい前のことがメインであるのか。 なんらかのモチーフがあるように思うが、   。
(10:59)
なんだか知らんが自分がテキトーに設計した spam 排除ルールがかなりうまく動いていて、 いまのところ SpamBayes などを使う必要をほとんど感じないのだった。そのルールとは: こんだけである。不安なくらい簡単。 しかし今のところ、8割ぐらいの spam がこのルールで排除できている。 完璧ではないが、このくらい減ればいいやって感じ。
(12:03)
あいかわラズーミヒン。
(17:03)
やべ、welcome reception があったのに忘れててタダ飯食いのがした
(こんなんばっかり)。

その前はどっか (Rutgers) の学生のアニメーションとジェスチャー生成に関する トークを聞いていたが、もう爆発的につまんなかった。 あんなトークを聞けば 5セントもらえるというのなら、 明日にでもスーパーモデルの集団を引きつれてアッパーイーストの マンションで隠居生活を始められるだろう (←バカっぽくて気に入ってり罵倒表現、 どこで覚えたんだっけ)。もうね、お前、ただ音声合成と CG くっつけたダケじゃねえかよ。 しかも別にまあたらしいことやってるわけでもなし。 その部屋は冷房が激寒くて、じっさいのところトークどこじゃなかった。 で、さっさと出たいのにそいつはいつまでも喋る。そいつの トークが長いのは内容のせいではなくて、話し方がへただからだ (英語ネイティブなのに)。米人にはよくありがちなことだが、 意味のないフレーズをだらだらとつなげて間をもたせるわりには 全然内容のあることを言っていない。非常にイライラしました。 1時間無駄。

(17:47)
セキネさんが、月曜は 10時半までに来いってさ。朝だよね。

…失礼な!! 今日は 10時前に来たぞ! 1分前だけど。 毎日起床時間をなるべく早いほうへズラそうと努力しているのだりますが、 この週末にまたズレ込みそうな気配…z

(22:54)
まったく今日はなんなんだ? 新学期初の金曜だからか、帰るとき大学近辺は まだ10時ちょい過ぎなのにヨッパラった新入生らしき物体どもではやくも カオスな状態になっていた。5番街 と 8丁目の交差点をはさんで大々的に ラグビーボールを投げあっている大バカ者を発見 (車はどちらの通りもまだ通っているのに)。 ああいう奴こそビルの屋上からつき落とせよ、まったく。
(00:37)
あらたらしい記号の読み方を発明しました:

Sep 09 [Thu]


(09:57)
往生際の悪さ。言いわけは一度で十分だ。

またおかしな夢を見てしまった。ひさしぶりの「入れ子夢」だった (夢の中でまた夢を見ている)。 まず最初のシーンで、どこかのリゾート地っぽいところにいるのだが、海のまわりは なぜか高層マンションで囲まれている。そのあといきなり空が暗くなって、なにやら 紫色に発光する空とぶ円盤のようなものが接近してきた。林立するビルのすきまから見えかくれするが、 そいつはデカすぎるため、全体像は見えない (実際のところこの夢では高層ビル自体は 見てないのだが、この景色の印象が強かったのであとから「あれはビルが立っていた」と いうことにした)。ほかにも鳥カゴ状の中身がからっぽな UFO や、出前のオカモチ状の UFO などが つぎつぎと現れる (もうこの時点でだいぶ狂ってい
る)。しかしどいつもこいつも「ぐわらn、ぐわらn」という空とぶ円盤にしては安っぽい音で 飛んでいるが、あとから考えて、これは現実世界で窓から聞こえてくるエアコンの コンプレッサーの音じゃないかと推測する。いずれにせよ、なんか 「見てはならないものを見てしまった」と感じたので、「うげー、なんじゃこれは…」と 一人で落ちこんでいると目がさめた (一度目の夢から、よって実際にはまだ夢の中)。 すると自分はなにやら列車とも飛行機ともつかぬものに乗っていて眠ってしまったようだった。 しばらくの間、(夢の中の夢で)いまさっき自分が見たことについて「ああ、あれは夢だったのか」 と思い混乱する。そうこうしているうちにそのヘンテコな乗り物は目的地についた。 なんか微妙に高いところを飛んでいたような気がするのだが、この乗り物は線路に着陸する。 ヘンなの。で、その駅らしきものを出るとそこには見知らぬ人々がいて、親しそうに 声をかけてくるのだが (日本国内だった)、こっちはそいつらのことがちっとも記憶にないのだ。 どうやら夢の中では前後の文脈がすっぽり消されているらしかった。 それで、とにかく彼らが案内するから、というのだが、そのあとローカル線 (小田急線みたいなカラーだった) に 乗り換えようとすると、どういうわけか列車のドアが狂ったように開閉をくり返し、 「どうなっとるんじゃ?」と外に出て様子を見ようとした瞬間、ドアが閉まって その列車は走り出してしまい、いきなり彼らとは離ればなれになった。 しょーがないので後を追おうとするが、そもそも一体オレは 何のためにここへ来たのか、どこへ行けばよいのかもまったく知らないのである。 てきとうに路線図や地図を見ても聞いたこともない地名ばかりが並んでいる。 おまけに、ここが日本のどこらあたりなのかもわからない。 途方にくれているうちに (真の) 目がさめて現実世界にもどった。 窓の外ではあいからずエアコンがガアガア言っていた。

まあ、タダ旅行できたからいいということにしておこう。

(12:44)
むかしむかし、あるところに、
無限個の引数をとる関数というのがいました。
(14:34)
あまりに花粉症がひどいのでメディカルセンタあへ行く。 その後すこしだけ贅沢をするためにアイスどカプチーノを注文する。 きょうはすこし蒸していた。お前、研究せろ。
(15:49)
してるってばよ。

ところで、BaseHTTPServer は HTTP persist connection を 扱えるのな。たいしたもんだ。った。以上。おわり

(22:18)
あいかわラズー。

Sep 08 [Wed]


(09:45)
明け方ごろハデにドシャブっていたが、やっぱり。
(10:22)
ふと、"Obfuscated Linux" というものを考える。ファイルシステムの階層を使わずに、 ぜーんぶのファイルを / ディレクトリの下に置いておくのだ。 ユーザのファイルも、バイナリも、ライブラリも設定ファイルもぜんぶ /。 これによりバイナリの PATH とかライブラリの PATH とか設定ファイルの位置を気にせずしてよくなる。 すごい! ちなみに mkdir コマンドは標準で用意されていないので勝手に ディレクトリは作れない。決して使いたくないな。なんかこうなると "Communist Linux" とでも呼んだほうがいいよーな気がしてきた。どうでもいいけど。
(10:42)
ゆでタマゴをノドにつっかえずに食える人って尊敬する。
(15:43)
さいきんホントどこ見ても B&K のことしか書いてないよね。s
(22:52)
googlenews://nasa failed/

やったあー。失敗。やっぱりこういうのは失敗しなくっちゃ、面白くねえよな (他人ごと)。

あるところに (てくるに)、たまごが住んでいました。
たまごは生まれたときから、ずっとたまごでした。
「ぼくはこの先もずっと、たまごのままで死ぬのだ」
そうたまごは思いました。
(23:03)
さて、きのうから学期が始まったので、大学にはまた活気が戻ってきた。 今回は本当はいっこしか取らない予定だったが、シラバスを見ているうちに どうしてももうひとつ取りたくなり、結局 2個取ってしまうことにした (こちらの大学では授業いっこのウェイトが重いので、授業 2つと研究を両立させるのは それなりに大変である。3つだともうほとんど研究できず、4つは取ったことないので 知らないが、聞いたところによると「どれか一つは絶対落とす」そうだ)。 新山はこのところいささか休みボケ的だったが、やはり学期が始まるとテンションが上がるので ずっと盛り上がる。だって毎日セミナーやら授業やらで新しいことをやるのだ。 そして授業に出ていると非常に張りがある (こんな感覚は日本の大学生には 決してわかるまい)。きょう出たのは advanced database system だ。 ほんとは去年取りたかったのだが、ぺるりん先生の CG と時間が重なっていたので 取れなかったのである。実際にデータベース管理をしている社会人の出席が 多いので時間帯は 7時〜9時と遅い。いままで新山は DBMS には 詳しくなかったのだが、これで並列トランザクション処理やらチューニングの 理論やらが学べるというのはわくわくするね! 先生の教え方もうまい (ややオヤジギャグ有だが)。 ただし、一応 SQLの文法や DB の正規化についてはひととおり理解している人を 対象としているが、アルゴリズム的な話も多くて楽しそうだ。 今日さっそくひとついいと思ったのは、先生が 「この授業の内容はとっても楽しいから、ぜひ毎回出席するように」といっていたことである。 先生みづからこう自信をもって言い切れるっていいよな。ぺるりん先生のときもそうだったが、 人気のある授業はたいてい教師自身がその内容を本当に面白がっている。 そしてそういう態度は学生にも確実に影響を与えるらしい。 「面白くないけど、重要だからやんなさい」という項目はたしかにあると思うが、 それでもなるべくこうしてモチベーションを上げる方法は好きだ。

そういえば今日はお昼に Michael (Coral CDN の作者) が主宰する 例の p2p 勉強会がまた再開したので出たのだが、今日は認証つきパケットルーティングの話だった。 どうでもいいけど、米語では "routing", "router" は完全に「らうてぃんぐ」「らうたあ」と発音する。 それはいいとし。て、現在の internet でルーティングを効率よくやる方法というのは いろいろ研究されているが、これはかなり (ビジネス上の問題もあって) 難しい。 Mike によると、たとえば大規模なネットワーク会社 (Splint とか AT&T) は 全世界規模の回線を所有しているが、これらは地域的にオーバーラップしているところがあり、 「いつ、どの地点で自社の回線から他者の回線にスイッチするか?」という問題がもちあがる。 純粋にビジネスだけで考えれば、なるべく自社の回線は使わずにさっさとパケットを 外に出してしまったほうが効率がよいのだが、みんながこれをやるとパケットが 2社のネットワークの間を行ったり来たりすることになり、ひどく効率が落ちることになる。 で、いちおう現在は紳士的な協定があるらしく、なるべくそういうことはしないように なっているはずなのだが、依然として効率よいルーティングを設定するのは至難の技らしい (各ルータはある程度自律している)。これをエンドポイントにいるユーザから見ると、 いちネットワークユーザが自分の通信を最適化するためにできることはほとんどない (できるのはどのプロバイダを使うか、ぐらいの選択肢しかない)。研究者によっては、 これを解決する手段として source routing (パケットを送り出す側があらかじめルーティング経路を指定しておくこと) を提案している。 今回の論文はその一派。 ところが source routing は ISP 側の事情を無視してしまううえに悪用可能なので、 好き勝手に source routing させるわけにはいかない。そこで、この論文では 特定のネットワーク業者が、既存のISPが提供する経路とは別の経路を「売れる」ようにする方法を 提案しているのだった。つまり、ユーザはパケットに「source routing の権利書」を くっつけて既存の ISP に出す。すると ISP はそのネットワーク業者に forward して、 そいつがそのパケットの「権利」を角煮んしてルーティングするという寸法。 かれらはこれを IP パケットのペイロードに公開鍵署名をつけて送ることにより、 パケットごとの認証を行うシステムを開発した。遅そう。 incremental deployment が 可能であると主張している。しかし鍵の配送が DNS の TXT を使うというヘボい方法であるうえに (DNS spoofing されたらどうなるんだ? おまけにキャッシュサーバの存在についても 何も考えていないように見える)、そもそもユーザは「source routing すると本当に 効率がよくなる」ことをどうやって知るのか、という問題にまったく触れられていない。 ぐりむ先生はあいかわらずでぐちぐちと難癖をつけ、Mike も今回は あまりルーティングについて勉強してなかったらしく、セミナーは不完全燃焼で終わった (まあ毎回こんなもんだが)。新山はといえばさらに知識が欠乏していたので 用語がほとんどわかんなくって外国語みたいだった (いや、外国語だ)。 aggregation ぐらいならまだわかるんだけど…

maa, オレはただの自然言語屋だからね (こういうときだけ自分が言語処理屋であることを もちだすとは大変ズルいね! 人間のくず)。

(02:02)
これは…「誰かのせいにしたい病」だ!

Sep 07 [Tue]


(10:43)
いま、鳥の集団がワーーーッッっと目の前を通りすぎていった。
(22:35)
帰りみち、となりの Tisch Building の前を通るとローソクと花束が並んでた。 その周りに暗い顔をした若者が数人集まっている。 また NYU の学生が飛び降り自殺したらしい。Google News で 「nyu suicide」を検索すると、出るわ出るわ。それによると、 すでに今月になって 2人目、過去 12ヵ月間で 6人目の 自殺者であるそう。病んでるなーー。ここまでくると自殺の名所だねうちの大学は。 しかも日本と違って、こちらでは自殺を大々的に報道するのでよけい目立つ。 この調子じゃまた学長の全学声明が出ちまうぞコラ。 日本だと、こういう場合どうしても「大学の環境が悪かったんじゃないの?」 という結論になりがちなのだが、こちらではあんまりそういう雰囲気はない。 しかし NY にいるとだんだんすさんでくるというのはたしかに理解できるので、 大学以外の環境も悪いと思う。それ以外は新山はわりと自殺に理解があるほうだと 思うのであまり深追いしない。James (かれもNYU学生) によれば、フィリピンでは 誰も自殺なんかしないそうだ。ま、基本的におおらかな国では人は自殺しないだろよ。 だって追いつめられないもん…。しかし日本にくらべればまだ NY でも 「追いつめ度」は少ないと思うのだが、それにつけても日本は自殺の名所ですからね。 でもやっぱ自殺大国といえばハンガリーをのぞいてほかにはあるまい。 ハンガリーは前回の旅行での予定行程に入っていたが、ぜひとも行きたかったのに、 列車で行くと時間がかかりすぎるため結局あきらめたのだ。 ああ、温泉と自殺とMPlayerの国! ハンガリーといえばやっぱ「暗い日曜日」だと思う。 新山がこれを最初に知ったのは浅川マキのカヴァーで、これが非常に暗くてハマってるんだ。が、 まあそれはいいとして。

それにしても、飛び降りというのはよくないよな。コワい。 日本ではたしか誰かぶつけられた方も死んでたな。ああいうのはシャレにならない。 しかし高層ビルが多いところでは、やっぱり飛び降りは一番お手軽であるのか (平べったい西海岸あたりだと高層ビルのあるところなんてそう沢山はないだろう)。 なんか新山のイメージだと、飛び降り自殺ってのはどうも決意が必要そうで、 アッパーな雰囲気を感じるのであるが (逆にダウナー系の自殺だと練炭とかかな)、 そうでもないのかしらん。日本でもシンナー吸ってラリった女子高生とかが 集団で落ちたりしてるから、そういうもんなのか。foo

それにしても、今回は図書館じゃなかった。彼女が飛び降りたのは Broadway 側じゃなかったのだが、いつもあのへんは通っているから、 もしかすると直撃された可能性もあったわけだよな。つーか、図書館で 飛び降りるのはやめろ (うちの Bobst Library は豪華にも 12階までつきぬけのアトリウムがある)! あんなところから落ちたら丸見えだし、 1階は学生がふつうに歩いてるんだから! なんか美しくないよなあ、 と思うが、もともと「キレイに死にたい」などという甘ったれた考えを持ってるのは 日本人だけかもしれないから、ストレートな国民性だと死に様なんか気にしない、 ということなのくむしるぬいくど。このさい 完全自殺マニュアルをぜひとも英訳すべきだと思うのはオレだけだろうか。

(01:13)
自殺についてつづき。若いうちに 1度や 2度、自殺を考えるのはべつに普通だと思うんだけど (新山も浪人してた頃はかなり追いつめられ感が漂っていたし)、この国みたいに あんまり楽観主義を押しつけられるとそれがかえって脅迫観念になりそうだな。 と思う。
(01:22)
python1.5 でも動くようにしようとして、さんざんつまずく。 もともと Scheme から入ってきた新山は closure の使用にすっかり 慣れてしまっていたので、いまさら closure が使えないとなると やりにくくってしょうがない。はっきりいって、この頃の Python は どうしようもないヘボ言語だ。ほかにも、 list comprehension がない (全部 map と lambda (と filter) に書き換えなければならない)、 歴史刈るスコープもない、string のメソッドもない、正規表現も違う、 代入演算子が使えない、list.extend にタプルを渡すと怒られる、 とにかくないないづくし。しかし、最近の python のコードに比べると、 1.5 のコードのほうが実は愚直度は高くて読みやすい。 新山が python を本格的に使いだしたのは 2.2 あたりからなので、 そのころすでに ' '.join(x) という表記は可能だったが、 そういえば最初はこれが嫌いで string.join(x, ' ') を使っていたことを思い出す。いつのまにか直感的でないほうの書き方に 慣れてしまった。タイプ数の少ないほうに流れるとは堕落だな。

Sep 06 [Mon]


(10:02)
きのうの夜アレルギー (花粉症) の薬を飲まなかったら、今朝おきて ガビガビ状態。ノドはいたいし鼻水はでるしまるで風邪みたい。 ということでまたもやヤク漬け観音 (がーんがーんがーんがーんga)。 とくに意味はなし。
(20:02)
きょうもほぼ一日デバッグ。p2pのシステムモニタ (中央集権的に管理するサーバがないのだから、 p2p といっていいと思うのだが… でも昨今の状況だとどうも「情報を間接的にやりとりできなければ真の p2p とはいえない」 って雰囲気になってるからな、まあいいや) だが、ようやくまともに動くようになってきた。 いま 8台ほどのマシンでテストしている。これ、なかなか便利かもしれない。 サイトごとの設定は多少あるが (どのアドレスに broadcast するかなど)、 いちど設定してしまえば、あとは新しいマシンで起動しても勝手にネットワークに 参加してくれる。ただしシステム情報を取得しているため否応なしに OS依存になる。 いまのところ、Linux 以外では動かない。しかし、どれかのマシンを勝手に止めても 全体がコケないのはいい。他ホストではそこのエントリに一時的に「down」が 書き込まれるだけで、再起動させるとまた復活する。ただし、連続起動させることを 目標にしてるため、プロトコルは頑健につくらないとね…。ヘンなやつが おかしな情報を放流してしまい、それで一斉にエラーでコケてしまうようでは困る。 セキュリティ的にも注意しなければならない。もちろん、これは信頼できる「内側の」ネットワーク でのみ走らせるという想定であるため、認証らしきことはほとんどしてない (いちおう最低限、そのサイト固有の「署名」を各パケットの先頭にくっつけておいて チェックするということはしている、でも暗号化してないんで覗かれたらオワリ、 むしろこれは 2つのネットワークのデータが混じらないようにする意味が強い)。 でもこの手のやつっていつもどっか exploit されそうでコワイよな。 ポートを 2つも開けている (ひとつは p2p 同士の udp 通信用で、もうひとつは http の状態報告用) となればなおさら。やはり、daemon を設計するというのは 気をつかうのでできればやりたくない。インフラは既存のよくできたパッケージ (tcpserver とか tcpserver とか tcpserver とか) におんぶにだっこするほうが気楽だ…。

ようやく動いてきて今度問題になるのはインターフェイスなのだった。 なにしろ、各ホストの情報の履歴をぜんぶ表示するので、フォントを小さくして table で表示しても依然としてゴチャゴチャと読みにくい (MRTG のようにグラフ化できればいいのだが、新山が見たいのは loadavg だけではなくて、 むしろどのプロセスが負荷をかけているかというようなことなので、 グラフにするのはむずかしい、できなくはないだろうけど)。ここはまだ改善の余地がありそうだな。

(21:14)
くそー、お茶をうっかりカターンとやってこぼしてしまった。 でも緑茶だとこういう時にダメージが少ないのでいい。 将来、自分が何らかの形で「お茶をひっかけられる時」というのもあるかもしれないが、 そういうときのことを考えると、やはり日本茶というのは「お茶をひっかける」のに 適したデザインなのだな、と思う。これがコーヒーとか砂糖入りミルクティーだと 結構タイヘンだ。
(21:46)
まあこんなもんでいいだろ…。 (まだやってます、凝り性なので)

ごはん、へった。
(腹が減ったのではなく腹の中のゴハンが減ったという意、 同時にメシを食わせろという暗黙のプレッシャーも受け持つ)

(02:36)
うわお、今度の彼はイビキがすげーや。(壁を通してこっちの部屋まで聞こえてくる)

Sep 05 [Sun]


(09:38)
いやな夢を見た。そんなに気になる? bkm.

期待されるとガンバってしまう、というのはよくある自然な現象だる。 そしてそれは新山にもあてはまる。 まあ好きでもない人から期待されると逆にヒネクレてやんなくなるが。

(10:12)
さわやかな涼しい朝なのに、なぜかネットワークの調子が悪い。 妙におそいのだ。あれ、ヘンだな? と思って調べてみたら、なんか james の ノートパソコンから外部の 6699/tcp に向かう大量のパケットが…。

てめーー WinMX やってんじゃねえ!!

つうっことでさっそく彼に低調に丁重にお願いしてやめてもらって、 6699/tcp と、ついでに Kazaa の 1214/tcp も閉じておく。 ちなみに navneet は、Kazaa 派だった。ったくよう、どいつもこいつも。

新山の頑固なポリシーとして、うちのネットワークでは file sharing は禁止です。 つうかさー、いちおうこっちは「デフォルトでは信頼」してんだから、 そういうことされると困りますぜ旦那。でもまあ、彼みたいな一般人に 「ファイル共有 = 悪 (倫理的だけでなく物理的に)」ということをわかってもらうのは 難しいかもしれない。ちなみに新山は p2p file sharing は倫理的にも #404080 ぐらいの色で平均的に悪だと思っているが… まあいつか米国にも光ファイバーがひかれてオレがその時にも ルームシェアしてれば許可してもいいよ。何億光年先の話やら。

(16:14)
また噛まれた。% の優先順位が高すぎるのかと思ったらべつの原因だった。
>>> a="1 2"
>>> "%s %s" % (a.split(" "))
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
TypeError: not enough arguments for format string
>>> "%s %s" % tuple(a.split(" "))
'1 2'
このへんは tuple も単一の引数も同じように取るためにややこしくなってるな。
(17:29)
今日は涼しくて曇っていたので一日じゅう家にいた。 電子レンヂを使っていると無線 LAN に師匠が出る。
(04:00)
ああーーー〜〜 〜。また激しく夜ふ更かし。 もう 4字じゃねえかチキショウ。また寝る時間がずれる。きょうはずっと一日じゅう プログラムをデバッグしていた。いや、正確にはただのデバッグではなく、 デバッグ → 機能追加 → またバグが出る → デバッグ → 機能追加 → というスパイラルな作業。vmstat のソースやカーネルの fs/proc あたりを読んだり、 そのあとはソケットまわりでドハマって「なんで、勝手に接続が切れるんだよ!」と ひとりでイカっていた。たぶん、きょう一日で 10時間ぐらいやってたと思う。 キチガイ。我ながらキチガイ。それでもコード量はたったの 500行チョイしか ないのである。あいかわらず、なんでオレはこんなにプログラム書くのが遅いんだろうと 思うと壁に頭ぶつけたくなってくる。おまけにもうネムくて思考力低下地面激突。 もういい加減ネよと思ったら、夕食くってから時間が経過しているために 今度はハラが減って眠れない。人が太るきっかけとゆうのは、こういうものだろうか? しかしそもそもオレは今日はあまりまともにメシ食ってないような…。 ここまで集中してストレスもためてたったの 500行だと? コード量で仕事を計るような奴は死んでしまえ。

Sep 04 [Sat]


(11:17)
どうでもいいけど、9月1日から新しいルームメイトが越してきた。 フィリピン人の James である。今度はフィリピンかよ! と思った人は多いであろう (といってもこの日記の読者数は 4〜5人であるので、多いといってもせいぜい 2〜3人だが)。 オレもさいしょに電話をとったときそう思った。しかし、少なくとも navneet よりは お行儀よさそうだ…し、彼らの食事はサカナ中心だ。 あと、彼は学生である。やはり思うのだが、学生は社会人と一緒に 住んじゃいけねえよば! と思った。なに? その日本語。typo です。さて。

今日は、ちょっと暑いよね。

なぜ会社員といっしょに住むとダメなのか、というのは、 答えるのがむずかしいが、感覚の違いがあるような気のする [気]。 基本的に、学生というのは「まだこれから」と思っている人々の集まりであるのだが、 これに対して navneet は「もうこれまで」と思っている後向きのタイプであった。 まあ、そーなっちゃうと退廃的な雰囲気に支配されるよね… 実際のところ、彼がどの程度ダメサラリーマンだったのかは知らないが (ワハハ、決めつけてるし、でもたぶん彼のあの正確では仕事熱心とはとてもいかないだろうよ)、 この観点の違いは生活のさまざまな面で影響をおよぼす。 部屋は汚れてくるし料金の支払いは遅れるしインド人の数も増えてくる。 これにはまいった。「モラル」という言葉はあまり使いたくないのだが、 はっきりいって彼はモラルが日に日に低下していたと言える。まあ、 毎日理不尽に忙しいとああなるのかもしれないけどね。それでも、そこで ふんばってテンションを保つ (少なくとも保とうという努力はしている) Owen のような 人間のほうがオレは好きだ。これは、アメリカンがおすすめする楽観主義とはまた違う。 新山は自分の将来に対してはかなり見通し暗いと思っている。 「にもかかわらず」、ということなのだほ。なに? この日本語。typo です。さて。

(12:05)
ふと気づいたこと。
>>> obj = object()
>>> obj
<object object at 0x400a13b8>
>>> obj.hgoe = 3
Traceback (most recent call last):
  File "<stdin>", line 1, in ?
AttributeError: 'object' object has no attribute 'hgoe'
これは許されないのに
>>> class a: pass
...
>>> x = a()
>>> x
<__main__.a instance at 0x400c99ac>
>>> x.hgoe = 3
>>>
これは許されるのである。なんで? object() 型と instance は違うということだろうか。
(17:19)
なんだか知らないが、ふいに「あなたの生活と健康状態について」という 匿名電話インタヴューがかかってくる。20分ぐらいかかった。おまけに 電話のノイズがすごくてよく聞きとれない。しかも、英語もよくわからんかった。 「過去一週間に vigorous activity をした時間は何分ですか?」 へ? なにそれ? 「あなたの家あるいはアパートに firearm はありますか?」 最初新山はこれを "fire alarm" と聞きまちがえて「ああ、ありますよ」 などと答えていた。やっぱり電話は苦手だのう。それにしても家に銃火器があることと 健康になんのカンケーがある?

オレは関数やメソッドの終わりには必ず return をつける。 たとえ何も返さなくても return をつける。こうしないと気がすまない。

(21:08)
ISO8859CHARS = { '&':'&amp;', '>':'&gt;', '<':'&lt;' }
for i in range(127, 256):
  ISO8859CHARS[chr(i)] = '&#%d;' % i
def htmlquote(s):
  return ''.join([ ISO8859CHARS.get(c,c) for c in s ])
(22:27)
ひょんなことから web を検索していたらこんなペーじヲミツケタので メモしておく。 ためしてガッテン・永久保存版! 肉じゃが自由自在 である。新山は肉じゃがを人生を通して極める料理のひとつとして位置づけているので、 これは非常に重要だ。

夕飯はうるめいわしを焼く。まあ煮てもよかったのだが、焼きがよかったのだ。 早速! という感じである。なぜなら navneet がいたころは魚を焼くと露骨にイヤーな 顔をされたからだ。いまはもう気がねない (といってもなるべく換気はちゃんとするけど)。 オレはアジやサンマも好きだが、学生時代 (おっと、まだ学生か…) からずっと メザシやイワシを愛用していた。なぜかというと、骨までバリバリ食えるからである。 メザシなんか頭まで食えるしね。栄養教の信者である新山は、「ホネまで食う」というのが 非常に健康によさそうに見えてしかたがない。イワシぐらいになるとさすがに苦いので頭は残すが。 これは生ゴミに入れると臭いそうなので今日は窓から裏の空き地に投げ捨てた。 環境破壊君さね!

ゴハンがすこしだけ余ったのできざみ海苔をふりかけわさび醤油とマヨネーズを つけて食べてしまおう (この禁断のゲテモノぶりはなに? 栄養教の教祖に密告されたら破門されます)。 うっへっへ。

(23:04)
いつも笑点で死ぬ死ぬいわれてる桂歌丸がじつは皆勤だったとは知らなかった
(00:42)
Dan (教授、かれはいつもオフィスに変な時間に来ている) のメールによると、 今、7階のどこかの水道管が破れてフロアが水びたしになってるんだそうな。 アヤしい…。明日は大学に行くのやめようかな。ってゆうか、今週は月曜日も labor day で休みじゃないか! どうする??

Sep 03 [Fri]


(07:59)
まあどこにでも (dkndm) うまく立ち回るのが得意な人はいるわけでして。
(12:02)
もーー、人使い荒いんだからーもう

てくるで、オレは Python 好きだが本物のヘビは好きじゃないぞ。

ふと、Twisted を使えば Python で ssh クライアントが書けて openssh はいらなくなるんじゃないかと思ったが、思わないことにした。

(14:19)
古いプログラマは決して死なない。
彼らはただ新しいアドレスに分岐するだけ
だ。
(17:58)
ロシアのことなんか無視するかと思ったらさすがに報道しやがったな。 今日は大統領選関連が何もなくてネタがなかったと見える。nytimes は。

いまいきなり思い出した単語: google://ヒバゴン/ (約 2,630件)

さいきん、しりとりのページがやたらに活発である。 しかもその誰かは単語登録もしてくれるので、単語数がこのところずっと増えつづけている。 新山の最初の読みはおそらくそのうちみんな飽きて単語登録も止まるであろうと思っていた。 そのうち、ある程度たまったら浅原さんに送ろうかと思っているのだが、いっこうに飽和しない (しかしこないだ本人に尋いたら新しい単語よりも辞書のバグ報告のほうが欲しいそうな)。 なんか、すごい、なあ。

(18:11)
いまなんか窓の外で落ちてった! ここは地上 7階。
(18:27)
てゆうか、当たり判定が厳しすぎるんだよ! この世界は!

しかし「メイドのみやげに」という表現の「メイド」を オレはいままで「名土」だと思っていたが、じつは 「冥土」であることが判明した。これって冥王星と土星??

ある牛飼いがものがたる…ざしき同時のはなし。 光速を超える速さで開店する CD-RAW は、フーリエ変換により 鼻より団子よりラプラスの生駒山。
(21:56)
やはりオレは正規表現が嫌いなんだろうなあ。 なにが嫌いかっていうと、正規表現をテキトーにかくと たいてい underspec になる (マッチしたいものを取り逃したり、 本来マッチしたくないものにマッチしてしまったりする) し、 かといってキチンと気合い入れて書こうとすると非常によみにくくなる。 デバッグも大変。どうにかなんないのか。 ついでに言うと、日本語環境下では正規表現の \w が どの文字をさしているのか新山は知らない。 こういう obfuscate な独自言語はいつも嫌いなのだ。 だから新山はなるべく普段は正規表現は使わないで、 string.startswith とか 1文字ずつのスキャンですませている (速さ <<< メンテしやすさ)。 Python の正規表現には「コメント」機能があるが、 ある正規表現の中からべつの正規表現を「呼び出す」ようにできれば、 もうすこしきれいにかけるのに。まあこれは自分で実装できるから 実装すればいいのか。しかし、もう計算機パワーは十分あるんだから、 いっそのこと文字列認識は CFG を使うというのをデフォルトに してしまったらどうかなあ、とも思う。O(n^2) が O(n^3) になるだけだ。 しかしそれをスマートに組み込んだプログラミング言語 (とライブラリ) は いまだにお目にかかったことない。

ただ正規表現でひとつ便利なのは、文字集合を簡単に定義できることだ。 でも複雑なパターン (たとえば RFC822 完全準拠のメールアドレス) を 正規表現で全部やろうとするような人にはついていけん。

正規表現が好きな人と、わかりにくいプログラムを書くのが好きな人の間には 多くの共通点があると思う。

(00:12)
それにしても。
iSight はなんでこんなにアツくなるのか? おかしいよこれは。

それにしても。
新山は iChat のフキダシが出るときのこの「ぉよ?」という音がけっこう好きだったりする。

「だったりする」とはなんだ!

Sep 02 [Thu]


(09:17)
ひさびすりに slashdot で面白い文章をみつけた。 単語認識の科学だ。 認知科学の問題をまとめててすごく楽しい。まだ絵しか見てねえけど。 というのはウソですこし読んだが、英語の場合は「単語をひとかたまりとして認識する」という モデルが通用するけれども日本語では分かち書きしないのでそれはダメそうだな。 しかし、新山の内省的な経験によれば、 日本人は「別の文字種 (例えば漢字とひらがなとか) との境界を頼りにして文節を認識している」ように 見える。だからこのようにひらがながながくつづくととてもよみづらい。しかし、そもそも 「文節が言語の基本的なユニットなのか?」という疑問はあると思う。 でも日本語においては「形態素」って分類はかなりあやしいし (いまだに品詞の種類だって議論百出なのだ)、 そもそも活用を考えると文字単位で分割するのはおかしいだろう (ex. 「見つける」 = 「みつk」+「er」+「u」、「見つからない」 = 「みつk」+「ar」+「an」+「ai」、「見つける」と「見つかる」が別々の動詞とする説もあるかもしれないが それは自然に思えない)。 ところで、別の言語ネイティブ話者のあいだで文字認識のメカニズムがぜんぜん違うということは ありうるんだろうか。たとえば新山はいまだに英語を読むのがおそい。喋ってもらえば 速く認識できるのだが、文字の認識は遅いのだ。新山はいまだに一文字一文字の「字形」に かなり依存しているように見える。漢字ならばこれはいいが、アルファベットでは 一文字だけではほとんど意味はないのだから、これは新山のパターン認識アルゴリズムが 漢字かな混じり文に最適化されており、アルファベット中心の言語に適した認識アルゴリズムを まだ獲得できていないということだろうか? アラビア語とかもまた違ってそうだがなあ。よくわからんない。

自然言語処理の研究というのは認知科学の方面へ向かわなければ 楽しくもならないしこれ以上発展もしないと思っている (これはむかし GEB を読んで AI 関連に興味をもってからずっと 考えてきたことだが、最近ますますその確信は深まるばかりだ)。 が、いまだにそう思わない人は多いらしい。別にいいけどサ

(11:19)
あー今日はほんとうに花粉症がひどいよひどいよ
(12:08)
どうでもいいけど、 このFlash はかなりカッコいい。
(12:46)
それはぼくに何の影響も与えてないとぼくは言い晴ります
(13:45)
書くことわすれた

nnmkmwsrrhmd

(18:25)
ああお茶とヨーカンがうめえ。 実はいま頼まれてセキネ社の仕事をやっているが… (中略) … それにしても CGI 書くのって退屈だなあ。 これはそもそも HTML をいじるのが退屈だからに他ならぬのだが…
(23:01)
♪らーりぱっぷ ♪らーりぱっぷ ♪らーりらーりらーり
♪らーりぱっぷ ♪らーりぱっぷ ♪らーりらーりらーり
♪らーりぱっぷ
♪ぼぼーんぼーんぼーん

Sep 01 [Wed]


(07:28)
ボーーっと。
(10:30)

なるほど「Charming Python」の中国語訳は 「可愛的 Python」というのか。 「魅力的な Python」よりこっちのほうがいいなあ。

(13:44)
お昼は久しぶりにパキっとしたものを食いたくなり dosa。うまし。

todo: リシュー深刻

(14:52)
長野からソう゛ぁが届いた。にっひと・う゛ぁー

そしてなんとなんと包みには同時に桜井甘精堂の栗ようかんも入っていたよ感激的!!

もったいないので人にはあげずに自分ひとりで食うことにする。

(15:05)
ああ…しかしヤルキー君が向こうへ行ってしまわれた。かのようです。
あのねえ、本当はねえ、
(19:43)
ふとした出来心でシステムモニタを書きはじめてしまい、 基本的な部分はほぼできた。いーかげんにうちのマシン達が 数が増えすぎて、誰がいまどこで何をしているのかわかんなくなりつつある (昨日なんか、あるマシンがここ一週間ずっと single-user mode に落ちてるのに 誰も気づいてなかったということが判明した! スイスに行ってる間にいったい何が起きたんだよ!!)。 ので、マシンの稼働状況をひと目で監視できるような仕組みが必要なのだが、 SNMP は設定めんどうだし、そもそもあれは集中管理するサーバが必要だ (マネージャといふのですか)。 うちのように「誰がいつ落ちるかわかんない (誰も信用できない)」というようなあやしいクラスタでは、 集中管理してるサーバがおかしくなったら誰もわかんない。し、そもそもあるマシンが 落ちたときでも、他のマシンがそいつの「落ちる直前の状況」を覚えておいてほしい。 ついでにいうと、新しいマシンを追加したときでも他のマシンは一切いじらなくてよくて、 新しいマシンが勝手に一覧に追加されるようになってたらいいな。 ということは P2P 風にやるしかないでわないか。 つうことで、ひどく単純なテキストベースのプロトコルをてきとーにでっちあげ、 複数のマシン間で小規模の情報をゆるやかに共有できるようにした。さらに欲をいえば、 スクリプトいっこコピーすればインストール完了、というお手軽なのがよし。 ついでに web ブラウザで状況一覧が見れれば最高。つうわけで 超簡単 HTTP サーバを内蔵させる (asyncore を使ったのだ)。 基本的に信頼したネットワークで使うことしか考えてないため、最初にブロードキャストして 仲間を見つけたあとはアドほっくにノードを追加/削除するだけである。UDP つかってるので 途中で落ちても安心。しかし、いちばんの問題は、UDPパケットの中に欲しいシステム情報を どうやってつめこむかということだよ (複数回に分けて送るのは面倒くさそうなのでやらない)。 テキストで送ると足りないかなあ。いや、どうせ同一サブネットでしか使わないので、 べつにかまわないのだが…そもそもオレは何が欲しいんだ?

こんくらいかしらん。結構あるな。
しかしそれにしても。

Python だから可能なのであります。 あるアイデアがあって、それをてっとり早く実装したくて、 しかもあとでワケわかんないプログラムは書きたくない。 そういう奴がほかに使える言語ってある? なにも実装すべきアイデアがない人の場合は… BrainFuck で Wiki でも作ってりゃいいんだ。いや〜〜〜楽しそうだナァーーー

(「プログラミングはできるけど、アイデアがなにも湧かない人が 暇つぶしに作る代表的なソフトウェア」は、ゲームを除くと、たいてい Wiki か 2ちゃんねるブラウザと相場が決まっている。いや、いいんですよ別に sorehasorede)

(追記: こうしてみると、オレは実装よりも設計が楽しいのだと思う。 もちろんこの 2つはどこまでがどこまでなのか、厳密に区別できるわけではないのだが、 たとえば 1つの関数内のこまかい最適化などはおそろしく「表面的」で実装よりの話だと思う (それで計算量がたとえば指数時間から多項式時間になるとかいったレベルなら別だが)。 2n+100 ですむことが n+20 になったからといって、そのへんをチューニングしようとは思わない。 いっぽう、あるデータがどのオブジェクトに 所属すべきかといった話題はかなり設計っぽく、そういう意味論にはオレは異様にこだわるらしい。 しかし、たかが数行のアルゴリズムをさらに短かくしようとして、あーでもない、こーでもないと いじりまわす人々はまったく理解できない。基本的にそういうパズルは苦手なのだ。 そのへんは愚直でいいじゃんと思う。 むしろ、実装から設計思想が透けて見えるようなコードを書くことが重要だと考える。 つまり実装および言語はなるべく透明でなければならないのである。 それが背後にある哲学を隠してしまうのはよくないのだ。)

(21:24)
そんなくとより浅間山のほうが気になるだ。

そして今日は花粉がすこぶる悪い。

(23:47)

http://images.google.com/images?q=%E5%BD%BC%E5%B2%B8%E8%8A%B1&hl=ja&lr=&ie=UTF-8&c2coff=1&sa=N&tab=wi

http://www.amazon.co.jp/exec/obidos/ASIN/4166600990/


Yusuke Shinyama