Neal Ford『プロダクティブ・プログラマ』

プロダクティブ・プログラマ -プログラマのための生産性向上術 (THEORY/IN/PRACTICE)

プロダクティブ・プログラマ -プログラマのための生産性向上術 (THEORY/IN/PRACTICE)

翻訳はO'Reilly書籍ではおなじみ夏目大さん、監訳に島田浩二さん(!)ということで島田さんのご厚意で頂いてしまいました。これは原書もスルーしてたので今回はじめて読みました。*1
著者はMartin Fowlerがいる会社ThoughtWorksのスタッフでコンサルタントです。タイトルの通りにプログラマが「プロダクティブ(生産的)」であるための心得とかtipsとかを直球で解説する、という内容。生産的になろうということをうたう書籍にはいくぶん精神的な、自己啓発っぽい内容が含まれることが多いですが、本書はそういう要素がほとんどなくて拍子抜けします。大きく「技法編」と「実践編」の2部構成になってますが、どちらも技術の話をしています。例えばQuicksilver使えとか。
他にも少し取り上げましょう。集中について書く章で、気を散らす要因を減らすために何をするか、というのがテーマになる。これには私も日々気が散らされまくりなのでとても気になるのだが、本書ではまず「Growlの通知を切る」こと。素晴しく実践的。すぐに真似できます。
こんなことばかり書くとなんか細かすぎる本のように思えるかも知れないが、実のところこれこそがプログラマが成長して行く道筋なんだよね。自分が初心者だった頃に、先輩スタッフのshellのコマンドの扱いを見てるとなんか自分のより賢い動きをするので不思議に思って真似してみるとかそういった経験をある程度の経験を積んだプログラマは皆やっていて、本書はそれを独習したい人のために書かれているのです。
後半の実践編ではテスト駆動開発とかYAGNIなどの最近は一般的になってる考え方の他、オブジェクト設計の常識に対する挑戦といったことも話題になります。挑戦とはいってもそれはJava Beansを捨てるとかGroovyを使ってみるとか、もうJavaからRubyへ的な道を通り終わってしまった人には不要なことだったりするのですが(本書のサンプルコードはほとんどJava)、これも一定の制約条件(言語の選択とか)がある中でどうやって自分の出来ることを大きくして行くか? という問題に対しての取り組み方としてヒントになるでしょう。まだその道を通ってない人にはそのまま役に立つのはもちろんのこと。
そうやって振り返ってみると、本書はまさに10年前の『The Pragmatic Programmer』(邦題『達人プログラマー』)の再来とも言える内容を含んでいます。もちろんPragmatic Programmerの内容はもっと広いのだけど、その要素を精神編と技法編に分けたときに技法編にあたる部分の続編的な内容に本書はなっています。
そして残りの半分については、もう1冊、まさにちょうどよくその内容をカバーした本があらわれました。ということで次の日に続く。

The Productive Programmer (Theory in Practice (O'Reilly))

The Productive Programmer (Theory in Practice (O'Reilly))

The Pragmatic Programmer: From Journeyman to Master

The Pragmatic Programmer: From Journeyman to Master

達人プログラマー―システム開発の職人から名匠への道

達人プログラマー―システム開発の職人から名匠への道

  • 作者: アンドリューハント,デビッドトーマス,Andrew Hunt,David Thomas,村上雅章
  • 出版社/メーカー: ピアソンエデュケーション
  • 発売日: 2000/11
  • メディア: 単行本
  • 購入: 42人 クリック: 1,099回
  • この商品を含むブログ (347件) を見る

*1:感想が遅くなてごめんなさい..これ書いてるのは6月..