2005年 6月 (3)。

_ _↓_ _ _ _ .

Last Modified: Fri Jul 1 02:15:47 EDT 2005 (07/01, 15:15 JST)

Jun 30 [Thu]


(09:27)
ガーーソ!! じつは「府中市」ってのは東京と広島にあるって知ってた??
(10:06)
あれま。また切れた。
(21:36)
きょうは一日じゅうネットの回線が切れていたので、 ちっとも日記が書けなかった。 いつも大学からリモートでログインして書いているために 回線が切れると日記が書けなくなってしまうのよ。 まあいいけreどね。きょうは traiss 翻訳はおやすみだ。 つうか、TV もうつんないので (ネットだけつながらないことはよくある)、 本格的にケーブルがどっかで断線してる雰囲気 (ふいんき)。 さっき comcast に電話したら「つぎの火曜日まで修理できません」とかいわれるし。 こんなの日本じゃぜったい許されん! 1分断線したら 1ドル安くしろ! …しかし、もう最近じゃあこの手の超いいかげんサービスに あまりハラもたたなくなってしまった。 これがアメリカンな生活というものである。 ま、数日間自宅からネットにつながんなくたって、なんてことねえよな。 こういうのもたまにはいいと思う。 しかもこれはどっかのブログロではないので、人に見られていようがいまいが オレは書くぞ。日記とはそういうものだ。
(22:12)
…で…今日はなにしてたんだっけ? ああそうだ。 アップタウンの某所まで行って昼メシ食いながら打ち合わせをした。 それから? そのあと大学に戻って、のろのろプログラミングして、 陽が暮れてきたのでまたぞろ夏時間にダマされてスーパーが 閉まる前にそそくさと帰ろうと思って、そそくさ。 そのあと家で夕食をつくって、きたてなコーヒーを食後に一杯。 いやーーーやっぱ columbian はええわーーー。 さて、いつもこのあとは適当に読書をしたりして過ごすわけだが、以下略。
(02:14)
なにか書こうとしてたんだけど…。なにかの家族、とか、 なにかの裏切り、とか、そんなようなもの。断片的。

ア〜〜“〜〜““こんなんざダメだ!! (あした早起)

Jun 29 [Wed]


(14:48)
そこではじめて人々は人間というものを見たのだった。
(15:33)
"Thin client" をカタカナで「シンクライアント」と書くのはどうなのよ? まともな日本語をだれかつくれよ! 個人的には、「クライアント」はもう浸透しちゃってるから 「バカハブ」にちなんで「バカクライアント」ってのがいいと思うんだけど。

(まあ、しかし、「馬鹿クライアント」ってのは すでにべつのところで頻繁に使われてそうな用語ではある)

(16:51)
ひさしぶりに sl を素で実行しちまった…。これの実行記録をどこかファイルに 書きだしておくようにするとおもしろいかもしれない (とくに多人数の使っている環境ではオモロイ)
(21:50)
todo: こーひー豆、本

(ひさびさの) nylug みーてぃんぐ。 きょうはデータのアーカイブに関する話だった。 Evan さんはアーカイブ用クラスタを専門に売ってる会社の人で、 Archivas.com とゆーところ。 彼によると、 近年アーカイブは米国の企業にとって必要不可欠な技術になりつつあるそうな。 なぜなら書類の保存期間が法律で定められるようになったからだ。 これらは裁判の証拠として使われるので、企業にとっては死活問題となる。 じっさい、すでに今年になって多くの会社でアーカイブ関係の不祥事が発覚している。 たとえば Morgan Stanley は過去の電子メールを消していたために裁判に負けて 数十億ドルの損害を出した。CitiBank や Time Warner もデータ損失で 何億ドルも失っている。で、バックアップとアーカイブは違うという話。 バックアップはデータがダメになった場合に備えて短期間の状態を保存しておくものだが、 アーカイブは何年も前のデータを恒久的に保存しておかねばならない。 しかし、彼がいうには「アーカイブはつねにオンラインでないとダメ」だというのだ。 なぜか? 結局、磁気テープにバックアップして棚に積んでおくだけでは、 いざ弁護士がきて、これこれこういう電子メールを探せ、といったときに 間に合わないのである。さらにアーカイブは一回きりの作業では決してないという話。 メディアには耐久期限があるし、そうでなくてもいろいろと壊れる。 重要なデータの場合は二重化しておく必要もある。アーカイブは これらの現象にもつねに注意していなければならず、したがって ランニングコストがかかるのだ。そしてアクセシビリティも重要とのこと。 まず、ファイルは全文検索できなければならない。それから 考えられうるさまざまなメジャーな形式でアクセスできるようにしておく必要がある。 なぜなら、プロプライエタリなフォーマットやハードウェアを使っていたとして 万が一サポート会社がつぶれたらどうなるか? さらに何年もたったらどうなる? おまけに、情報にはセキュリティが必要だ。さらに、書類によっては、保存期限がすぎたら 意図的に破棄しなければならない。これには電子シュレッダーのような操作が必要で、 米国ではこれは DoD のなんとかかんとかいう基準を利用している。 そしてこれは自動的に実行されるのが望ましい。こうしたことを考えると アーカイブに対する要求は結構シビアだ。専門の会社が存在していることも うなづける。ということでわが社の製品なのです! という話の流れだったが、 とくに技術的につっこんだ話があるわけでもなかったので、 飲み会には出ず。42st. で吉野屋くって帰ってきた。 だいたい新山はいつも飲み会に出るかどうかは、 「おもろい話が聞けそうかどうか?」で決める。 LispNYC のミーティングはこの点ハズレがないが、 nylug の場合はビジネスっぽいときがあるからな。場所も TGIF だし。 どうでもいいけど 57丁目の IBM の守衛のおじさんは毎回同じ人で、 もう顔をおぼえてしまった。(もちろん向こうは知らんだろうが)

google://チョッキンナー/ (38件)

Jun 28 [Tue]


(12:21)
ツジイ先生が MS に魂をお売りになるそうです。 っていうか、ツジイ研てすでにじゅうぶん金持ちに見えるんだけど、 ダメなの? と、ゆうか、自然言語処理なんかべつに大学でも大したことしてないし、 MS が自前で研究してりゃ十分だと思うよ。大学なんかと提携する必要ないって。

教訓: 一度ひろげた風呂敷は広がり続ける。

こういう場合、適切な関係というのは 大学が「問題を発見する側」で企業が「問題を解く側」なんじゃないだろうか? という気がする。しかしほとんどの場合、いまの大学は問題を発見してもいない。 何が問題なのかわかっていないんだろ。

(14:02)
いままで新山は自分のことを「手段を選ばないタイプ」だと思っていたが、 よく考えてみると、とくにこれといって好きな方法はないものの 「こういうやり方は絶対やらない」という忌避が自分の中に 非常に多くあることに気がついた。そういう意味では、オレは実は非常にうるさい。
(16:50)
あづううううううう。 またぞろシャキーンとしたものを食いたくなりきょうはドサ屋がいなかったので kebab そしてそして kebab うまーーーーーーーーーーーーーーーー
ーーーーーーーーーーーーーーー。きょうはいつもの kebab 屋のあんちゃんが 客となにか知らない言語で話してたが、あれはトルコ語なんだろうか? 店の奥では例のイスラム圏の黒頭巾 (なんていうんだあれ、ヴェールじゃなくてケープじゃなくて、ほらアレだよ、アレ! 「シャガール」みたいな名前のやつ!) をかぶったおばさんがいた。 今日みたいな暑い日にあの黒い服装を見るとみょうに納得してしまうが、 実際にゃここは砂漠気候とちがって蒸してるからアチーだろーな、あれは。 それにしてもアラブでもなんで女性はあれで暑くないのか不思議である。 なんで黒にしたんだろ? 東京でもよく東南アジアの女性があれかぶってるの見るけど、 彼女らは白が多いよね?

てくるで、NY でおすすめな 3大ファーストフード:

ポイントは、これらは「ファーストフード」ではあっても 決して「ジャンクフード」ではないことだ (いや、Dosa はファーストフードとさえ呼ばない、いつもいってる Dosa屋の屋台には "Slow Food" と書いてある)。だから ハンバーガやホットドッグなど真のジャンクな物品はこれより無限に下に位置する。 実際、味的にいっても、たとえハンバーガーが世界最高レベルの贖罪を使ったとしても Kebab には勝てないだろう。しかもアメリカンは牛肉じゃねえか。 おなじ狂牛病の危険があるなら吉野屋のほうがまだましだ。 ほかにも焼きそば (チャイナタウン) とかクレープとか売ってるとこあるけど、 やっぱしこの 3つがいいね。

(18:08)
いまから決心。 このチョコはぜったい一粒しかくわない。決心したからな。
(18:33)
も、もういっこ。。。
(22:54)
ドラえもんの新しい道具を考え出した。 「なんでもアヤしく見せる灯」というものである。 これに照らされると、どんなものでも限りなくアヤしいものに見えてしまう。 まあ、実際にはただの懐中電灯なのだが、のび太 (アナタのことです) は それに気づかず、世の中のどんなものもアヤしいと思いこんでしまった。 ところで一方スネ夫のパパは「全日本アヤシイ人連盟」の理事長だったのだが、 これが世にも恐しい結末をひきおこす。この後 「続きは CM のすぐあと!」というテロップが流れるのだが、 CM中にいきなり皇太子殿下と小和田雅子さんとの婚約スクープが報じられ、 それ以後どの局もぜんぶそっち方面の報道になってしまって、 けっきょくその週の「クイズShow-byショーバイ!」の結果はわからずじまい。

(ぜんぶ実話です)

Jun 27 [Mon]


(11:33)
ワーーーー!! クラスカルとプリム!!

おくればせながら、今年の豊富: 誰にも理解できない内輪ウケ (自分にも理解できない) を支えること。

(13:14)
Windows の socket.recv には、MSG_WAITALL がないとゆうこと。だー
(15:32)
いま ML で話題になっているのだけど、Linux の各種資格試験 (=□) について。 けっきょく (ケッキョキ)、そういうのはシステム管理に関する一般の問題解決を 尋かれるのではなくて、RedHat なら RedHat の「やりかた」を知っているかどうか、 をテストされるだけだという。だからこれに従っているようでは ろくにシステムを理解してない「certified 管理者」が大量生産されてしまうという 意味でマズいのだが、それにしてもなぜどの試験もみんな 「ロボット度測定試験」になってしまうのだろうか? これはつまり「システム管理者なんかに脳味噌は必要ない」ってことなんだろうか。 じつにバカにしている。システム管理者のみならず、どんな職に対しても 「この職業はまったく考える必要がない」などと判断することにオレは反対だ。 そんな職業はありえない。単純作業でさえ頭の使いようはある。 ま、それはいいとして、たとえば「web ページがみれません」というユーザからの文句に 管理者はどう対応すべきなのか、ということを考えるだけでも、すでにかなり複雑だ。 管理者はいくつかの領域に原因を分割し、実験(テスト)によってそれを検証しなければならない。 それらにかかわるシステムのレイヤをすべて (…とはいわないまでも、ある程度は) 理解していなければならない。それに、なにより機転が必要だ。 どうしても特定のホスト名がうまく引けないので困っていたら、じつはその名前が /etc/hosts127.0.0.1 で定義されていた、 とかいうウヒャ〜な状況だってある (実際、あった)。そういうときに、すぐさま 「ここか? そんじゃあ、こっちか?」と原因を思いつけるようでないと困るし、 それは特定のディストリビューションに依存してはならない。 つうか、最悪の場合は rcinittab から たどって何がどこに設定されてるか理解できないとね…。 特定のディストリビューションだけを出題する理由は それにロックさせたいからだろうけど、こういう広い範囲にわたる 問題解決を単純な選択式の問題などで試験できるとはとうてい思えない。 最低でも記述式でないとダメなんじゃないの?

しかしどのみち管理者の適性というのは (その時点での) 知識とはべつのところにある、 ように思える。

(16:17)
椅子に座るときに「はぁあ〜〜〜っ」と溜め息をつく奴はキライだ。

てくるで。

雨なのよねえぇ。きょうは午後じゅうザぁーザア降っているが、 外へ出てみたら風は熱風だった。風は象牙色で餅はガラスのいろ。 このぶんだと、夜もちっともすずしくなんないと見える。 どんこど、どんこど。

コレいつやむのよ?

(追記: 「風は象牙色」ってなんかヘンだよああ…と思っていたら、「壁は象牙色」だった。 造芸楼ってなに?)

(17:21)
ひさびすりに java をしばらくやってなかったらひさびすりに (異常繰り返し、冗長) 発見したの仕様:
Java では !、||、&& のかわりに not, or, and が使えない。 C++ では使えるのに!

ところで「桜」と「楼」の字は別ではないぞ!

(19:33)
ヤンダ。
(22:11)
Lisp をやりすぎて疲れた。もう帰ろう。
(23:54)
「それが優しさってもんだろう」

うわーーー、これ。世にもおそろしい言葉の暴力。

こういうのに気づいてない人にかぎって、 「死ね」とか「クソったれ」という言葉には分館だ、 いや、敏感だ。

大学から出るときまた雨がドシャぶっててヤーな一日だった。 まったくよう、日本じゃツユツユしてないってのに 梅雨がない(はずの)国でこの雨はなんだ!

Jun 26 [Sun]


(12:31)
うわ、梅雨だあ ドヨドヨドヨドヨ
(21:46)
ここ数日間、あんまり日記を書いていないが、頭がさえないからだ。 じつはコードもあまり書けていない。論文は読んだが、どうも すっきりしない。シャキーーn' と集中できる瞬間がこないのである。 こういう時間は毎日ほんの少ししか現れないが、このときにしか 新山はほんとうに頭を使う仕事ができない。日記をかくときもそうで、 ノっているときは何も考えてないうちにいつのまにか文章ができているが、 どうもそういうことにならないのだ。 いきなり暑くなってきたからだと思うのだけど、生活時間が 乱れていることにも関係ありそうだ。この時期、だいたいそうなりがちなんだけど、 やはり規則正しい生活にもどさないとな。

てくるで、昨日書き忘れたこと。ひっさしぶりに Jason に会った。 あいかわらず訳のわからん会話。英語が理解できてもヤツの会話は理解できない。 ようするにこいつは Seinfeld に出てくる Kramer なんだよ。

きょうは午後になってアツい時分になぜか甘いアイスコーヒーがのみたくなり、 近所の Dunkin' Donuts へ論文を持ってでかけた。PowerBook も持っていったが、 一度も開かず、ただ運動用の「おもり」として作用しただけだった。 店内はとくに人がいなかったが、そのうち、一人のおっさんが 新山のテーブルに近づいてきてななめ向かいに座った。 歳は 40〜50。中東系。新山が論文を読んでいるのをじっと見、 そのあと「ペンをかしてくれ」というが、なんだか目つきが微妙に落ちつかない。 そのおやじが書いている書類を見ると、 "Dunkin' Donuts / Employment Application" と書かれていた。 このおやじ、ここでバイトすんの? その申込み書をいまここで書いるというわけか。 しばらくするとどこかへ消えて白人のねーちゃんをつれて現れ、なにやら質問をうけていた。 「あんた刑務所いったことあんの? 逮捕されたことあんの? え?」という質問に、 "yes, no" などとはっきりしない答えを言うおやじ。てゆうか、 なんでわざわざオレのとなりでやってるわけよ? しかも、ねーちゃん大声でマルぎこえ。 そのあと白人の店長らしき男が来て、「国籍はあるか?」「職歴は?」などと尋ねているが、 この中東系のおやじの英語がなんだかおかしい。とくに大したことでもないのだが、 なんとなく印象にのこったできごとなので書いておく。 (ふだん印象にのこったことというと、だいたい「ムカつくこと」なのだが、 今日はとくにムカつくことがなかったのでこのような文章になる)

あっ。調子もどってきたかな?

(22:13)
ところで (てくるで) 「美ヶ原」を「みけげん」と読んでるのはオレだけなのだらうか??

Jun 25 [Sat]


(11:47)
けさ起きて最初に言った台詞: 「こ、ここは…!」

さて、ようやく pyvnc2swf ができてきたのだが…。

おそい。

なんだこれは。ほとんど画面のアップデートに追いつかん。 しかし考えてみればこれは予想できたことでもある。 vnc からくるピクセル情報というのは、たとえば RGB が 「青 6ビット、緑6ビット、赤4ビット」のように圧縮されているのだが、 これを Python でわざわざ 1ピクセルずつ展開しようとしていたのだ。 で、これはビット操作であるから、たとえば big-endian の 16ビット値が入ってきたとして、 ここから RGB 情報をとりだすためには一回 unpack してから (((x>>10) & 63) << 2, ((x>>4) & 63) << 2, (x & 16) << 4) のようにしなければならず (RGB のタプルに変換)、これをあとでまとめて再び文字列に pack し、 全ピクセルを join して pygame に渡していた。こりゃあトロトロして当然なわけだ。 画面サイズが 640x480 とかだと、この作業は何万回とくり返されるわけだから。 やっぱし、こういう大量のビット処理なんかは C のほうが向いてると思う。 でも VNC にはクライアント側で「このエンコーディングで送ってちょ」というのを指定できる機能があるので、 最初から無理にサーバ側のエンコーディングに従わなければよかったのだるが。

あと、Python profiler って使ったことなかったんだけど、使ってみようかな? Profiler を使わなくても目で見てあきらかに遅そうな箇所がある。 たとえばこんなのだ:

data = ''.join([ data[i+2]+data[i+1]+data[i] for i in xrange(0, len(data), 3) ])
これはピクセルのエンコーディングを SWF 用に変換するところなのだけど、 やっぱりこういう独立した文字列作成 + join をいちいちやってちゃマズいんだろうな。 C の配列のように in-place で置き換えればずっと速くなるのだが…。 array でも使ってみようかシラン。

todo: とそかん。

(12:41)
高校統廃合のニュースを見て知ったが、 いつのまにか長野高校って新山がいってた高校と同じ通学区になってたんだね? まあどうでもいいけど。しかしこれって高校の「統合」っていうよりも、はっきりと 「廃校」だよな。ようは生徒が少なくなってきて維持できないんだ。

ニューヨウクには何万人も日本人がいるから (たぶん)、 長野のニュースを日々チェックしている人間はオレ以外にいてもおかしくはない。 けど人数はそうとう少ないと思われる。

(16:33)
あち゛ーーーーーーーーーー。 本格的にアツくなってきゃがった。32℃は超えている。 夏だ! 夏といえば海! 海といえば山! ということで 夏 ===>>> 山。 という強引な論理が成り立ってしまうのであった。 教訓。ヒトは好き勝手なことを論理的に証明できる、 つまりそれこそが論理の正体だ。おとなしくしていよっと。

vnc まわりを改造して、クライアントからエンコーディングを 要望する「決め打ちエンコーディング」にしたら、そこそこの速度になった。 なんだ、はええじゃねーかよ! しかしなぜ自分がバカ正直に Server encoding に従うようにしていたのか 思いだした。vncrec の形式に対応するためである。こっちはすでにあらかじめ録画されたものなので あとからエンコーディングを変えることはできないのだった。でもすでに録画されたやつを swf に変換する場合はタイミングを気にしなくていいので、これはこれで残しておいてもいいな。 ところで、電車ん中で powerbook を開いてプログラミングしていたのだが、 「君、それ、言語なに?」ととなりの太ったおやじから尋かれ、そのおやじは こちらの席をかなり圧迫していたので、かなりムッとした答え方をしてしまった。 こちらでは電車で作業していると周りから画面を覗かれいろいろと質問をうけることが多い。 Keynote を使ってプレゼン資料つくってたときは黒人のねーちゃんから、 「なにアンタ、グラフィックデザイナー??」とか言われて脱力したし、 ほかにも日本語表示してたら「おマエのパソコンは日本語と英語をどうやって混在させてるのか」 などと尋かれ、そんなことどうやって説明しろっていうんだ?!

(20:04)
おーい slashdot, いつになったら rss feed を復活させるんだ?
(21:04)
なんとなく今日は暑いし、家に帰ってご飯つくりたくないなー。

…ということで、いつもの日本食料品店へいってコンビニ弁当然としたものを 買ってきてしまった。中華料理などがダメなときでも、ふしぎと日本食だけは入る。 しかし「その気になれば弁当を買える」というワザはニューヨークならではだ。 他じゃできないだろうな。 もっとも一番いいのはやはりサッサと日本に帰ることだが…。

だいたい新山はあまり East villege がすきじゃない。 とくに土曜日の夕方などは、アイデンティティの崩壊した 若者 (日中韓国人、アメリカ人含む) で混みあっていて気分悪いからだ。 St. Marks Place なぞを歩いていると、携帯電話をもって 日本語でなにか大声でわめきながら歩いてる物体に出くわす。 まあここにいる中国人や韓国人も異常さでは似たようなものだが、 彼らはいつも声デッカイのに対して、なぜ日本人は外人相手には蚊のなくような 声でしかしゃべらないのに、日本人相手にはこうも大声でがなりたてるのだろう?

しかしこういうところに来ると「幸せな生活とは何か?」ということについて 改めて考えてしまいますね。

まあ、どうしても新山は都会 (日本であれ米国であれ) の生活というのが 楽しいとは思えないのだ。東京にもニューヨークにもこれだけ住んでみて まだイヤなんだから、こりゃあもうどうしようもない (あとは上海とパリにでも住めば完璧か?)。 もっとも、都会の生活に「慣れる」ことはできる。住めば都ってやつですよ。 しかし、こんなのは絶対に“都”じゃないと思う (はい、矛盾)。 なぜ人が都市へ「観光しに」来るのかも謎だ。オレが旅行者だったら、 ニューヨークなんかまっさきに無視するところなのに…。しかし、 まあ、こういう経験は、自分の中で「将来はこういう生活をしたい」という 計画を考えるのに役に立ったとはいえる。つまり、もう絶対に都会にあこがれる必要はない ということだ (もとから憧れてなかったけど)。と、いうか、都会が好きな奴っていうのは 永久にメニューを選んでる人間のような気がしてならない。

(00:42)
かうものtodo(todo(とど)):

Jun 24 [Fri]


(14:51)
外は暑い。オフィスは寒い。腹が冷えないためにトレーナーは必需品である。

しかし、くりかえすようだが、くりかえしているが、くりかえすとみせかけてそうでないようではいてもじつはそのじつくりかえしにしかなっていないといういみでのくりかえしももうあきた。しかしながら、外は暑い。読み飛ばした奴はもう一度行頭にもどりましょう重要な秘密がかくされています外は暑い。 この週末からじわじは暑くなっていくの予定。もうやだ。

新山としちゃめづらしくバラを買ってみたのである。 基本的に白で、ふちの部分が淡いピンクっぽくなっている品種。 なんとなく出来心で買ってしまったが、高かった。 これで持たなきゃ承知しねーーからな。しかしやはりなんとなくバラは あまり好きじゃない。なんか、この形状が不吉な感じ。

(21:44)
「Kazaa で米軍の機密情報が漏れた」とかいう話はカモクにして聞かないが、 なんで日本じゃ Winny でそんなに機密情報がホイホイ漏れるんだろうか? けっきょく、これは日本人が仕事と私事をゴッチャにしている (= 仕事を家庭に持ちこみすぎる) ということの現れではないのかヤ?

ソフトウェアの海賊行為を「普通のこと」と受け止める人々

Jun 23 [Thu]


(11:14)
ふと思うこと。新山は昼間、とくに午前中のコーディングには気がのらない。 というか、ほとんどできない。だから朝はだいたい本とか論文とかソースとかを読んですごす。 午後になるとようやくコードをかきだすが、たいてい一番すすむのは夕刻から夜にかけてである。 これはどういうわけなのか、と思ったのだが、けっきょくのところ (ケッキョキ)、 朝っぱらから端末にかじりついていると「お天道様に申し訳ねえ」ような気分に なってしまうからだと思う。この感覚はまともだな、うん。 せめて陽が高いうちにはもうちょい人間的な仕事がしたいよね…。
(11:35)
きのう書こうと思っていたこと。

nyu.edu の DNS 空間は世界中にちらばっている 300近いネームサーバ (root-servers.net 含む) によって握られている。よって、このうちのマシンが一台でもクラックされれば .nyu.edu ゾーンは 原理的には詐称可能になる。その中には berkeley.edu や ucla.edu、duke.edu のほかに、 dec.com(!) や it, fr, se, no, ch, au, nl, uk, ar などのドメインのサーバも含まれる。

同じことは columbia.edu などにもいえる。cam.ac.uk はもっとひどく、 400近いネームサーバが関連している。で、調べているうちに偶然発見したのだが、 じつは nyu のネームサーバは cam.ac.uk の名前に関係していた! その経路はこうなっている:

  1. 誰かが www.cam.ac.uk の A を引こうとする。
  2. このアドレスを知るためにはまず ac.uk の NS を知らねばならない。 そのネームサーバのひとつに ns0.ja.net がある。
  3. このアドレスを知るためにはまず ja.net の NS を知らねばならない。 そのネームサーバのひとつに ns1.surfnet.nl がある。
  4. このアドレスを知るためにはまず nl の NS を知らねばならない。 そのネームサーバのひとつに b.nic.fr がある。
  5. このアドレスを知るためにはまず nic.fr の NS を知らねばならない。 そのネームサーバのひとつに ns-sec.ripe.net がある。
    (実際にはこれには glue がある、よって以下の操作は必要ない)
  6. このアドレスを知るためにはまず ripe.net の NS を知らねばならない。 そのネームサーバのひとつに munnari.oz.au がある。
  7. このアドレスを知るためにはまず au の NS を知らねばならない。 そのネームサーバのひとつに adns1.berkeley.edu がある。(これにも glue がある)
  8. このアドレスを知るためにはまず berkeley.edu の NS を知らねばならない。 そのネームサーバのひとつに ucb-ns.nyu.edu がある! (glue あり)
…というわけだ。はあ、はあ。しかしこの ucb-ns というサーバは実際には Berkeley にあるのだろう。このサーバが乗っ取られると、ripe.net が詐称可能になり、 したがって au 全体も詐称可能になり、…最後には cam.ac.uk も詐称可能になるわけだ。 ちなみにこのリンクはまだまだ続く。イギリス国内の IP アドレスを見つけるのに なんで世界中の NS を探しまわんなきゃなんないの? キャッシュサーバは in-bailiwick な名前を優先するんだろうか? dnscache はしそうだな。他のサーバはたしか実装依存だったと思う。

stanford.edu や mit.edu, rutgers.edu などはこんなに末広がりな構造には なっておらず、関連するサーバはせいぜい 30数個である。 これらのほとんどは tld のサーバなのでまず大丈夫だろう。 ほかにも Yahoo や Google もそう。とくに Yahoo に関しては Akamai 経由なのにわりと統制がとれている。

ちなみに tabesugi.net は dyndns.org 経由で、もろ glueless なので 関連するサーバは 50個でした。うちも固定 IP がもらえれば dyndns なんかやめて さっさと in-bailiwick なサーバにするんだが。

(追記: ちなみに cs.nyu.edu のネットワーク構成ははっきり狂っており、 うちには学科の DNS キャッシュが 3つあるのだが、そのうちのどれもサブネットの外側にある。 つうかこれ、建物が別だと思う。やってらんないのでローカルで勝手にキャッシュあげてますけどね。)

(15:12)
ごまかそうとしている箇所を、決っっして見逃すな!!
(00:24)
また「ハモニカおじさん」をみた。 前にも書いたが、この人は駅や電車の中でハモニカをふいている。 しかも、なかなかうまい。ハモニカがあんなにいろいろな音を出せるとは 知らなかった。しかも、素朴な曲だとじつによく合う。ストリートでやってれば 絶対ウケるのに。プロではないにしても、相当なハモニカ好きのおやじであることは まちがいない。よくこの人が駅でハモニカふいているのを何度も見ているし、 この人の腰には 3、4個のハモニカがぶらさがっているからである! ちなみにハモニカはけっこう小さい。10センチあるかないかだ。 手のでかい人なら片手の中にすっぽり入ってしまう。

Jun 22 [Wed]


(07:31)
ややや熱帯夜な夜だった。
それとも、やや熱帯夜な夜だったのか?
それとも、ただの熱帯夜な夜だったのか?
いや、「熱帯夜な夜」というのは冗長すぎる。こういう場合は「熱帯夜」というんだ。 まあ、DDI (どっちでもいい)。てくづえ (tekurdue), ddi pocket とゆうのはまだあるんかね??
<lp>

ちなみに、わざとです (ろ)。

(08:36)
Traiss 翻訳をするようになって skk 辞書に追加された単語一覧: それにしても、毎日毎日こう沢山の修正パッチが公開されてたんじゃ やってらんねえな (新山がじゃなくて、ディストリビューションのほうが)。 こうして見ているとディストリビューションによって 対応までの時間に差があるのがおもしろい (おもしろがってる場合じゃないか)。 おかしいのは、同じソフトウェアでもディストリビューションによっては まったく修正が公開されないこともあるってことだが、これは依存している ライブラリにもよるんだろうか? そんな複雑な条件までテストしてんの? それともただ忘れ去ってるだけ?

todo: 英語の説明ページをつくり, LWN および Slashdot の編集者に href入りの RSS がもらえないかどうか打診してみよう。

(09:10)
むかし自分で Perl で書いたツールをいま見る… すげーー!! Perl で書いてある! あのころのオレは頭よかったんだな、ムダに。

てくるで、KKK のことを中国語で「三K党」と呼ぶことを知った。 このほうがずっとわかりやすいじゃん! で、その 3つの K とは何なんだ? 「奇妙・危険・キチガイ的」かな。 いや「詭弁、強弁、キチガイ的」のほうがいいかな。ゴロ的にも。

(11:42)
しゃん しゃん しゃん しゃん しゃん しゃん しゃん しゃん しゃん しゃん

スズの値 (= teh value of Sn) が聞こえる。

しゃん しゃん しゃん しゃん しゃん しゃん しゃん しゃん しゃん しゃん しゃん

♪ ある-ぶl-こげな-がれ-からま-がれ-げら-らばだ-かば〜
(どことなく、アラブ風の歌)

嫌いじゃないぜ、君。

(14:18)
google://if-i-had-a-nickel-for-every-time/ (もし 〜 すれば 5セントもらえるとするなら)

いうまでもなく、これは米国で 5セント硬貨がニッケルになってから生まれた言い回しである。 出所はどこなんだろう?

(15:35)
ヨクナキ天気になてきたね。
(17:07)
Lisp をいじっていた。今日は cdb の実装を作ってみた。330行ほど。 Python の実装は 250行だったのでそんなに変わらない。 が、マクロをつけたおかげで、たとえば次のようにかける:

Python-cdb の場合:

db = cdb.cdbmake("foo.cdb", "foo.tmp")
db.add("abc", "123")
db.finish()
db = cdb.init("foo.cdb")
print db["123"]
db.close()

CL-cdb の場合: (finish, close が必要ない)

(with-cdb-make (db "foo.cdb" "foo.tmp")
 (add db "abc" "123")
 )
(with-cdb-init (db "foo.cdb")
 (print (getitem db "123"))
)

実際にはこうなってるわけですけどね:

(defmacro with-cdb-make (args &rest body)
 `(let ((,(car args) (cdb-make ,@(cdr args))))
   ,@body
   (finish ,(car args))))

Ruby 信者ならブロックを使って似たようなことをやろうとするだろう。 ただし、Ruby のブロックはマクロとはまったく別の原理によるもので、 無理に (順序が逆だけど) Python でマネするとこうなる:

Python の場合、エセブロック風味:

def mymake(db):
  db.add("abc", "123")
with_cdb_make(mymake, "foo.cdb", "foo.tmp")
def myread(db):
  print db["123"]
with_cdb_init(myread, "foo.cdb")

def with_cdb_make(proc, cdbname, tmpname):
  db = cdb.cdbmake(cdbname, tmpname)
  proc(db)
  db.finish()
  return

こういう場合に Python の欠点となるのは「なんでも名前が必要なこと」だ。 lambda も廃止されたし (新山の中ではすでに廃止されたことになっている、今年の 4月1日以来)、 匿名の関数というものが許されないのである。ただ、いつもいつも新しい名前をスコープに導入するのは 気分がよくない。これでは特定の領域だけで使いたい名前というのがあるときにも Python ではいちいち 名前がそのままスコープ中に残ってしまう。これが気持ちわるい。 現在では名前をある時点で消すには del をつかって明示的に 削除するか (これはどう考えても美しくない)、def を 使って新しい関数をつくってやるしかない。 C の { 〜 } みたいなのが欲しいな。(← 矛盾 →) でもこれ以上新しい機能を増やさないでくれ。

べつに今やっている仕事では cdb は関係ないのだが、研究で使うつもり。なぜなら いまは GLARF の起動時に辞書の hash-table をメモリ上に構築しているのだけど、 こいつが遅くて気に入らないのだ。あと、今ではもうだいぶ「Lisp流儀」に慣れてきたので、 もうちょっと Adam のコードを Lisp っぽくできるだろう (Adam のコードはほんとに基礎的なレベル)。 今のところはうちで GLARF を使っているのは新山だけなのだが (去年まで Shubin が使っていたが彼は卒業してしまった)、 今後 Ralph やへれんも使う予定らしいので、このへんを きちんと整備しておく価値がある。ははあ、なるほど。

しやし (= しかし?) やはり Lisp ではいろいろと戸惑う。 まず、CommonLisp の関数はめちゃくちゃ沢山あるので、 「こういう関数が絶対どっかにあるハズなんだが」と思っても みつけるまでにひと苦労する。新山は HyperRef を使っているが、 HyperRef でも CLTL でもリファレンスがすげー使いづらい。 なんかあるとすぐに Glossary に飛んじゃうし。 おまけに Lisp は妙なところで拡張性があるくせに、 単純なことが以外とめんどうだったりする。たとえばバイト操作。 CommonLisp の標準にはいわゆる「ビットシフト」がない。 つまり Python でいうところの >> がないのである! しかし、そのかわりに dbp と ldb というもっと大がかりな関数があり、 ある数値の特定のビットをいじるための枠組みを提供している。 でも、オレはビットシフトが欲しいんだっての! ファイル操作もかなり不格好だ。たとえばファイルを開くための open という関数があるが、例外動作を こと細かく規定できる。たとえば、すでにファイルが存在していたときに オープしたときの挙動を「エラーを返す / nil を返す / 新しいバージョン番号で作成 / リネームする / リネームしてから削除する / 既存のままでオーバーライドする / 追記する / truncate する」 の中から選べる。おまえは COBOL か? それから、型変換がかなり変態で、ある関数では array → list への 暗黙の変換が行われるのに別の関数ではダメだとか、 あと Python でいうところの struct に相当するパッケージが なくて (あるのかもしれないが発見できなかった) エンディアンの差異を 吸収する関数をわざわざ自分で書かなければならなかったとか。 いちばん困ったのは loop である。 これ、たぶん Lisp の中でもいちばんフクザツなマクロなのだが、 マニュアルを見ても意味不明なうえに、web を検索しても 使用例がぜんぜん見つかんないのである。ようするにこれは Python でいう forwhile と list comperehension (条件つき) を全部いっこにまとめたもので、 メチャ複雑。これを使ったほうがあきらかに簡単に書けるのに、 文法がよくわからん。結論: Lisp 嫌い。

しかし Lisp には絶対的な利点がひとつある。 それは Norvig もいっていたように 「(コンパイルすれば) あきらかに速い」ということだ…。 それに C の関数も直接呼び出せる (segfault の危険はあるけど)。 これだけ速ければ、もうアプリケーションレベルではほとんど C や C++ なぞ必要ないだろう。アセンブラレベルの処理が 必要なときしか使う機会がないように見える。 それでも、可搬性と手軽さという利点はあるか。

(18:46)
返却日、 25日。
(01:25)
todo: うちの大学のDNS管理がいかにダメかということについて書くこと。

(追記: 調べてみたら cuny.edu とか columbia.edu も同じようなモンだった。 rutgers.edu はまとも。)

Jun 21 [Tue]


(10:01)
10:01    10:01
(13:21)
□□□□□、□□□□□□□□□□□□□□□□□□□□□□ー。(□□□□)

□□□□ (□□□□、)、 Firefox □□□□□□□□□□□ (↑) □□□□! □□□□□□□□? □□□□□□□□□□□□□□□□□□□□□□□□□!! (□□: □□、□□□□□□□□□□□□□□□□□□□□□、□□□□□□□□□□、□□□□□)

□□、□□□ー (□ー□□□□□□□□□ &amp;)

google://□□□□□□□□/ (637)

(13:57)
□ーーーーーーーーーーーー□□。□□□□□。□□□□□□□□□□□□、□□□□□□□。□□。 □□□□□□□□□□ soy □□□□□□□□□□□□□□□□□□□□□□□□□□□□□□。 □□□□□□□□□□□□□□。

(□□□□ Firefox □□□□□□□□□□□□□…)

(17:27)
□□□□ □□□□□□□□□□□□□□□□□。 □□、□□□□□□□□□□ Slashdot □□□□□□□□ □□□□□□□□□□□□□□□□□□□□□□□□ □□□□□□□□□□□□□、□□□□□□□□□□□ □□□□□□□□□□□□□□□□□□□□。□□□□、 □□□□□□□□□□□□□□□□□□□□□、 □□□□□□□□□□□□□□□□□□□□□□□□□□□□□□。 □□、slashdot □□□□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□。□□□□□□□□ □□□□□□□□□□□□□□□□□□□□□□□。

□□□□、□□□□□□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□□□ □□□□□□□□□□□□□□□□□□□□□□□□。 □□□□□□□□□□□□□□□□、 □□□□□□□□□□□□□□□? □□□□□□ー□、□□□。 (□□□□□□□□□□□□□□□□□□□□□□□、 □□□□□□□□□□□□□□□□□ □□□□□□□□□□□□□)

(18:18)
□□□□、□□□□□□□□□□□□ sky.fm □□□ 「□□□□□□□□□」□□□□□□□。□□□□□□□□□□□□□□□□、 □□□□□□□□□。□□□□□□□。 □□□□□□□、□□□「□□□□」□□□□□□□□□□□□□□□□□□□ □□□□□□□… □□□□□□□□□□□□ (□□・□□ (am/pm))。
(21:46)
□□□□□□□。□□□□□□□□□□□□□□□。□□□□□□□□□□□〜〜〜“。
□□□□□□□□。□□□□。□□□□、□□□□□□□□□□□ □□□□□□□□、□□□□□□。 ,,,. ,,, (← □□□□□□□□□。)
□□
□□        
    □□
□□□□
  □□□□
□□、       
div-alignright-center □□□□□□□□□□□□□□□□□□□。 <div align="67%"> □□□□□□□□□□□□□□□□□□□、 □□□□□□□□。□□□□□。□□□□、□□□□□□□□□□□□□□□。

□□□□、□□□□□□□□□□□□□□?

(□□: □、table □□□□□□□□。)


Yusuke Shinyama