今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
マスタプログラマはかく言われた。
「君が去るべき時が来た」
「プログラミングのタオ」 第9の書「結語」、9-0章
--- Silent Life of Dr. Hara, II
``The initial mystery that attends each journey is:
how could the traveller reach his starting point
in the first place."
(「全ての旅にまつわる最初の謎:
その旅人はそもそもどうやって出発点に辿りついたのか」)
ルイーズ・ボーガン(詩人)、訳文は原による。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
マスタプログラマはかく言われた。
「君が去るべき時が来た」
「プログラミングのタオ」 第9の書「結語」、9-0章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
新米が師に尋ねた。 「一つのコンピュータ会社がその他の全部をあわせたより大きいようです。 その会社は小人の国の巨人のように競争者の上を遥かに抜きん出ています。 そのどの部署の一つも業界を形作れるようです。どうしてなのですか?」
師は答えた。 「どうして君はそんな馬鹿な質問をするのかね? その会社は大きいが故に大きいのだよ。 もしその会社がハードウェアしか作っていなかったら、誰もそれを買わないだろう。 もしソフトウェアしか作っていなかったら、誰もそれを使わないだろう。 もしシステムの保守をしているだけだったら、人々は召使のように扱うだろう。 しかし、その会社はこれら全てを合わせ持っているのだから、 人々は神のように思うのさ! その会社は戦おうとしないことで、何の苦もなく征服するのだね」。
「プログラミングのタオ」 第8の書「ハードウェアとソフトウェア」、8-1章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
良い農夫が自分の植えた作物を放置するだろうか?
良い教師がもっとも目立たない生徒とは言え見逃すだろうか?
良い父親が一人の子供でも飢えさせることがあろうか?
良いプログラマが自身のコードのメンテナンスを断るだろうか?
「プログラミングのタオ」 第5の書「メンテナンス」、5-4章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
ワン王子のプログラマがソフトウェアのプログラミングをしていた。 彼の指先がキーボードの上で踊った。 プログラムは一つのエラーもなくコンパイルされ、 そのプログラムは優しい風のように動作した。
「素晴しい!」とワン王子は叫んだ。「おぬしの技術は完璧だ」。
「技術?」と言って、プログラマは彼の端末から振り返った。 「私が従っているのはタオ、すべての技術を越えたところにあるものです。 私がプログラミングを始めたときは、 プログラム全体を一つの塊として眼前に見ておりました。 三年後、私はもはやこの塊を見ませんでした。 代わりに、私はサブルーチンを使いました。 しかし今、私は何も見ません。全ての存在が形を持たない空虚としてあるのです。 私の感覚は何もせず遊んでいるだけです。
私の精神は、計画なしに思うままに働き、その性質そのものに従います。 簡単に言えば、私のプログラムが自らそれ自身を書くのです。 確かに、ときには困難があります。私は困難に出会うと、 ペースを落として、静かに観察します。 そして、私がプログラムの一行を書き換えると、 困難は漂っていた一吹きの煙のように消え失せます。 そして私はプログラムをコンパイルします。 私は静かに座り、仕事の喜びが私の存在を満すにまかせます。 私はしばらく目を閉じてから、そしてログオフするのです」。
「私のプログラマたちが皆、このように賢かったらなあ!」 とワン王子は言った。
「プログラミングのタオ」 第4の書「コーディング」、4-4章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
マスタ・プログラマはかく言われた。
「三日間、プログラミングなしに過したら、 人生は無意味になる」。
「プログラミングのタオ」 第2の書「古の師たち」、2-0章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
マスタ・プログラマはかく言われた。
「プログラマを多く、マネージャを少なく。 さすれば、全てが生産的になるであろう」。
「プログラミングのタオ」 第6の書「マネジメント」、6-0章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
あるとき、一人の男がコンピュータのトレードショーにやって来た。 彼は毎日、会場に入る度に、入口の警備員にこう話した。
「私は大怪盗、特に万引の芸当で有名なのだ。 予告しておくが、このショーも略奪されずにはすまないだろうな」。
この宣言で警備員は大いに不安になった。 会場には何百万ドルものコンピュータ機器があったからである。 警備員はこの男を注意深く観察することにした。 しかし、その男は静かにハミングしながら、 ブースからブースへとぶらぶらするだけだった。
男が去るとき、警備員は彼を脇に呼び、服をチェックしたが、何も見つからなかった。
翌日のトレードショーに男はまたやって来て、警備員をたしなめてこう言った。 「昨日は大量の獲物をまんまと盗んでやったぞ。だが、今日はもっとだろう」。 これを聞いて、警備員はさらに綿密に観察し続けたが、何の甲斐もなかった。
トレードショーの最終日、警備員はもう好奇心を抑え切れなくなった。 「怪盗様、私は大変に悩んでいて、心穏かではいられません。 私の目をどうぞ啓いて下さい。あなたは何を盗んでいるのですか?」
男は微笑んだ。「私はアイデアを盗むのだよ」。
「プログラミングのタオ」 第3の書「デザイン」、3-1章
久しぶりの現状確認。講義もゼミも年内はあと一回だけ。 いつものようにゼミはどれもあまり進まなかったけれど、 まあ勉強にはなっているし、よしとしておこう。 修士ゼミは新しいことはほとんど出来そうにないが、 難しい理論を理解してまとめた、 と言うことで修士論文として認めてもらえるだろう。 数学については、12 月上旬にオーストラリアの研究会で講演、 先週に年末大シンポのショートコミュニケーションで話させてもらい、 宣伝活動はまあまあ。 オーストラリアへの機内でちょっと閃いたことがあり、 久しぶりに数学が進展したかも。 MSJ-SI のプロシーディングの締切が一月中旬なのだが、 まだ手をつけていない。新しい内容を書くわけではないので、 年末年始の作業で間に合うと考えている。 プロジェクトR("Return of Dr.H.")は停止状態。 今年中か、新年早々に引越しの見積りをしてもらわないと。 プロジェクト「K」が再開。 二回目の校正中。来年二月に出版されるらしいが、 編集者の言うことなので、予定は未定。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
不可思議なことが形を成し、 静かなる空虚の中に生まれた。 ただ独り待ち、動かず、ただちに止まり、 しかし常に動いている。 それは全てのプログラムの源泉(ソース)である。 私はその名前を知らないので、 プログラミングのタオと呼ぶことにしよう。
もしタオが偉大ならば、オペレーティング・システムは偉大である。 もしオペレーティング・システムが偉大ならば、コンパイラは偉大である。 もしコンパイラが偉大ならば、アプリケーションは偉大である。 ユーザは喜び、世界は調和する。
プログラミングのタオは遥か彼方に流れ、 朝の風に乗って帰る。
「プログラミングのタオ」 第1の書「静かなる空虚」、1-1章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
マスタ・プログラマはかく言われた。
「風なくして、草動かず。 ソフトウェアなくして、ハードウェア無用なり」
「プログラミングのタオ」 第8の書「ハードウェアとソフトウェア」、8-0章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
マネージャがプログラマたちのところに来て、こう話した。 「君達の労働時間の件だ。 君達は朝 9 時に来て、午後 5 時に帰ることになった」。 これを聞いて皆は怒り、何人かはその場で辞職してしまった。
そこでマネージャは言った。 「分かった。プロジェクトが予定通りに終わる限りは、 君達が自分自身で仕事時間を決めていい」。 今度はプログラマたちは満足し、 昼頃やって来て、翌日の早朝まで働くようになった。
「プログラミングのタオ」 第6の書「マネジメント」、6-4章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
マネジャがマスタ・プログラマのところに来て、 新しいアプリケーションの仕様書を見せた。 マネジャは師にこう尋ねた。 「それに五人のプログラマをアサインすれば、 設計にどれくらいの時間がかかる?」
「一年かかりますね」と、 師は直ちに答えた。
「でもこのシステムが今すぐに、必要なんだよ! 十人のプログラマをあてたらどうだろう?」
師は顔をしかめて言った。 「その場合には、二年かかります」。
「じゃあ、百人のプログラマを使ったら?」
師は肩をすくめて言った。 「なら、その設計は決して終わらないでしょう」。
「プログラミングのタオ」 第3の書「デザイン」、3-4章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
師が新米の一人にタオの性質を説明していた。 「タオは全てのソフトウェアの中に埋め込まれている。 それがどんなにつまらないものでもだ」と師は言った。
「電卓の中にもタオはありますか?」 と新米は尋ねた。
「ある」と答が返ってきた。
「テレビゲームの中にもタオがありますか?」 と新米は続けた。
「テレビゲームの中にさえある」 と師は答えた。
「ではパソコンの DOS の中にもタオがありますか?」
師は咳をすると、わずかに姿勢をずらせて言った。 「今日の授業はここまでにしよう」。
「プログラミングのタオ」 第4の書「コーディング」、4-3章
R 大学紀要に書こうと思っていた論文の内容が既に発表されていることを発見。 もうかなり書いてあったのだが、やむなく中止。 本題の方を考えたいが、まとまった時間が取れなかった。 12 月のオーストラリアでの講演の準備と、 1 月末締切の MSJ-SI のプロシーディング執筆があるので、 新しく前へ進めるかどうかは怪しくなってきた。 回顧的に整理しながら、方向性を探る、というのがよいかも知れない。
卒研ゼミは、それぞれ内容が難しくなってきて、なかなか楽しい。 院生ゼミはラフパス理論のまとめは出来そうだが、 何か新しいことが例としてでもつけ加えられるか、 まだ分からない。 講義は 6 回を終えて、大体感じがつかめてきた。 会議は相変わらず、じゃんじゃんやっている。 今期は学科の人事が沢山あるのでしようがない。
プロジェクトKは全く音沙汰なし。 出版業界は仕事前には契約をしない、と言う謎の世界で、 どうにも分からない。
プロジェクトRは次のステップに入った。 来年からは「小〇川のご隠居」 あるいは「伝〇院裏のセンセー」とでも呼ばれたりしてみたい。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
象牙の塔の魔法使いが、 試験のため最新の発明をマスタ・プログラマのところに持ってきた。 魔法使いがマスタのオフィスに大きな黒い箱を運び込むのを、 マスタは静かに待った。
「これは集積的、分散的、多目的ワークステーションだ」 と魔法使いは説明を始めた。 「 プロプライエタリOSと、第六世代言語と、 多重芸術的ユーザ・インタフェースを装備し、 人間工学的に設計されている。 これを助手に構築させるのに数百人年かかったよ。 すごいだろう?」
マスタは眉をわずかに持ち上げ、 「たしかにすごい」と言った。
魔法使いはさらに続けた。 「会社の上層部が、みんながこのワークステーションを新しいプログラムの開発プラット フォームに使うよう指示したところなんだ。 賛成してくれるかい?」
「もちろん。これをすぐにデータセンタに運ぶことにしよう!」 とマスタは答えた。そして、魔法使いは上機嫌で、彼の塔に帰った。
数日後、新米がマスタ・プログラマのオフィスにやってきて言った。 「私の新しいプログラムのリストが見つからないんですけど、 どこにあるか心当たりがありませんか?」
マスタは答えた。 「ああ。そのリストならデータセンタのプラットフォームに積み上げられてる」。
「プログラミングのタオ」 第7の書「企業の知恵」、7-3章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
とても大きなコンピュータ会社のプログラマがソフトウェアのカンファレンスに行き、 帰ってきてマネージャのところに報告にきてこう言った。 「他のコンピュータ会社で働いている、あの類のプログラマたちは何です? 行儀が悪くて、身なりに気を使わないあいつらです。 髪は長く伸ばしっぱなしだし、着ている服と言ったらよれよれの古着。 やつらは我々の接待用の特別室を滅茶滅茶にしたし、 私の発表の間ずっと騒がしくて邪魔でした」。
マネージャはこう答えた。 「君をあのカンファレンスに行かせるべきじゃなかったな。 あのプログラマたちは物理的世界を越えたところに住んでいるのだよ。 彼等は人生を馬鹿馬鹿しい偶然の結果だと考えていて、 限度を知らずやって来ちゃ去って行くのさ。 何を気にすることもなく、プログラムのためだけに生きている。 彼等が社交の決まりごとなんかにわずらわされるもんか。
彼等はタオとともに生きているんだから。」
「プログラミングのタオ」 第2の書「古の師たち」、2-3章
R 大紀要のためのノートを書き始めた。 進捗は3分の1から半分くらいだろうか。 本来考えている問題はストップ状態。 忙しいこともあり、なかなかじっくり考える気にもなれない。 修士論文の指導は研究ぽいことに入ろうとしているが、 どうなるかまだ分からない。 一応、ラフパス理論のまとめノートは一通り書くだけ書いてもらったので、 あと何回か手を入れていけば、最低限の修論にはなるだろう。 卒研ゼミIは10人近くもメンバがいるのに、 毎回4、5人の出席率。 就職活動もあるからしょうがないか。 卒研ゼミ S は、こちらも勉強になるような難しい不等式の話になってきた。 卒研ゼミ F は、ゆっくり大偏差原理をやっている。 これもなかなか勉強になる。 講義は新・薬学部の「数学4」が強敵。 一年生だというせいもあるだろうが、 騒がしくて静かに聞いてくれず、一時間半終わるとぐったりする。 もう来年からは学生相手に講義することもないのだ、 と思うと少しは気が収まるけど。
プロジェクトRは本格化。 不動産巡りを始めた。あと何回かは東京に行って、 引越し先を決定する予定。目標は 11 月末まで。 本はまだまだ処分し切れない。 いよいよ業者を自宅に呼んでバルク処分する段階に来たか。 本の処分目標も 11 月末。 粗大ゴミはまだ先でいいが、 それ以外の普通ゴミもまだまだ出そう。 これも 11 月中には全て捨てたい。
そういやプロジェクトKはどうなっているのだろうか。 十月出版予定とか言っていたように思うが、 私が予想した通り、いつ出るのやらモードに入ったのかも知れない。 次のモードは出たら御の字モードだが……
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
あるとき新米プログラマが、 単純な会計パッケージのプログラムをする仕事を割り当てられた。
その新米は何日も猛烈に働いたが、 師がそのプログラムのレヴューをすると、 そのプログラムはスクリーン・エディタと、 一般化されたグラフィックス・ルーチンを一組と、 人口知能インターフェイスを含んでいたが、 会計については一行すらも書かれていなかった。
師がこれについて尋ねると、 新米は怒ってこう言った。 「ちょっとは我慢して下さいよ。 いずれ会計の機能も入れますから」。
「プログラミングのタオ」 第5の書「メンテナンス」、5-3章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
マスタ・プログラマは怖れなくプログラムからプログラムへと移動する。 経営上のどんな変化にも彼は傷付かない。 たとえプロジェクトがキャンセルされても、 彼は解雇されない。 何故か? 彼はタオに充たされているからである。
「プログラミングのタオ」 第7の書「企業の知恵」、7-4章
後期が始まって二週間。 講義は文系一般教養の「数理の世界」、「情報の数理」、 薬学部の「数学4」(確率・統計)の三つ。 ゼミは卒業研究がI(離散的確率論入門)、 F(大偏差原理入門)、S(実解析と不等式)の三つと修士ゼミを合わせて4つ。 けっこうタフだ。 大体、時間の使い方がつかめてきたが、 まだ火曜日の早朝起きがうまく調整できていない。
L 先生とメイルでやりとりしていた話の第一レベルはどうやら完了し、 私の方での TeX ノートのまとめなおしも終わった。 しかし、第二レベルをどうするかは模索中で、こちらから連絡することもないし、 L 先生も大変に忙しくなったらしく、連絡が途絶えている。 ひょっとしたらその中で使うテクニックの一つだけを補題にまとめて、 R 大学紀要に短い論文を書くかも。 一度くらいは紀要に書こうかと思っていたので、置き土産のつもりである。 確か 12 月あたりに締切だったから、書く暇があるか分からないけど。 また、MSJ-SI のプロシーディング論文も来年一月末までに書く必要があり、 どうマージするか、あるいは別物にするか、考え中。 12 月上旬にオーストラリアのメルボルンであるシンポジウムの講演準備もせねば。 おそらく 11 月に入ってからでよかろう。 その出張手配はまとめて事務がやってくれるらしいので楽。 今のところ、航空券はクワラルンプール経由になったようだ。
引越しの準備は、相変わらず物を捨て、本を売っているだけ。 今月下旬には、住む地域だけでも決めるため、 東京に行こうと思っている。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
あるとき、構造化されていないプログラムを書いたマスタ・プログラマがいた。 新米プログラマも、彼の真似をしようとして、 構造化されていないプログラムを書き始めた。 新米がマスタに自分の進歩具合を評価してくれるよう頼むと、 マスタは彼が構造化されていないプログラムを書いたことを批判して、 こう言った: 「マスタにとっては適切なことも新米にとって適切ではない。 君は構造を越える前に、タオを理解しなければ。」
「プログラミングのタオ」 第3の書「デザイン」、3-2章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
マスタ・プログラマはかく言われた:
「トラップ・フレームからエラー・コードを取り出す方法を習得したら、 それが君がそこを去る時だ」
「プログラミングのタオ」 第1の書「静かなる空虚」、1-0章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
マスタ・プログラマはかく言われた:
「プログラムがテストされるときは、 もうデザインを変更するには手遅れだ」
「プログラミングのタオ」 第3の書「デザイン」、3-0章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
あるマネジャがクビになるところだったが、 彼のために働いているプログラマの一人が新しいプログラムを開発し、 それが有名になり良く売れた。 おかげで、そのマネジャはクビにならずに済んだ。
マネジャはそのプログラマにボーナスを与えようとしたが、 プログラマはそれを断って、こう言った。 「あのプログラムを書いたのは、それが面白いコンセプトだと思ったからです。 だから何もいらないですよ」。
マネジャはこれを聞いて言った。 「このプログラマは低い地位にいるが、 雇用者としての適切な義務を良く理解している。 彼をマネジメント・コンサルタントに昇進させてやろう!」
しかしこれを聞くと、プログラマはまた拒絶して、こう言った。 「私はプログラムが書けるから、存在しているのです。 もし私が昇進したら、みんなの時間を浪費する以外には何も出来ません。 もう行っていいですか?書いている途中のプログラムがあるので。」
「プログラミングのタオ」 第6の書「マネジメント」、6-3章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
新人がマスタにこう尋ねた。 「東に巨大なる樹形構造があって、『会社本部』と呼ばれています。 それは副社長やら会計士やらで大きく膨れ上がり、 『よし、行け!』とか『こっちだ!』とか、 莫大な数のメモを送り出しているのですが、 誰もそれが何を意味しているのか知りません。 毎年、新しい名前が各部署につけ替えられるのですが、 何の役にも立ちません。 どうしてこんな不自然なものが存在し続けているのですか?」
マスタはこう答えた。 「君はこの巨大な構造を認識し、 それに何の合理的目的もないことに心乱れているのだね。 君はその終わりのない変動に面白みを感じられないかな? 君を守ってくれる部署の下で気楽にプログラミングできることを 楽しんでいないのかな? そうできれば、 どうしてその無駄なものに煩わされることがある?」
「プログラミングのタオ」 第7の書「企業の知恵」、7-1章
中秋の名月の日、お月見に御所に行く。 真夜中に京都御所の中の芝生に蓙を広げ、 男一人で美女たちに囲まれ、お茶と御萩をいただきながら満月を見る。 初老と呼ばれる年まで生きていると、こう言う良いこともあるんだなあ。 長生きはするもんじゃ。
勿論、本当の御所、つまり建礼門の中に入れるわけではないが、 その外側の敷地は昼も夜も入り放題で、 昼間は単なる近道として通り抜けする人も多い。 夜は流石にほとんど人はいない。 中は手入れの行き届いた、広々とした公園のようで、 いつでもひっそりとしていて、清らかな雰囲気。 こんなにオープンにしていても不届き者がいないのは、 流石に今の日本人にも神道が刷り込まれていて、 ここで失礼なことをするのは何かまずい気がする、と思うのだろう。
ちなみに、このお月見にあたって、事前に御所に連絡を入れたところ、 宮内庁から こころよく許可していただいた、とのことである。 ひっそりと、おとなしく、月を見ているくらいならば問題ないようです。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
偉大なる師、チューリングはあるとき、 自分が機械になった夢を見た。 目が覚めて、彼はこう叫んだ。
「私は機械になった夢を見ていたチューリングなのか、 チューリングになった夢を見ている機械なのか、 分からない!」
「プログラミングのタオ」 第2の書「古の師たち」、2-2章
L 先生から新しいヴァージョンのノートが送られてきて、 私が間違いだろうと指摘したところが、 詳しく説明されていた。どうやら正しいらしい。 さらに次のステップのアイデアもメイルで次々、 送られてきた。こういうヴァイタリティはどこから来るのだろう。
何でもそうだが、偉い人は質よりも量がすごいなと思う。 最終的に製品に結実したものだけを見ていると品質に目が奪われるのだが、 やはりそれだけの品質のものを最後に残す人は、 最初のレヴェルで大量に生産しているものだな、と思う。 そう言えば、パリ在住の老大家 M 先生が、 数学者の偉さはゴミ箱の大きさで決まる、 と言ったらしいが、このことかも知れない。 だからと言って、自分はどうすればそうできるのか分からないのだが……。 今のところ、粛々と自分なりにノートを書き直してまとめているところ。
夏休みもあと三週間ほど。 宿題がどれくらい片付けられるかなあ。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
タオは機械語を生んだ。 機械語はアセンブラを生んだ。
アセンブラはコンパイラを生んだ。 そして今、一万もの言語がある。
それぞれの言語はつつましやかなものであれ、 それぞれの目的がある。 それぞれの言語はソフトウェアの陰と陽を表す。 それぞれの言語はタオとともにある。
しかし、避けられるならば、 Cobol でプログラミングしないように。
「プログラミングのタオ」 第1の書「静かなる空虚」、1-2章
L 先生のアイデアも以前と同じところで座礁することを確認。 やはり駄目だったか。 前と同じ内容の講演になりそうだが、 オーストラリアにタイトルと要旨を送っておいた。 プロジェクト ``Kibitzer" のゲラを返した。 再校の予定は不明だが、近々と言うところだろう。
明日からの週は火曜日に卒研ゼミと、 ウィーンからのゲストのセミナがあって、 新学期も近付いてきたなあ、と言う感じ。 火曜日の夜はゲストの接待に付き合う予定。 金曜日、土曜日の夜には、 某A社の天才プログラマKさんの接待を予定。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
あるとき、マイクロプロセッサの仕事をしているプログラマがいた。 彼は訪ねて来たメインフレームのプログラマにこう言った。 「ここで僕がどんなにうまくやってるか見て。 僕には自分自身のオペレーティング・システムとファイル保存デバイスがある。 それに、誰ともこのリソースを分けあわなくていいんだよ。 このソフトウェアは自己完結的で、使い易い。 どうして君は今の仕事を辞めて、ここで一緒に働かないんだい?」
メインフレームのプログラマはこの友人に彼のシステムについて話し始めた。 「メインフレームはデータセンタの霧の中で瞑想する古の聖人のように座っている。 そのディスク・ドライヴは機械の大海のように端から端までよこたわる。 そのソフトウェアはダイアモンドのように多面的で、 原始時代のジャングルのように入り組んでいる。
そのプログラムは一つ一つが独特で、 急流の川のようなシステムの中を動いていく。 それが、僕がそこで幸せにしている理由なんだ」
マイクロプロセッサのプログラマは、これを聞いて黙り込んだ。 しかし、この二人のプログラマはいつまでも、 友人のままでいましたとさ。
「プログラミングのタオ」 第8の書「ハードウェアとソフトウェア」、8-3章
L 先生のノートにどうやら不十分な点を発見。 問題が起こる領域をこっそり避けてしまっているので、 これでは本来の問題を解くことにはなっていない。 軽く一本論文が書けそうだな、と思っていたのだが、 やはり数学はそう甘いものではない。 夏休みの残りは、この問題を考えることになりそう。
明日からの週は月曜日と火曜日が委員会、金曜日が会議。 夏休みが本当に休みなのは学生さんだけです……。
L 先生からノートのあとに、さらなるコメントもメイルで届き、 ちょっとした結果に発展していた。 とりあえず内容は理解したので、これから細部を詰めてみて、 できればプレプリントにする予定。 昔は何を言っているのかさっぱり分からなかったのだが、 今はかなりのところまでアイデアを理解できるのは、 私も三年間で少しは成長したのだろうか。
12 月にオーストラリアの某大学と共同の研究会を開く予定で、 私も招待された。しばらく悩んだが、 こちらからも一定数参加しないと A 堀先生の顔が立たないだろうな、 と思って、最後のご奉公のつもりで承諾のメイルを書いた。 できれば最新のラフパスとフーリエ変換の話をするつもり。
プロジェクト ``Kibitzer" のゲラ読みを一応終えた。 もうちょっと誤字脱字レヴェルのチェックをして、 来週あたり送り返す予定。 沢山、訂正を入れたので、流石に少しは早く返さないと申し訳ない。
期末試験の採点は、一日で全部終了させた。 事務も夏休みに入ったことだし、 これで 19 日までは放免される。 しかし、20日には追試レポートの受け取りと採点に行かなくてはならない。 追試レポートの学生提出締切が事務の一斉休暇の前日の夕方で、 一斉休暇明け 20 日が採点報告の締切、 と言う極悪非道なスケジュールなのだ。 追試関係って昔からこうだったっけなあ。
二週間続いた第一回の MSJ-SI (日本数学会季期研究所)が終了。 私の講演はいつもの如くひどいものだったが、 まあ無事には終わったので良しとしておこう。 L 先生と議論も沢山できて、 三年前にくじけたところから、またもう少し進めるかも知れない。 Proceedings を出版するそうなので、 運が良ければそこに新しい結果を含められるかも。
大学は一週間ほど前に試験期間が終わり、夏休みに入っている。 MSJ-SI のため試験の採点を後回しにしていたので、 これから採点をしなければならない。およそ 200 枚ほど。 締切は 8 月 20 日。 卒研ゼミの学生から、夏休みの間のゼミ希望があり、 それにも応える予定。おそらく、9月から毎週くらいのペースでゼミを入れるだろう。
プロジェクト ``Kibitzer" のゲラが返ってきた。 監修者のチェックが一杯入っていて、ちょっと赤面。 でも無料で名翻訳家とプロの編集者の赤ペン指導が受けられていると思うと、 贅沢な気持ちではある。 このゲラを返すのは月末までとのことだが、 他にすることもあるので、 一週間は早く提出する予定。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
プログラムは軽く機敏であるべきだ。 そのサブルーチンは真珠の首飾りのように結びつけられていなくてはならない。 プログラムの精神と意思は首尾一貫して保たれているべきだ。 少な過ぎることも、多過ぎることもあってはならず、 不要なループも、無駄な変数も、構造の欠如も、 行き過ぎた硬直性もあってはならない。
プログラムは「最小驚きの法則」に従うべきだ。 この法則は何か?それは単に、 プログラムは常にユーザーを最も驚かせないように 反応しなくてはならない、ということだ。
プログラムは、それがいかに複雑であろうと、 単一のユニットとしてふるまうべきだ。 プログラムは外側な見せかけよりも、 その内側の論理によって導かれていなくてはならない。
もしプログラムがこれらの要求を満たしていないならば、 それは無秩序と混乱の状態にある。 これを正す唯一の方法は、そのプログラムを書き直すことである。
「プログラミングのタオ」 第4の書「コーディング」、4-1章
定期試験の監督も終了して、 これでその採点以外は前期も終了。 明日から二週間 MSJ-SI に参加するので、 会議や委員の仕事も全て欠席届けを出してある。 一応、講演の準備もしたが、相変わらずどうなることやら。 兎に角、無難に終えたい。
プロジェクト "Kibitzer" は、8月中頃にゲラを渡してくれるらしい。 アンソロジーなので他の訳者の都合もあるだろうから、 秋を予定しているとは言え、 いつくらいの出版になるかは良く分からないのだが。
プロジェクト "Kibitzer" の原稿を提出。 一段落ついた。この応答がいつ返ってくるのかは不明。 依頼状によれば秋くらいに出版する予定とのことだったが、 どうなるかなあ。 前期の講義は全て終了。 前期の日程は明日月曜日までで、 私は明日に卒研ゼミ三つで授業終了。 明後日火曜日からは二週間ほどの定期試験のシーズンになる。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
マスタ・プログラマはかく言われた。
「役員にプログラムのデモを見せることはできるが、 コンピュータが使えるようにすることはできない」。
「プログラミングのタオ」 第7の書「企業の知恵」、7-0章
プロジェクトRの第一フェイズは今度こそ完了。 学部長に退職届けを提出。 そして MSJ-SI が終了するまではしばらく休止。 その後、第二フェイズ、不動産問題に入る。 プロジェクト「ポーランド」は完了。 培風館から「測度と積分 入門から確率論へ」 (ツァピンスキ&コップ/二宮祥一&原啓介訳)が無事出版された。 数学の専門書を翻訳するような仕事はこれで最後かも知れない。 これまで三冊の翻訳に参加したが、どれも良い本だった。 プロジェクト「K」 ("Kibitzer")は現在 Ver.0.6. 一週間後の締切までに最後の推敲をして、Ver.1.0 を提出の予定。 MSJ-SI の講演準備はようやくスタート。 明日からが前期講義の最終週(月曜だけはあともう二回あるが)。 会議は二つ予定されていて、大変そうだ。
プロジェクト「K」は Ver.0.4 完成。 進捗率 75 パーセントくらいか。 MSJ-SI は講演プログラムも発表されて、 いよいよ準備をせねば…と思うばかりで、 まだもう一つ気合が入らない。 とは言え、兎に角ようやく始めはした。 プロジェクトRは、 先日木曜日に退職届を学科長に提出し、 第一フェイズ完了。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
マスタ・プログラマはかく言われた。
「たった三行しかないプログラムでも、いつの日か、 メンテナンスしなければならなくなるだろう」。
「プログラミングのタオ」 第5の書「メンテナンス」、5-0章
プロジェクト「ポーランド」は本の表紙デザインの確認が来て、 いよいよあとは印刷するのみのようだ。 プロジェクト「K」は Ver.0.2 が完成。 提出の Ver.1.0 まで、数回は推敲する予定。 進捗率は 55% くらいか。 MSJ-SI の準備は全然。いよいよ、しなければならない。 今週で、教育実習に帰省していた学生たちが皆帰ってきて、 卒研ゼミがフルモードに。 プロジェクトRは今週に第一フェイズが終わるかも。
堺町通り三条下る、「イノダコーヒー本店」。 観光のつきあいで来たことしかないのだが、 名所の一つとして訪問。確か、かなり前に、 旧館が火事か何かで閉鎖されたと聞いたように思うのだが、 復活していた。禁煙室として使われている。 それから二階って前からあっただろうか。 改修したのかも知れない。 本店もそうだが、支店も含めて、 イノダはいかにもイノダらしい。 私の印象は、 ホテルに入っている昔風の良い喫茶店、と言う感じ。 京都の町の文化、西洋への憧れ、 色んなことを考えさせられる場所である。一度は行ってみて損はない。 ただ、私自身はほとんど行かない。 第一に珈琲の味がどれを選んでみても好みでないし、 第二に(本店は)インコがうるさい。 少なくとも本店は、静かに思索にふける、とか、読書する、 とかには不向きだろう。 仕事前に目覚しの一杯、とか、商談には向いているだろうし、 昔からのご近所の常連さんも多いと聞く。 京都は町だなあ、と思う。 色んな意味で、京都の風景である。
プロジェクト「K」は第一フェイズが完了。 全体の進捗率は丁度 50 パーセント。予定より一週間ほど早く、 第二フェイズに入った。 プロジェクト名「ポーランド」は完全にこちらの手を離れた。 あとは出版を待つのみ。プロジェクトRはたぶん順調。 関係ないと言えば関係ないのだが、 実家に別の用で電話した折にこの件も報告しておいた。 研究室の整理プロジェクトは、 書類と書籍について予定より一週間ほど早く完了。 あとは機材だが、機材については秋か冬を予定しているが、 最悪の場合、ずっと放置でも良かろう。 MSJ-SI の講演準備とその数学はなかなかやる気にならず。 明日からの一週間で他の雑用やプロジェクトをおおむね片付けて、 7月からはこちらに集中する、と言うのが良さそうだが、 それを言い訳にして、今サボっているのかも知れない。 一昨年からの学会の仕事をまた今年も頼まれた。 これも出来るだけ早く片付けたい。定期試験の問題作成は完了。 卒研ゼミは教育実習で休んでいた学生たちがそろそろ戻ってくるので、 またフルにゼミがはいる。
明日からの一週間はいくつか緊急会議が入る可能性があるし、 卒研ゼミも一つ戻ってくるが、 プロジェクト「K」をおおむね片付け、 プロジェクトRの第一フェイズ終了の目処をつけ、 学科仕事の第一報告を片付けるのが目標。 あ、そうだ、Problem Paradise の解答作れるかなあ。
MSJ-SI の予稿は提出完了。 講演のときに、少しは新しい話が入れられるかどうかは、 これから一ヶ月のがんばり次第、の泥縄式。 プロジェクト「ポーランド」は完了したはず。 出版は近々だろう。来月の「数学セミナー」などに宣伝を打つそうだ。 プロジェクト「K」の進捗率は現在 33 パーセントくらい。 一通りの訳を仕上げるのが、今月末の予定で、そこで全体の 50 パーセント。 その後、三週間かけて推敲する。 プロジェクトRは一年がかりの大(秘密)プロジェクトなので、 進捗率は漠然としか分からないが、スケジュールはこなせている。 情報を明かすべき人にはそれに応じて徐々に明かしているのだが、 その公開率が進捗率にシンクロしているので、目安になる。
卒研ゼミが二つ、学生の教育実習のため休みになっていて、 かなり日々の生活が楽。 休まない作戦は大体好調に進んでいるが、 やはり相手のいる予定がない日、特に土曜と日曜は、 朝が遅くなりがちなのが課題。 もっと、日々を全く同じ調子で暮らしたい。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
マネージャが会議づくめのとき、 プログラマはゲームを書いている。 会計士が四半期の利益について話しているとき、 開発予算がまさにカットされる。 上級科学者が青空について話しているとき、 雲が流れ込んでくる。
まさに、これはプログラミングのタオではない。
マネージャが責任を果たすとき、 ゲームのプログラムは無視される。 会計士が長期の計画を立てるとき、 調和と秩序が戻ってくる。 上級科学者が手中の問題に集中するとき、 問題はすぐに解ける。
まさに、これがプログラミングのタオである。
「プログラミングのタオ」 第6の書「マネジメント」、6-1章
そろそろ本当に7月末からのMSJ-SI のための準備をしなければ。 シリーズレクチャーの招待講演者の内容とあわせるためもあって、 既に出来ている昔の話で良さそうだが、 それにしても何かは新しいことが入っていないと。
プロジェクト名「ポーランド」は最終校正の段階に入った。 今週中くらいで私がすることは終わり、あとは出版されるのを待つだけ、 になるはず。 もう流石にお蔵入りすることはないと思うので情報をあかしておくと、 Capinski-Kopp ``Measure, Integral, and Probability" の翻訳である。原書はイギリスで標準的に使われている積分論の教科書。 微積分の復習から入るくらいの易しさだし、具体的で分かり易い。 確率論と数理ファイナンスへの応用を実例として書かれているため、 その方面の学生に特に人気がある。 TK 大の N さんとの共訳。
某出版社から短編小説の翻訳の依頼をいただいた。 文学作品の翻訳は初めてだが、是非私に翻訳させて下さい、と引き受けた。 プロジェクト名は「K」。他の情報は目出たく出版の運びとなるまで秘密。
京大 NLPDE セミナでの講演も終了。 六月に入り、これからしばらくは、 一応自分の理論である「なめらかなラフパス」 関係の問題に集中する予定。 新古典不等式については、 非常に特別な場合にすら、予想の成立を示せていないのだが、 少しは様子が見えてきたような。
研究室の整理はかなり進んだが、まだ本類が少し残っている。 6月中に本類の整理を終えるのが目標。 本さえ片付けば、あとはずっと前から、何年も、 処分をサボっている機材類だが、 これはいざとなるときまでやっぱり放置になるかも。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
始めにタオがあった。 タオは空間と時間を産んだ。 ゆえに空間と時間はプログラミングの陰と陽である。
タオを理解しないプログラマはいつも、 プログラミングに時間と空間が足りない。 タオを理解したプログラマはいつも、 目標を達成するために十分な時間と空間がある。
どうしてそうでないことがあろうか。
「プログラミングのタオ」 第1の書「静かなる空虚」、1-3章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
新人が師に尋ねた。 「私の書いたプログラムは、時々動いたり、時に強制終了したりなのです。 私は完全に途方に暮れています。 プログラミングのルールにちゃんと従っているのに、 いったい理由は何なのでしょうか」。
師はこう答えた。 「君が混乱しているのは、タオを理解していないからだよ。 仲間の人間たちに理性的なふるまいを期待するのは愚か者だけだ。 どうしてその人間たちが作った機械に同じことを期待するのかね? コンピュータは決定論をシミュレートしているのであって、 完璧なのはタオだけだ。
プログラミングのルールは束の間のものであって、 永遠なのはタオだけだ。 ゆえに、君が悟りを得るには、タオについて熟考しなければ」。
「しかし、私がいつ悟りを得たか、どうやったら分かるのです?」 と新人は尋ねた。
「そのとき、君のプログラムは正しく動くだろう」、 と師は答えられた。
「プログラミングのタオ」 第4の書「コーディング」、4-2章
今週は主に新古典不等式について考えていた。 来週金曜日の非線形偏微分方程式のセミナでの講演の準備のため、 頭がラフパスに帰っている。 7月末の研究会のためにも、しばらくラフパスに集中する必要があるだろう。 それまでに新しい成果が得られればいいが。
プロジェクトRは新しいフェイズに入った。 これから夏までは、できるだけ迷惑をかけないよう、 関係者には順にプランを通知していく予定。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
古のプログラマたちは神秘的にして深遠である。 我々は彼等の思想を推し量ることはできず、 よって、彼等の様子を描写することしかできない。
用心深く、水を渡る狐のように。 油断なく、戦場の将軍のように。 優しく、招待者に挨拶する女主人のように。 単純に、まだ彫られぬ木材のように。 捉え難く、暗い洞窟の黒い水溜りのように。
誰が彼等の心と精神の秘密を語れようか?
答はタオの中にのみある。
「プログラミングのタオ」 第2の書「古の師たち」、2-1章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
使いこまれたドアは油を差す必要がない。
早い流れはよどむことがない。
真空は音も思考も伝えることができない。
ソフトウェアは使われないと腐る。
これらは大いなる謎である。
「プログラミングのタオ」 第5の書「メンテナンス」、5-1章
関西セミナのついでに、吉田神社を参拝。 他に人もほとんどおらず、ひっそりと静かな境内を散策しながら、 沢山ある社を周る。 やはり神社は人がいないときに参拝するのがいい。 吉田神社は本宮の他に摂末社が10ほどもある、かなり広い神社。 中には京都のお菓子屋さんが祭ったもの、 飲食関係が祭ったものなどがあって面白い。 その周りの石柱には、あ、この店も、この料理屋も、 と良く知った名前ばかり。 流石にこれら二つの社は比較的最近に建てられたもののようだ。 一番奥にあって、 本宮に次ぐ大きさの大元宮の御祭神は天神地祇八百萬神、 つまり国内の神様全部。 ここにお参りするだけで、全国の神社に全部お参りするのと同じ御利益があるそうだ。 そんなおおざっぱなことが出来るのだろうか、 と思って境内の説明書きを読んでみると、 吉田神社は大変に由緒のあるところらしい。 神道の中心というほど権勢があったとか。 吉田神社の境内はかなり広く、 しかも山肌にあるので勾配がきつく、 摂末社を全部周ろうとすると階段の上り下りが辛い。 おかげでくたくたになってしまった。 ちょっとしたハイキングをするくらいの心構えが必要かも知れない。
ルベーグ積分の本の翻訳の校正を仕上げて、 共訳者に送る。もう一回、再校があって、 六月に出版の予定らしい。 他分野(非線形PDE)のセミナでの講演を依頼されて快諾。 と言うのも、7月終わりの国際シンポジウムの講演の準備が、 全く出来ていないので、 セミナ発表を入れればちょっとは強制的に勉強するんじゃないかな、 と思って。 今日は自分の論文のプリントアウトをしてきたけど (ちょっと心配していたのだがちゃんと出版されていた)、 そろそろ何とかせねば。 共同研究になりそうな別の話は、 数値計算の手伝いをしているだけで、 主に向こうがどんどん考えていて、申しわけなし。 面白そうな話なので、ちゃんと考えないとな… 卒研ゼミはIとSは順調だが、 Fがまだペースをつかめていないようだ。 院ゼミはM1の方は始めたばかりで様子見。 でもM1の間にかなり進めておきたい。 M2はようやくラフパス理論らしいところにまで来たところ。 修論は最低、この内容を勉強しました、とまとめてもセーフだと思うが、 やはり何事かは新しいことをしてもらいたいので、 そこのきっかけ作りが問題。 研究室の整理はかなり進んだ。 さらに本を移動させる予定だが、 そろそろ大型モニタ、数年前からある古い PC など、 大物を処分するか。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
マスタ・プログラマはかく言われた:
「良く書かれたプログラムはそれ自身、天国である。 まずく書かれたプログラムはそれ自身、地獄である。」
「プログラミングのタオ」 第4の書「コーディング」、4-0章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
あるときウー督軍の宮廷に勤めるプログラマがいた。 督軍はプログラマに尋ねた。 「会計ソフトとOSのどちらを設計するのが簡単だろうか?」
「OSです」とプログラマは答えた。
督軍は疑念の声を上げた。 「当然、会計ソフトはOSの複雑さに及ばないことは 明らかじゃないかね」
「そうではありません」とプログラマは答えた。 「会計ソフトを設計するときには、 プログラマはそのソフトがどう動くべきで、 どう報告書があるべきで、どう税制を守るべきか、 異なるアイデアを持つ人々の間の仲立ちとして働かねばなりません。 対照的に、OSは表面上の見かけには制限されません。 OSを設計するときには、 プログラマは機械とアイデアの間の最も単純な調和を探します。 これがOSを設計する方が易しい理由です」
督軍はうなづいて微笑み、 「なるほどもっともだ」と言った。 「しかし、どちらがデバグし易いかな?」
プログラマは答えなかった。
「プログラミングのタオ」 第3の書「デザイン」、3-3章
京大での関西確率論セミナに出席のついでに、 知恩寺の境内を散歩。 作務衣を着たお坊さんらしき人たちが、 提灯を片付けていた。何かイベントがあったのだろうか。 セミナまで時間があったので、 「進々堂」で珈琲を飲みながら数学を考える。 落ち着いた雰囲気で、テーブルも大きくどっしりとしているせいか、 勉強している人が常にいる名物喫茶店。 私の印象では、どちらかと言えば文系の人が多いかな…。 以前、もう少し北白川寄りの数理研の近くに「アルファ」 と言う喫茶店があって、そこは数学者密度が高かった。 「進々堂」もそうだが、珈琲の他にカレーライスがあった。 そういや京大に長期滞在経験のある、 日本語の非常に達者なイギリス人数学者が、 「あるふぁでよくかれえらいすを食べました」 と正確な日本語発音で言っていた。
今週も数値計算でデータを取っていた。 そのデータから S 君が補題を作ってくれた。 今まであまり数値実験をしたことがなかったので、 こういう数値実験と理論の結びつきは面白いなと思った。 来週はプログラミングの一方、S 君のノートを真面目に読んで考えてみようかな、と。 ラフパス方面も勘が鈍らないように、 M ゼミ以外でもちょっとは考えないとな…
4月19日(土曜)。ディスカバー・キョート第二回、哲学の道周辺。 (第0回:八坂の塔、「イル・ギオットーネ」。 第一回:高台寺。) 銀閣寺(東山慈照寺)。 銀閣寺はいままでに何回か訪れているはず。 現在、銀閣寺自体は修復中。骨組とカバーに覆われて、 その中で大工さんが作業している。 庭を歩いていると、苔の標本が置いてあって、 これはいい苔、これはちょっと邪魔な苔、 これはとても邪魔な苔、と示されている。 見た目には大差ないような気がするのだが… そしてこの邪魔な苔たちをまめに取り除いたりしているのだろうか。 次は哲学の道を歩いて、法然院へ。 谷崎潤一郎の墓などがあることで有名。 このあたりは銀閣寺よりはひっそりと静かでいい感じ。 でも時間がなかったので、入って出ただけ。 「カフェ・テラッツァ」で休憩。 ここは犬を連れてくることのできるドッグ・カフェで、 実際、テラスにはダックスフンドを連れた客がいた。 以前にピアノと弦楽四重奏のコンサートがここで開かれたときに、 訪れたことがあるので、来たのは二度目。 次は、橋本関雪記念館へ。 橋本関雪は画家。このあたりが田圃しかないような田舎だったときに引っ越してきて、 その後、三十年かけて庭を整え、徐々に周囲の土地を買って拡大し、 今の姿にまでなったらしい。 敷地内に記念館もあって、絵などがいくつか保存されている。 正直に言って、私にはどれもぴんと来ない絵だ。 庭はなかなか雰囲気も良く、特に池に迫り出した茶室などいい感じ。 やや無駄に巨大な灯籠とかがあちこちにあって、 何でも詰め込み過ぎのような。私ならもっと地味に、 できるだけ自然以外に何もおかない庭にするだろうなあ、と思いつつ、 庭をまわる。
哲学の道の周辺で行くべきところは、あと…「なかひがし」?
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
主任がプログラマに、 今やっているプログラムができるのにいつまでかかるのか、 と尋ねた。
「明日、終わるでしょう」と、プログラマは即座に答えた。
「それは非現実的じゃないかね」と主任は言った。 「本当のところ、どれくらいかかるんだ?」
プログラマはしばらく考えてからようやく、 「追加したい機能がいくつかあります。 それには少なくとも二週間かかるでしょう」と答えた。
「それでも期待し過ぎだろう」と主任は食い下がった。 「本当にプログラムが完成するのがいつか、 シンプルに、答えてくれるとありがたいんだが」。
プログラマは同意した。
数年後のこと、主任は定年を迎えた。 定年祝いのランチに向かう途中、 主任はそのプログラマが端末で眠り込んでいるのを見かけた。 彼は徹夜でプログラミングをしていたのだ。
「プログラミングのタオ」 第5の書「メンテナンス」、5-2章
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
新米が師にこう尋ねた。 「ここに自分のプログラムのデザインも、ドキュメント書きも、 テストもしないプログラマがいます。 しかし、彼を知る者は皆、彼を世界で一番優れたプログラマだと考えています。 何故でしょうか?」
師が答えられるには、 「そのプログラマはタオをマスタしたのだ。 彼はデザインの必要を越えたのである。 彼はシステムがクラッシュしたときにも怒らず、 不安を持つことなく世界を受け入れる。 彼はドキュメントの必要を越えたのである。 彼は誰かが彼のコードを見ようが最早、気にしない。 彼はテストの必要を越えたのである。 彼のプログラムはそれ自身で完全で、澄みわたり、エレガントで、 自ずから明らか」。
「まさに彼はタオの神秘に入ったのですね」
「プログラミングのタオ」 第2の書「古の師たち」、2-4章
今週は主に、S 君から聞いた離散ウォルシュ変換に関係した問題の、 数値計算用プログラムを書いていた。 ruby であっさり書いたものでまあまあのことが分かってきたのだが、 やはり遅過ぎるので、C に書きかえることにした。 これで現実的に計算できる最後のレヴェルの全検は可能になったし、 次の段階のランダムテストもかなり深いところまで出来そう。
夏までにと思って考えているラフパス関係の問題あれこれはあまり進まず。 この春までに考えて良く分からなかった問題の一つを、 ひょっとしたらと思って、M2 の院生にふってみた。 ゼミでの議論で少しは頭をそっちの方に持っていけるし、 何か出てくれば修論に出来るだろう。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
賢明なプログラマはタオについて聞くとそれに従う。 平均的なプログラマはタオについて聞くとそれを探す。 愚かなプログラマはタオについて聞くとそれを笑う。
もし笑われることがなければ、それはタオではない。
最も高い音は最も聞きとり難い。
前に進むことは引き返す道である。
偉大な才能は遅咲きだ。
完璧なプログラムにすらまだバグがある。タオは全ての理解を越えたところに隠されている。
「プログラミングのタオ」 第1の書「静かなる空虚」、1-4章
束ねておいた書類ゴミを引き取ってもらい、 新たに 4 つ紙束を作った。 細々したものを捨て、書架を整理しなおして、 まるごと一つの書架を空にした。 本を二冊持ち帰る。
M1 のゼミは Stroock の "an Analytic View" を読み始めることにした。 M2 のゼミは前年の続きで、rough path theory の Lecture Note。 まだ第一章も終わっていないくらいなのだが… 今日の午後はウォルシュ変換のプログラムのバグ取り。 短いのにかなり手間取った。 次は、モンテカルロ式に予想をチェックするプログラムを書く予定。
本を 4 冊、数ファ研に移し、 椅子 4 脚を片付けて、キーボード三つを捨て、 本棚の中の書類を移動し、かなりすっきりした。 これで気分良く春を迎えられそうだ。 今年は忙しそうなので、学生たちがすぐに私の居場所が分かるように、 研究室のドアの前に「今、〇〇にいます」「10 分で戻ります」 などとマグネットで表示するメモを張り出すことにした。 今日は三冊、本を持ち帰った。
S 君から聞いた予想の不等式をチェックするプログラムを書くために、 今日は Walsh 変換のメソドを書いた。 参照したテキストのアルゴリズムに誤植があって、 あれこれ手間取ったが、正味一時間ほどで書けた。 バタフライ法を使った高速変換実装なので、 ruby とは言え、まあまあの速度は出ているだろう。 正しく変換されているかはこれからチェック。 Walsh 関数の番号付けが適切かどうかも要チェック。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
東に一匹の鮫がいて、他のどんな魚よりも大きい。 それは鳥に変身し、その翼は空を埋める雲ほどもある。 この鳥が陸を横切り、企業本部からのメッセージを運んでくる。 鳥は浜辺に足跡をつけるカモメのように、 このメッセージをプログラマたちの中に落とす。 すると鳥は風の上に舞い上がり、青い海を背中にして、 帰っていく。
新米プログラマは不思議に思ってその鳥を見つめる。 なぜなら、彼はそれを理解できないからである。 平均的プログラマはその鳥がやって来るのを恐れる。 なぜなら、彼はそのメッセージを恐れるからである。 マスタ・プログラマは彼の端末で働き続ける。 なぜなら、彼はその鳥がやって来て去ったのを知らないから。
「プログラミングのタオ」 第7の書「企業の知恵」、7-2章
春の研究室整理メモ。 また書類を 2 束ほど処分して、 不要になった PC 2 台を書架の中に移動。 これで随分と部屋が片付いた。 ハードウェア類を書架で整理しただけだが… 巨大(ブラウン管)モニタ 2 台も無駄にあまっているが、 重過ぎて移動できない。 いずれ PC とまとめて廃棄したい。 ハードウェアの廃棄の仕方を誰かに訊いておかないと。
今日は本を 7 冊、数ファ研に持っていき、 書類の束を 6 つ処分し、本を二冊、自宅に持ち帰った。 図書館で借りたウォルシュ変換関連の本は、 「ウォルシュ解析」(遠藤靖/東京電機大学出版局)。 一冊まるごとウォルシュ変換の話で、中身も分かり易そう。 単に S 君から訊かれた数値計算のプログラミング用に、 アルゴリズムさえ分かれば良かったのだが、 なかなか面白そうだ。確率論とも深い関係がありそう。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
どうしてプログラマたちが非生産的なのか?
それは彼等の時間が会議に浪費されているから。どうしてプログラマたちが反抗的なのか?
それはマネジメントが邪魔をし過ぎるから。どうしてプログラマたちが一人また一人と辞めていくのか?
それは彼等が燃え尽きたから。プアなマネジメントで働かされると、 彼等はもはや自分の仕事に価値を見出せなくなる。
「プログラミングのタオ」 第6の書「マネジメント」、6-2章
タオ投稿用の html ファイルに翻訳するスクリプトを書いた。 (おっと横幅が入り切らない…)
#!/usr/bin/ruby filename = ARGV[0] /([0-9])-[0-9]/ =~ filename section = $1 sectiontitle = ["静かなる空虚", "古の師たち", "デザイン", "コーディング", "メンテナンス", "マネジメント", "企業の知恵", "ハードウェアとソフトウェア", "結語"] wfile = open(filename + ".html", "w") wfile.print("<P>\n今日の \"The Tao of Programming\"(G.James/InfoBooks)。", "原による試訳。\n</P>\n<BLOCKQUOTE>\n<P>\n") rfile = open(filename) while line = rfile.gets do if /^PP$/ =~ line then wfile.puts("</P>\n<P>") else wfile.print(line) end end rfile.close wfile.print("</P>\n</BLOCKQUOTE>\n<P>\n「プログラミングのタオ」") wfile.print(" 第", section, "の書") wfile.print("「", sectiontitle[section.to_i - 1], "」、", filename, "章\n</P>") wfile.close
こちらではしばらく、 表の blog には細かいことやテクニカルなことのメモもして行こうかな、と。
今日のプレ卒研ゼミ。 Garling "Inequalities (A journey into Linear Analysis)" より、単調収束定理、Fatou の補題、優収束定理、 フビニの定理など。積分論のまとめになっている第一章を終了。 次からは不等式の中身に入る。 来週、卒研ゼミの打ち合わせをするが、 この実解析ゼミに他の参加者が加わるかどうか。
今日は研究室の本を 6 冊、数ファ研で処分。 京大からゼミを見に来てもらっている院生の方に、 アグモンの偏微分方程式論の本を譲った。 書類は 3 束処分。
今日の "The Tao of Programming"(G.James/InfoBooks)。原による試訳。
チャンツェへの道の途中でハードウェアがソフトウェアに出会った。 ソフトウェアが言うには、 「君は陽で僕は陰。もし僕達が一緒に旅すれば、 僕等は有名になって、でっかい金が稼げるぞ」。 そして彼等は世界を征服してやろうと一緒に出発した。
間もなく彼等はファームウェアに出会った。 彼はぼろ切れに身を包み、とげだらけの杖にもたれてよたよたと歩いていた。 ファームウェアは彼等に言った。 「道(タオ)は陰陽を越えたところにある。 タオは静かで、水面のように動かない。
それは名声を求めない。ゆえに誰も存在を知らない。 それは成功を求めない。なぜなら自身に満ち足りているから。 タオは時空を越えて在る」
ハードウェアとソフトウェアは、恥を知り、家に帰った。
「プログラミングのタオ」、第8の書「ハードウェアとソフトウェア」、8-4 章
今日の "The Tao of Programming"(G.James/InfoBooks)より。原による試訳。
ある日、マスタ・プログラマが新米プログラマの側を通りかかった。 師は新米が携帯端末でゲームに熱中しているのに気付いた。「すまないが、君。それを見せてもらえないかな」と彼は言った。
新米ははっと気付いて、機械を師に手渡した。「なるほど、このマシンには三つのレベルがあるようだな。易しい、中くらい、難しい」、と師は言った。「しかし、このようなマシンには常に、もう一つ別のレベルがあるものなのだよ。そこでは、機械は人間に勝とうともしなければ、人間に勝たせてやろうともしない」
「やってみせて下さい。偉大なる師よ」と新米は懇願した。「どうやったら、その神秘的な裏設定を見つけられるのですか?」
師はその端末を地面に落とし、足で踏んで壊した。
その刹那、新米は悟りを開いた。
「プログラミングのタオ」、第8の書「ハードウェアとソフトウェア」、8-2 章