理系学生日記

おまえはいつまで学生気分なのか

Joel on Software

浦安の図書館はスゴい

浦安が,浦安の図書館がスゴいので,みんなもっと浦安に住んで,会社を立てて,住民税だか法人税だかを浦安に納めるべきだと思うよ!!
わざわざ図書館のために引っ越すかよバカがみたいなことを言い出すチキン野郎は,匿名で浦安市立図書館に 800 万くらい寄付すべきですし,わざわざ図書館のために匿名で寄付なんてできるかよアホがみたいなことを言い出す鼻タレ小僧は,1,000 万くらいを浦安の公民館裏で掘り出したフリをして,警察に届けるなどするといいと思います!欲にまみれた人間が「ぼくのじゃね?」みたいなことを言って警察に殺到することが想像されますが,それはおまえがなんとかして,意地でも 1,000 万を市に渡せ!!


そういうのはわりとどうでもよくて,浦安図書館はヤバいというはなしだったんですけど,浦安図書館には,この本まで置いてあった.
ISBN:4-274-06630-4:detail
これを読まないと人生損するだとか,この本を読んで病気が治った!,試験に合格した!,宝くじが当たった!とかいろいろな話を聞いたり聞かなかったりしたので,速攻で読んでみるなどした.

いきなりタマネギ漬けにされる

この本は Joel Spolsky というソフトウェア開発者が書いた本でして,どうやって開発を進めていったらいいかとか,気をつけるところはどこかとか,そういう話なんですけど,第 4 章がヒドい.

私は宣言する.もしあなたが 21 世紀において仕事しているプログラマであり,キャラクタ,キャラクタセット,エンコーディング,Unicode の基本について知らないのであれば,私はあなたをひっ掴まえて,潜水艦で 6 か月間のたまねぎ剥きの刑に処する.絶対そうするから.

やばい!! 6 か月はやばい!! タマネギはやばい!!

仕様書

研究とかでもそうなんですけど,仕様を書くのは相当メンドい.おれの頭の中に仕様書はあるよとか,なんかそんなことを思いながらシミュレーションとか書いてたわけですが,Joel の言う仕様書を書く理由は大きく 3 つ.

  • 人間の言葉でデザインを行うフェーズでは改良や修正に時間はかからないが,プログラム言語だと長い時間が必要(そしてプログラマは,一度書いたコードに執着する)
  • コミュニケーションにかかる時間の節約
    • プロジェクトが大規模になるほど,個々に説明するオーバヘッドが大きくなる
  • 詳細仕様がないとスケジュールがたてられない

プログラムを書く人が一度書いたコードに執着するというのはあるあるですね.とりあえず書いてそれが動いてから書き直すよ!!というコード片はたいがい最後まで残っている法則.

仕様書は生きている

研究室では,古い RFC を読んでいた人が「おまえっ!!プロトコルは生きているんだよ!!」という至上の名言で教員にボコられるという事態もありましたが,プロトコルだけじゃなくて仕様書も生きている.古い仕様書なんてクソなので,revision 管理をしておくといいみたい.

それと仕様書は読まれないと意味がないので,可笑しくしとくといい.ムダに具体的に書くとかすると,読まれやすい.

もしあなたが,陽気で可笑しく,読んでいて楽しい仕様書を書くと軽蔑されるような会社で働いているのなら,別な働き場所を探すことだ.人生はそんないかめしく惨めな場所で日中を過ごすには短かすぎる

まとめ

もう一回全体読んでノートにまとめる.