崖っぷちの男

たぶん技術っぽいネタ。ブログ名が決められない

CODE COMPLETE 下巻の33章が素敵

CODE COMPLETEの上巻を読み終えたので今は下巻を読んでいます。

先頭から順に読んでいる訳ではなくておもしろそうなところから読んでいますが、
33 章「ソフトウェア職人気質とは」
は結構おもしろかったです。ちょっと引用します。


以下はプログラマの「知的な誠実さ」の表われだそうです。

現実的なスケジュールを見積もり、経営陣がスケジュールの調整を求めてきても一歩も引かない。

「一歩も引かない」という所にシビれました。そのことについて上司に説明するときの台詞はこんな感じです。

開発にかかる時間に「交渉の余地」はありません。それは 1 マイルを 1 フィートにするか交渉するようなものです。自然の法則は交渉できません。

要は納期というか、時間は短縮できないんですね。機能を削ればできますが、急いでやる、とかそういう考えがもうだめ。


また「怠惰」の項では「嫌な仕事をするためにツールを書く」ことを「啓発的な怠惰」と呼んで推奨していますが、そこからの引用

効果的なプログラミングにおいて最も重要な作業は、考えることである。そして、人は考えているときは忙しそうに見えないものだ。いつも忙しそうにしているプログラマと組むことになったら、筆者は彼のことを優秀なプログラマではないと考えるだろう。なぜなら、彼は自分が持っている最も価値の高いツールである脳を使っていないからだ。


「経験」の項もいいです。

人々はプログラマの経験の量ばかりを重視する。「Cプログラミングの経験が5年あるプログラマが欲しい」とは、ばかげた発言である。プログラマC言語を始めてから 1, 2 年であっても、次の 3 年間でそれほどの差はつかない。

10年間仕事をしているとしたら、10年の経験があるのだろうか、それとも1年の経験を10回繰り返しただけなのだろうか。 ... 学ぶ意欲をいつまでも失わなければ、経験を積むことができるだろう。そうしなければ、どれほど時間をかけたとしても、経験は得られない。


最後に「習慣」

悪い習慣を完全に断ち切ることはできない。だから、突然タバコをやめようとか、罵るのをやめようとしても、チューインガムといった代用品がないと、とても続かないのである。古い習慣を完全に断ち切ることよりも、古い習慣を新しい習慣に置き換える方が簡単である。


もう寝ないといけないのでここまで。