このエントリを書こうと思ったきっかけ
irofさんのこちらのエントリが面白かったので、僕も技術書についてあれこれ書いてみたくなりました。
僕の場合は技術書の選び方、というテーマではなくて、自分が技術書とどのように付き合ってきたのかということを振り返ってみたいと思います。
序盤
僕もこの業界に入った時は、技術書らしい技術書よりも「xxxポケットリファレンス」とか「逆引きxxxの技」みたいな、「書いてある内容をそのまま書き写せば終わる」タイプのリファレンス本をよく買っていた気がします。
代表的な一冊はやはりコレですね。
【改訂第3版】 SQLポケットリファレンス (POCKET REFERENCE)
- 作者: 朝井淳
- 出版社/メーカー: 技術評論社
- 発売日: 2009/04/29
- メディア: 単行本(ソフトカバー)
- 購入: 6人 クリック: 117回
- この商品を含むブログ (17件) を見る
もちろん、リファレンス本自体が悪いわけではないですし、今でも時々買ったりします。
ただ、今思えば当時は「楽して仕事をこなしたい」「高くて分厚い技術書なんて読む気がしない」という手抜き精神が現れた結果だったと思います。
中盤
しばらくすると僕はとあるJava案件に放り込まれて、オブジェクト指向の面白さに目覚めました。
それまでは「プログラムは似たようなプログラムを見つけてコピペして作る物である」と先輩から教えられていたので(最悪)、僕の中でプログラマは「ちょっとだけ頭を使う単純作業労働者」みたいなものでした。
ところがその案件に入ってみると、「一カ所をちょっと変えただけで、全画面の振る舞いが変わる」みたいな魔法のようなことができることを知りました。(それまでは全画面すべてコピペで変更、でしたから・・・)
StrutsやHibernateといったフレームワークの便利さにもびっくりしました。
それ以来、「技術力があれば魔法のような凄いことができる。そして新しい技術を使って開発するのはめっちゃ面白い」ということを知り、主体的に勉強することに目覚めました。
当時はとりあえず「オブジェクト指向」と名のつく書籍や言語を勉強しまくりました。
このあたりから「高くて分厚い技術書」もよく購入するようになりました。
Rubyと出会ったのでも、ちょうどその時期です。
- 作者: デビットトーマス,アンドリューハント,まつもとゆきひろ,David Thomas,Andrew Hunt,田和勝
- 出版社/メーカー: ピアソンエデュケーション
- 発売日: 2001/09/01
- メディア: 単行本
- 購入: 6人 クリック: 79回
- この商品を含むブログ (92件) を見る
全盛期
Code Completeとの出会い
さらに、インターネットを見ているとCode Completeという本の内容を紹介しているサイトを見つけました。
たぶんこのページだったと思います。
BOOK Preview:Code Complete 第2版 - @IT
その内容が魅力的だったので、Code Completeを上下巻買いました。
上下巻あわせて約1万2000円。
一度に買った技術書の金額としてはそれまでで一番高かったと思います。
CODE COMPLETE 第2版 上 完全なプログラミングを目指して
- 作者: スティーブマコネル,Steve McConnell,クイープ
- 出版社/メーカー: 日経BP社
- 発売日: 2005/03/26
- メディア: 単行本
- 購入: 44人 クリック: 1,166回
- この商品を含むブログ (288件) を見る
CODE COMPLETE 第2版 下 完全なプログラミングを目指して
- 作者: スティーブマコネル,Steve McConnell,クイープ
- 出版社/メーカー: 日経BP社
- 発売日: 2005/03/26
- メディア: 単行本
- 購入: 16人 クリック: 193回
- この商品を含むブログ (164件) を見る
しかし、その内容は衝撃的でした。
なるほど、こういうことに気をつけてプログラミングすると、こんなメリットがあるのか!と気づかされまくりでした。
確かに安くはない買い物でしたが、当時の僕に取ってはその値段の何倍以上もの価値がありました。
そして、Code Completeには数多くの参考文献がありました。
「なるほど、Code Completeはこうした文献を凝縮してできているんだな」と考えた僕は、それらの参考文献の中から面白そうなものを片っ端から読んでいきました。
これまた「高くて分厚くて難しい技術書」がほとんどでした。
しかし、この頃になると「はじめてのxxx」のような初心者向けの技術書よりも、そういう「難しそうな技術書」ばかりを好んで読んでました。
Code Complete経由で知った「難しい」技術書の中の一冊はこちらです。
- 作者: ボーリスバイザー,Boris Beizer,小野間彰,石原成夫,山浦恒央
- 出版社/メーカー: 日経BP社
- 発売日: 1997/08/26
- メディア: 単行本
- 購入: 3人 クリック: 59回
- この商品を含むブログ (13件) を見る
分厚い本の方が分かりやすい
それからオライリーの本なんかも初心者には取っ付きにくそうな雰囲気を醸し出していますが、正規表現の本なんかは非常に明快でした。
- 作者: Jeffrey E.F. Friedl,株式会社ロングテール,長尾高弘
- 出版社/メーカー: オライリージャパン
- 発売日: 2008/04/26
- メディア: 大型本
- 購入: 24人 クリック: 754回
- この商品を含むブログ (86件) を見る
この本を読んで思ったのは「分厚い本の方が本質的なことを丁寧に教えてくれるので、かえって分かりやすいのではないか」ということです。
なので、ますます「はじめてのxxx」みたいな本は敬遠するようになってきました。
ピークの頃は2週間前後でCode Completeぐらいの厚さの本を読んでいたので、大体4000〜5000円の本を毎月2冊ぐらい読んでいたと思います。
お金もかかるし、本を読む時間もかかるし、確かに読書にかけるコストは小さくはないですが、それ以上に著者の人たちが膨大な時間をかけて溜め込んだ知識や経験が本を読むことで得られるとすれば安いコストです。
また、先人たちの知識や経験なしに自分たちの考えだけで問題を解決しようとすると、解決するどころか思わぬアンチパターンへ迷い込んでしまうリスクもあります。
なので、読書は自分が楽してゴールへ近づくための「小さな苦労」にすぎないんじゃないかと思います。
全盛期以後
しかし、その後技術書を読むペースが落ち、積読本が増えてきました。
その主な理由は結婚です。
まず、お小遣い制になったので、それまでのように技術書が好きなように買えません。
仕事でどうしても必要だから、という理由で小遣いの枠を超えて技術書を買ってもらう場合もあります。しかし、独身時代のように気軽に面白そうだから買ってみる、ということは出来なくなりました。
なので4000円を超えるようなちょっと高めの技術書を買いたい時は、会社の経費で買ってもらうこともあります。
しかし、会社で買う時は申請が却下されたり、承認までに時間がかかってすぐに買えない場合もあるので、結局自分で買うしかない場合も多いです。
また、独身時代は「1人の時間」がたくさんあるのでかなり本を読めました。
しかし結婚して子どもができると、家族サービスの時間が増えるのと引き換えに、本を読む時間が減ります。
なので1人の時間を確保するために、朝5時ぐらいに起きて本を読んだり、ブログを書いたりすることが多いです。*1
というわけで、一時期に比べるとペースは落ちていますが、それでも2〜3ヶ月に一回ぐらい2〜3冊の技術書をまとめ買いしている気がします。
まあそのうちのいくつかは積読本になってしまうことも多いですが・・・。
洋書にも手を出す
ちょっと話は前後しますが、最近は洋書も買っています。
きっかけは米オライリーが出しているiPhone向けの電子ブックです。
日本語で読めたらベストなんですが、英語版は\600で購入できるので、試しに一冊買ってみました。
The Productive Programmer (Theory in Practice (O'Reilly))
- 作者: Neal Ford
- 出版社/メーカー: O'Reilly Media
- 発売日: 2008/07/13
- メディア: ペーパーバック
- クリック: 11回
- この商品を含むブログ (2件) を見る
元から英語は得意な方だったので、大体の内容(8割前後?)は辞書なしで理解できました。
「なんだ洋書でもいけるやん」と思ったら、こっちのもんです。
海外で発売されている技術書のバリエーションは日本の比じゃありません。
特に日本では永遠に発売されないようなマイナーな技術のマニアックな本がいっぱい発売されています。
また、日本語に翻訳されるのを待たずとも、面白そうな新刊をチェックすることもできます。
いきなり洋書で数千円払うのはちょっと怖い、という方は僕のようにお手軽価格の米オライリー電子ブックを一度購入してみると良いと思います。
これまでに読んできた技術書のリスト
そんなこんなで、これまでに読んだ技術書やビジネス書、語学の本などを合わせると300冊を超えました。*2
これまでに買った本や読んだ本はブクログに残していっています。
そしてこれから
僕はこれからもこの調子で技術書をたくさん読んで、勉強していきたいと思います・・・ではなくて、最近はちょっと考えが変わってきています。
昔は読書量(INPUT)が多ければ、自分のスキルアップにもつながり、そうした習慣が社外でも評価されるのではないかと考えていました。
しかし、世間のトレンドを見ていると最近はINPUTよりもOUTPUTの方が重視されている気がします。
もちろん、質のいいINPUTがないと質のいいOUTPUTに繋がりにくいとは思いますが、要は頑張ってINPUTばかりしていてもダメなんじゃないか、ということです。
こうやってブログを書くのも一種のOUTPUTですが、それ以上に勉強会やセミナーで発表したり、自作のWebサービスを公開したり、そういう外向けのアピールもやっていかないとこの先、プログラマとして生き残っていけないんじゃないかと思ったりします。
そうはいってもなかなか行動には移せていないんですけどね〜。
でも2012年も新しく始まったことだし、今年はそうした「作品」を何か残せたらいいなと思います。
ではでは。
あわせて読みたい
過去に書いた技術書のまとめエントリです。よかったらどうぞ。
情報システム開発に役立つ10冊+10冊 - give IT a try
オブジェクト指向関連書籍リスト - give IT a try