野生のペタシ (Le pédant sauvage)

Formerly known as 「崩壊する新建築」@はてなダイアリー

カトラーは昭和の男だね

いったいどんな経緯だったのかよく覚えていないがとにかく、『闘うプログラマー』を初めて読んだのは、もうかれこれ25年ほども前の話だ。それでWindows NTというのを知り、強い興味を持ったので、なんだか適当な理由をつけて仕事で使っているPCにWindows NT 3.51を導入した。大抵のPCにはWindows 3.1が入っており、プライベートではMac (Quadra 610)を使っていた当時、比類なき信頼性と堅牢性を持っていたNTは、とてもクールに思えた。
とてつもなく革新的で野心的な次世代オペレーティングシステム「NT」の開発プロジェクトとそれに関わった人々(日本語版の副題は「ビル・ゲイツの野望を担った男達」となっているが、けっこう女たちも登場する)についての物語だ。なかなか熱い。多分それからもう一回ぐらいは読んだと思う。そういえば「デスマーチ」とか「ショーストッパー」などという単語も、この本で初めて知ったのだった。
あれから25年。久しぶりにまた読んでみようか。でもどうせなら、原書に手を出してみるのも一興かもしれない。ちょっと確認してみたいこともあるし。
というわけで、3回目となる今回は、英語で"Showstopper!"だ。

いやー、やめときゃよかった。本編は300ページ強だが、読み終わるのにたっぷり2ヶ月もかかってしまった。見たことも聞いたことも聞いたこともないボキャブラリーが、毎ページ軽く2〜3個はある。これKindleだったから何とかなったけど、紙の本だったらとても読み通せなかったんじゃなかろか。
さて、原書で確認してみたかったのは、本文中で数回引用されているコードフラグメントだ。特に、ハンガリアン記法について紹介している部分。日本語版を読んだときに、「何だこれ?」と思ったのだ。C言語には見えない。ひょっとしてPascal?いやNTの開発にPascalなんぞ使わんだろう、とか。そもそも、縦書きの本にプロポーショナルフォントで書かれているから、もう気持ち悪いのなんのって。コードサンプルを等幅フォントで書かない本をわたくしは信用しないのだ。って技術書じゃないんだから仕方ないけども。で今回あらためて読んでみたんだが、うーんやっぱりわからんな。最後の方にあるやつはCかC++だろうなきっと。
まあそういう些末なことは置いといて。25年ぶりに読み返し、あらためて今日的な視点で見てみると、実にいろいろ味わい深い。NTの最低動作保証環境として16MBのメモリが必要、というのに対して関係者は、いくら何でもそりゃ無茶だ、というような反応をしている。16GBじゃなくて16MBですよ?今だったら、メモリ16GB積んだマシンは、なかなかぜーたくでんな、ぐらいなところだけど、16MBって。これはNTの開発がスタートした1989年ごろの話だ。それから30年。ムーアの法則によれば、半導体メモリの容量は18か月で倍になるわけだから、30年=360か月なら2048倍か。なるほど、ムーアの法則は健在ってわけだ。
NTの開発には、プログラマはもちろん、テスターやビルドエンジニアやドキュメントライターも関わっている。物語ではビルドエンジニアとビルド・ラボにもけっこうフォーカスが当たっている。プログラマが確認の不十分なコードをチェックインし、ビルドが壊れて開発リーダーのカトラーがブチ切れる、てな描写があった。自動ビルドにナイトリービルド、さらには継続的インテグレーションなんてのがわりと普通になっている現在からすると、何でそんなことで大騒ぎになってんの?とか、チェックイン時に自動テスト通らないのかよ、とか静的解析ツール入れてないの?などと思ってしまうわけだが、うーん90年代って不便だったんだなあ。実際のところどうなんでしょうね。2019年の今なら、NTもデスマーチ化せずに、もうちょっとうまいこと開発できたのかな?もっとも、現在の様々な開発ツール自体が、NT(とその技術を発展させた後継のOSたち)があったから進化してきた、ということでもあると思うのだけど。でもとりあえず、カトラーみたいなのは今だったらパワハラでアウト、じゃないかな。と思ったけど、カトラー今でも現役なのか!すげえな。前に読んだ時は、NTのリリース後カトラーはマイクロソフトを去った、と書いてあったと思っていたけど、今回あらためて読んだら、Daytonaプロジェクトのリーダーになった、ってちゃんと書いてあるじゃないか。日本語もマトモに読めてないって、しっかりせんかオレ。カトラーにシバかれるぞ。