0.はじめに
自己紹介
中小SIerで社内Webシステムを開発。
Java, JavaScript, HTML, SQLを触っている。
技術書を毎月1~2冊購入。

良書だと思う技術書
- 「明解C言語 入門編」SBクリエイティブ
- 「EFFECTIVE JAVA 第2版」丸善出版
- 「プログラマのための文字コード技術入門」技術評論社
- 「はじめてのAndroidプログラミング」SBクリエイティブ

今回登壇した理由
- 技術書に対する考え・行動を、整理したい
- 技術書に対する考え・行動を、知ってもらいたい
目次
- 技術書の購入について
- 私が考える良書
- 私の技術書の選び方
- まとめ
- [補足] 技術書との付き合い方
- [補足] その他
1. 技術書の購入について
私がネットでなく技術書を読む理由
-
体系的に学べる
- 情報が整理されているので、理解しやすい
-
集中して学べる
- ネットだと、つい動画やSNSを見てしまう
- ネットだと、余計なことを検索してしまう
ネットより技術書の方が、学習の効率が良い。
私が技術書を買う理由
- 買えば「読まないのは勿体ない」と思い、少なくとも1~2時間は読むから
- 図書館や人から借りると、結局読まないから
[補足] 3割読んだら元が取れる
「勿体ない」という気持ちが、「読む」力でなく「買わない」力に働くときがある。
「あの本難しそうだから買っても読まないだろう」という感情。
そんなときは「3割読んだら元が取れる」と自分に言い聞かせて、購入する。
※何をもって「元が取れるか」は不明。
私が技術書を買うタイミング
- 新しい言語、ツールを学習するとき
- 「入門系」、「やさしい系」を購入
- ステップアップしたいとき
- 「Effective系」、オライリー本を購入
- おもしろい本を見つけたとき
2. 私が考える良書
技術書を判断する軸
- 分かりやすい、分かりにくい
- 中身が濃い、中身が薄い
- 間違いが少ない、間違いが多い
分かりやすい、分かりにくい技術書
分かりやすい技術書の特徴
- 平易な文章
- 誤字脱字が少ない
- 最初から順に読んでいけば、分からない用語・文章に出会わない
- 章立てが適切
- 著者が対象読者をイメージできている
- 挫折しない
- サンプルコードに対する説明が多い
- キャプチャ画像や図が多い
分かりやすい、分かりにくい技術書の例
- 分かりやすい:「入門系」、「やさしい系」
- 分かりにくい:オライリー本
中身が濃い、中身が薄い技術書
中身が濃い技術書の特徴
- その本にしか載っていない内容がある
- 事実や規則の理由や根拠が、詳しく述べられている
- 情報量が多い
- 価格が高い
中身が薄い技術書の特徴
- ありきたりの内容
- 情報量が少ない、「かさ増し」感がある
- フォントが大きい
- ページ数が少ない
- サンプルコードだけのページが多い(本来、コード適切に分割して説明すべき)
- 無駄にキャプチャ画像、図、イラストが多い
- 似たようなメソッドの説明が多い(オーバロードしたメソッドなど)
中身が濃い、中身が薄い技術書の例
- 中身が薄い:「入門系」、「やさしい系」
- 中身が濃い:オライリー本、「WEB+DB Press本」
間違いが少ない、間違いが多い技術書
「間違い」とは?
-
情報が古い
- 非推奨の機能を説明している
- 新しい便利な機能を説明していない
- Web系の本は5年以上前だと古い
-
サンプルコードが悪い書き方
- 不要な処理
- アンチパターン
-
サンプルコードが動かない
「間違いが多い」技術書は、読んではいけない。
間違った知識や悪い癖が身についてしまう。
しかし、「間違いが多い」と判断するには知識が必要。
購入時に自分では判断できない。
良書、悪書、普通書

- 「分かりやすい」AND「中身が濃い」ならば「良書」
- 「分かりにくい」AND「中身が薄い」ならば「悪書」
- 上記以外を「普通書」と命名
ただし、「間違いが少ない」ことが条件。
「間違いが多い」ならば、常に「悪書」。
[補足] 技術書全体に対する割合(感覚値)
- 「分かりやすい普通書」は一番多い
- 「良書」は少ないが、「悪書」はもっと少ない
3. 私の技術書の選び方
全体的な流れ
- 自分の目的に合致する本か確認する
- 「分かりやすさ」、「中身の濃さ」を確認する
- 「間違いの多さ」を予想する
- 1冊に絞り込む
自分の目的に合致する本か確認する
-
「はじめに」を読む
- 対象読者
- 必要な知識
- 何ができるようになるのか
-
目次を読む
- 全体的な内容
- 知りたいことが載っているか
「分かりやすさ」、「中身の濃さ」を確認する
-
全ページをぱらぱらと読み、雰囲気をつかむ
- 知りたいことが載っているか
- 図やイラストの分かりやすさ、大きさ、量
- フォントの大きさ、見やすさ
- サンプルコードの分かりやすさ、量
-
5~10ページを読み、文章の読みやすさを確認する
「間違いの多さ」を予想する
-
発行年度を見て、情報の古さを確認する
- 5年以上前でないか
-
レビュを見て、評判が悪くないか確認する
- 評判が良いかどうかではない
1冊に絞り込む
以上の情報から、購入する1冊を決める。
「技術書を買うタイミング」によって、「軸」の優先度を変える。
- 「新しい言語、ツールを学習するとき」は「分かりやすい」を優先
- 「ステップアップしたいとき」は「中身が濃い」を優先
「間違いが少ない」は常に優先したいが、判断しにくい。
1冊に決めきれない場合
1冊に決めきれないときは、評価しやすいパラメータから1冊に絞り込む。
同じ分野の本を同時に2冊買っても意味がない。
- 値段が高い方
- ページ数が多い方
- フォントが小さい方
- 発行年度が新しい方
4.まとめ
- 私は技術書を、「分かりやすさ」、「中身の濃さ」、「間違いの少なさ」で判断する。
- 私は技術書を買うとき、上記の項目を、自分の経験に基づくパラメータから判断する。
- ページ数
- サンプルコード
- 発行年度などなど
5. [補足] 技術書との付き合い方
技術書を読む場所
おすすめ
- 電車:毎日乗るので読書の計画が立てやすい。読書後の達成感がある。
- コワーキングスペース:ネットできるが誘惑に駆られることが少ない。
その他
- 図書館:集中できるが、サンプルコードが多い本だと途中で飽きてくる。
- 自分の部屋:誘惑に駆られやすい。時間に対して思ったほど進んでいない。
- 会社の昼休み:周りの目が気になる。
- 外食店
読むのが苦しくなったら
以下の場合、読むのが苦しくなる
-
文章が分かりにくい
- 分からない用語が多い
- 誤字脱字が多い
- 1文が長い
-
サンプルコードが分からない、動かない
読むのが苦しくなったら、迷わず別の本に乗り換える。
勿体ないと思わない。
ただし捨てない。
いつか分かる日が来ると信じて、2年間は取っておく。
積読しすぎない
読む気力が一番湧くのは、本を買った後と捨てる前。
積読すると、「読む」タイミングを逃してしまう。
積読は2冊まで。
買いたい本があっても、「あの本を3割読んだら買おう」と思い我慢する。
技術書の捨て方
技術書を捨てる理由
本棚に入り切らないから。本棚は有限。
捨てる際の判断材料
- 内容が古いかかどうか
- HTML4やAndroid4の本など
- 今後、本に書かれている技術を自分が使うかどうか
- 「今の職場ならば、今後Servlet,JSPは使わないだろうな」など
- その本を全て読んだたかどうか
- 本の内容がすべて頭に入っていれば、本を保管する必要はない
- 入門書の内容を理解できれば、バイブル本を読むことができるので、入門書が不要になる
- 思い入れがあるかどうか
- 頑張って読んだ本
- 5000円以上の本
6. [補足] その他
技術書に対する感想
- 「WEB+DB Press plus」:平易な文章だけど、分かりやすい。なぜかコレクションしたくなる。
- オライリー本:表紙の動物が特徴的。コレクションしたくなる。「シングルページWebアプリケーション」では、表紙がまさかの人間。そしてカラー。正直気持ち悪い。
- 逆引き本、リファレンス本はあまり買わない。ネットの方が約に立つから。ただしコマンド系は例外。
技術書関連で知りたいこと
- 各出版社、各シリーズの特徴(技術評論社、SBクリエイティブ…)
- 名古屋の各本屋の特徴(ジュンク堂、三省堂、三洋堂…)
- 技術書の捨てるタイミング、捨てる本の選び方
発表した後の感想
「新卒でもわかるソフトウェア開発技術書の良書の見分け方 」という勉強会で発表させていただきました。
他の人の発表を聴いた上で、自分のスライドについての感想です。
- 「悪書は少ない」と言ったが、それは「技術書をたくさん読んでいない」、または「悪書だと判断する技術力がない」だけなのでは?
- 「積読しすぎない」と言ったが、本を読まない言い訳なのでは?