【おすすめ読書】Joel on Software
様々な商用アプリケーションの開発に携わった著者のブログをまとめたものです
プログラミングへの取り組み方や・マネジメント・サービス運用など幅広い事柄について、ユーモアを交えて書いています。ブログに書いた内容ということもあり、主観的に書かれており、ズバッと批判的なこともあります。
技術者に必要な心のあり方などを知ることができます。エンジニアはもちろんですが、マネージャもしくは人事、もっと言えば経営者にも参考になります。
本の概要
著者が自身のブログに書いた内容を編集したものです。読みやすいように以下のような章わけがされています。
-
プログラミングのプラクティス
プログラミングを行う上でのアドバイスです。ただし、技術者の目線と言うよりはマネージャー的な目線での手段が多いです。作業に集中させるために環境を良くしようとか、バージョン管理やデイリービルドをしっかりしようといった感じでしょうか。今時これくらいは基本的にできている環境のほうが多いのかもしれませんが、そうでないならすぐになんとかしたほうがいいです。
最近では是非が問われるかもしれませんが「仕様書」についての考察もあります。仕様書とはこういうものだという例もあれば、誰が書くのか?管理はどうするのかという内容もあります。同じ悩みを持ったことがある人は多いと思います。
スケジュールの項目などちょっとツールなどは古いですが、基本的な部分はためになると思います。Exelを使う必要はありませんが、スケジュールに組み込むべき要素や見積もりの根拠など参考になります。
-
開発者のマネジメント
こちらもマネージャや人事的な話が多いです。採用の際にはこういった箇所をチェック・テストするべきだとか、報酬の考え方などです。章自体は少なめなのですが、結構参考になることは多いです。チームを立ち上げる際など一度目を通しておくのがいいです。
-
それほどランダムでもないトピックに関するランダムな考察
特別テーマが定まっておらず、いろいろな内容が書かれている章です。基本的には著者が経験した事件の紹介と、そこから得た教訓です。特別なテーマ等は無いので読み物としておもしろいです。
著者はMicrosoftで働いていたので、そこで経験したことも書かれています。超大手の会社なので、その実情が知れるだけでも結構おもしろいです。
-
.NETに関する少し行き過ぎた論評
.NETの開発の際に著者が思っていたことことです。ここは今読んでもそれほど参考になるものではないです。
本の特徴
技術者の目線で読むと、思っていたこととは違うことが書いてある印象を受けると思います。実際に起こった経験から、その時の対応や感想が書かれています。こんなことが実際に起こるのか、といったことから、こんな結果になるならあのときはどうすればよかったのだろうかなど、いろいろ考える余地があります。
経験豊かな著者による問題に対する解決方法が乗っているので、かなり参考になると思います。ただ、外国での事柄であることと、ちょっと古い内容ですので、その部分はうまく補完できるといいです。エンジニアリングの根本的なあり方みたいなものはいつの時代も変わらないのかもしれません。
1エンジニアとしてのキャリアではなく、プロジェクトをうまくすすめるためのマネジメントなどの内容が多めです。特に、自分が経営者・雇用者の立場での内容が結構多いので、普段とは異なった目線での価値観が多いと思います。
おわりに
かなり昔に書かれた内容なのですが、今でも結構参考になるところがあります。技術者というよりはマネージャや人事的な目線での捉え方なので、そういった経験がない人にとっては新しい視野になると思います。もちろん技術者でもビジネスやマネジメントの目線が合ったほうがいいので、その手始めにおすすめします。
内容もブログがもとなので、面白く書いてあり興味を持って最後まで読むことができます。1つ1つの章も短いので、気になるテーマのみ読んで見るので十分です。