LLとカーネルハッカー、Debug-Howto
りんごとオレンジを比べるな。いやはや仰るとおりなんですが、別に比べたっていいではないか?深海の動きはゆっくり。レイヤーが違う。人の芝生を羨ましがっているわけではなくて、そう読めたとしたらわたしの言葉足らずなんだけど、自分は自分、人は人。楽しくやっています。
LLは高速道路があるけど、カーネルハックにはないとしたら、じゃあ、その道を作ってやろうと考えるのが多分わたしのスタイルである。一体全体どのくらい時間と手間と暇がかかるかはわからないけど。ゴールが見えているわけでも、これと言ったビジョンがあるわけでもなくロードマップもなんにもないけど取り合えず一歩踏み出す。
で、そんな事を考えている時、昔の事を思い出した。10年前、シリコンバレーに単身乗り込んで、とりあえづRDBMSの実装部隊にほうりこまれた時の事だ。ソースコードは絶望的に複雑だ。開発環境は化け物だ。どこから手をつけていいか皆目検討もつかない。この地に来るまでの根拠のない自信はどっかにふっとんでしまった。野茂が大リーグに挑戦した年である。
D社ではそれでも10年選手のばりばりのプログラマだった。本社の連中と渡りあっていた。東海岸の開発部隊にも一年いて自分のコードを本体にマージしたりもした。西海岸に来て、絶望と希望とを背負いながら日々コードと格闘していた。その試行錯誤の最中ふと思い立ってメモにした。Debug-Howto。仕事はプログラミングだから会社にいる時間はほとんどDebugなのであるが、開発環境の設定の仕方とかビルドの仕方とか、狭い意味でのDebugとはちょっとはづれることも、日常的な瑣末なTipsもともかくDebug-Howtoに書き足して行った。BUGDBの検索の仕方とか、ダンプの読み方とか、様々なメモを書き足した。ある程度たまったところで開発チームにメールをしてみたところ、予想以上に反応、コメント、サジェスチョンがあって、ますます内容が充実してしまった。
入社して最初の日にやることリストというのが気のきいたシリコンバレーの会社にはあったりするのだが、人事書類にサインをするとか、上司同僚に挨拶をするとか、プロジェクトの説明をうけるとか、Debug-Howtoは言ってみれば開発初日にやることリストの中に、Hiro's Debug-Howtoを読めみたいなポジションである。