omo先生に「Coders at Work」なんていいんじゃない?と言われてサンプルを読み始めたら、良さそうなのでサンプル最後まで読んだらポチる予定。
本としては、有名なプログラマーを何人かインタビューしてみました、みたいな本。
最初が jwz、Lisp hackerでxemacsの作者でNetscapeの開発者との事だが、開幕からロックな感じのプログラマで非常に期待の持てる本という印象。
給料は出るが暇でやる事が無い仕事をやめたという話で、 I wanted to be doing something that I could point to and say, “Look, I made this neat thing.” とある。
なんかこういうのいいよな。なにかそういう事をやりたかった、というのはプログラマとしてすごく良く分かる。 そんな大した事でも無いあたりに等身大な感じというか、変に煽った感じが無くて良い。 こういう事を言えるのは、自分が為した事に自信があるからなんだろうな。
高校は人生の中で一番つらい時期だった、的な話がそれなりに書いてある。 Paul Grahamも同じような事言っていたよなぁ。USの高校そんな辛いのか…という気分になる。 高校が辛かった人がコンピュータの世界で活躍する傾向があるだけかもしれないが。 コンピュータ好きのnerdには厳しい世界なのかもしれん。
日本で高校時代が一番つらかった、という有名人はそんな居ないよな。 一般人でも仕事より高校が辛いと言っている人はかなり少数派だろう。 日本の高校は結構いいのかもなぁ。 コンピュータ好きとかゲーム好きとかアニメ好きとかでも楽しく過ごせる所だよな、日本の高校。
C++は嫌いだが、Perlはあれはあれで良い所もある、的な話でなかなか興味深い。
Perlに対する態度がハッカー的というか、getting things doneを重視する態度が好感が持てる。 ただこの辺の話は古さも感じる所で、実際本文の中でも「もはやコードはほとんど書いていない」と本人も言っている。 emacs時代のプログラマ、という感じがする。
C++に対しては11以降のC++を本格的に使ったらどう思うかは分からない所ではある。 Netscapeを書いた当時のC++は本文にもあるように互換性の問題も多く、 また、当時はC++でコードをどう書くべきかも人類は良く分かっていなかった。 現代のC++でモダンな書き方をした時にはかなり印象は変わると思うが、 好きと思うかは結構好みも出る所だよなぁ。
Objective-Cは意外と好きなのは動的なのが好きなんだな、という気がするし、現代のC++も好きにはならないかもな、という気もする。 C++好きな人はObjective-Cみたいに、効率の為に小さい粒度でオブジェクトを使えない言語をあまり評価しない気がする。
second system syndromeを避けるためにどうしたか?という質問に、6ヶ月以内にリリースする、という締切を設定して、それを宗教的なレベルで厳守を目指した、という話があって面白い。 Second system syndromeってなんじゃらほい?とググって以下を見つける。
Second-system effect - Wikipedia
人月の神話にそんなの出てたっけか。
なんかこういう、物を完成させる為にどうしたか、みたいな話は面白いよな。 もちろん現代の視点からすれば最初のNetscapeはそれほど大きくないソフトウェアなんだろうが、 それでもその時代にそれを成すのは凄い事で、彼らはそれをこうしてやった、という事だよな。
口汚く罵り合いながら作るの、なんか昔って感じだけれど、なんか時代を感じさせて良いな。ちょっとF2戦役を思い出す。
我々はshipした、それが一番の誇りだ、というのはかっこよさがあるよな。 実際Netscapeは世界に大きなインパクトを与えた。もっと遅くやっていたらそれは他の誰かだった可能性はある。
その後のmail readerもそうだけど、なんかこう、ソフトウェアの正しい作り方って感じするよな。 プログラマが良いと思うものを考えて作る。 これを上回る作り方は多分無い。
世界を変えるチームの躍動感みたいなの感じるよなぁ。
とりあえずChapter 1を最後まで読んでみた。 今とは時代が違うと思う所、今でも通じる所、今がどうかは置いといて面白いと思う所、いろいろとあった気がする。
現代の良いサラリーマン的プログラマになる方法というのとは随分と違う所に居ながら、 一方でちゃんとその時代を生き抜いた一プログラマという感じのする、 地に足の付いたエピソードがいろいろと面白い。 現代の立場から読むと、忘れてしまいがちなプログラマという物のクリエーター的な側面を思い出させてくれるような所があり、 そこが自分には良かった。
チームのマネージメント的な話は、今からみると牧歌的だなぁ、という感じがする事もある。 4〜5人のチームに分ければなんでも平気、なんて、現代のベテランはほとんどがナイーブすぎると感じるだろう。 一方でそうだった時代もあったんだよなぁ、という気はする。
彼が学んだ時のようなパスはもはや存在すらしていないので、今の若者が同じ風に学ぶ事は出来ないが、 では今の若者がどうしたらいいかは自分には分からない、というような事を言っていて、 これはすごく真摯な態度でありながらとても正しいものでもあるなぁ、と思った。 自分は彼らより一世代後だと思うけれど、自分の世代でも同じ事が言えそうに思う。 だから今の世代にも同じ事が言えるのかもしれない。
自分はNetscape 3.0時代はそれなりにもうコンピューティングの世界に居たので、 自分が始めた時代がちょうど活躍の中心だった世代という感じで、 歴史と今の間にいる感じがちょっとおもしろい感じがする。 【書籍】プログラミングの心理学や【書籍】アドレナリンジャンキーほど昔では無いが、 でも現代とも違う、不思議な印象を受ける記事だ。
この本の特徴でもあるのだろうけれど、あまり物語として自分たちから遠い存在にしてしまわないで、 実際のプログラムという活動の周辺の話にまとめている所はとても良い感じの読み物になっている。 平凡なプログラマでは無いが自分たちとは別の何かでも無い、 同じプログラマという感じが伝わってくる。 【書籍】情熱プログラマーほど平凡なプログラマでは無いのだけれど、 Linusやジョブズの本を読むのとも違う、 美化された自分たちの代表という感じがする。 素直に尊敬出来るくらいには凄いので、それが思想の違う主張を読んでもイライラしない要素にもなっている気がする。 読み物として良いね。
それにしてもサンプルはまだ続くんだが、サンプル凄い長く読める本だな。
名前となんの人がメモしておかないと後から忘れてしまうのでメモ。
3章はDouglass Crockfordでyahooの人でJSON作ったりES3.1推した人だとか。