本当は初学者・新人に読んでもらいたい書籍100選(いや100も無理)を書こうと思ったけど前置きが長すぎてひどいことになった上に書ききれてないから、技術書の選び方見極め方とかまずそのあたりから

先日はこんなおっさんホイホイ記事を書いてしまったが、今度はもう少し真面目にIT系新人やプログラミング初学者に対して受け入れやすい独学独習本を紹介したい。ここに紹介する本が全てではないし、これからも数々と書籍が生まれてくるであろう中で、それでも過去に出版された名著というものは時間が経過しても読み応えがあったり、いつの時代でも有用なことが書かれている。読んでいるその時点ではそのことが分からなくても、手元に置いておき、また何年かした新たな知識に直面した自分が読むことで、新たな知見を得ることができるに違いない。

誰でも最初は初学者

昨今はプログラミングばやりである。なんていう類の出だしの記事は前にも書いたが(「プログラミングのチカラを身につけるなら」参照)、理由や動機はともかく、プログラミングだって何だって、誰でも最初は初心者だ。初心者がどこから始めればいいのかは常に手探りだ。知っている人からすれば些細なことでも、知らない人にしてみれば、それがスゴい事なのか意味のある事なのか判別すらできない。スキルの向上は、まずその判断ができるようになることから始まるだろう。学校に通える人はそれでいいが、時間や金がない人は独習しかない。私も常に独学独習してきた人間だ。その経験から紹介できるいくばくかの本を列挙したい。初学者もIT新人も参考になれば幸いだ。
そして以下の私の過去記事も、ぜひ参考にされたし。

本当は紹介したいけど自分が途中までしか読んでいないものや、買ったけど「積ん読」状態のもの、欲しいけれど未入手のものなども多数あるが、そうしたものは除外し、私がある程度目を通している書籍を列挙している(一部例外もあるけれど)。

そして、すみません、前置き長い野郎なので、書籍紹介は、次回時間ができたら、書きます…いや書き掛けなんです…。

技術書の選び方

書籍を紹介していく前に、技術書はどのように選べばいいのか、というポイントをまとめてみたい。
おそらく最初の独学独習における難関は「どの本を選べば正解か」ということであろう。
ハッキリと残酷なことを言えば、正解はない。その人にとってどういう文体や解説法が理解しやすいか、そして理解力はどのくらいなのかは、十人十色である。したがって、万人向けの書籍などというものは、基本、存在しない。優しすぎるか、難しすぎるか、丁度いいかは、その人が実際に手にして読んでみて初めて知るところとなるだろう。
しかし書店で手にした本をすべて読み尽くしたり、1章ぶん読むことは、時間的肉体的にも難しい(若い時は私は5〜6時間立ち読みはよくやったけど、さすがに1冊を読み尽くす立ち読みはしたことがない)。
そこで、さきの「プログラミングのチカラを身につけるなら」の記事でも簡単に触れてはいるが、技術書を選ぶ際のポイントを書いてみたい。
技術書を選ぶのも、その技術のスキルの1つであると、私は思っている。

  1. ジャケ判断しない
    「バカにするなちゃんと中を見て買うのは当然だろ!」と言われるかもしれないが、案外これがジャケ買いしてしまう場合があるし、そういう人もいる。
    小説とか語学学習本を買い慣れてる人でも、うっかりタイトルとジャケットに誘われて、中身をパラッと見て「これいいな」って買ってしまった経験がある人も多いだろう(私もそうだけど)。タイトルを一見して具体的なプログラミングの話かなと思って買って見たら実は概略だけでした、概論などの話題性を求めたのにものすごい濃い内容だった…など。
    とにかくタイトルや表紙だけで判断をしてはいけない。ジャケ買いさせるのは出版社の手でもある。数ある同列書籍の中から手に取ってもらえるチャンスを引き出すのは表紙とタイトルだからだ。
    あと「この出版社からの本ならテッパン」っていう買い方は若干危険。本は著者によって大きく変わるからだ。逆に「この著者はテッパン」は7割ぐらいアリだと思う。内容云々もあるだろうけれど、自分が読みやすい文体や進め方をする著者を見つけたら、その著者を頻繁に選ぶ傾向はあると思うからだ。読み進められなければ、独習独学に先はないのだ。
  2. 奥付を確認する
    奥付(おくづけ)とは、書籍末尾ページにある出版社や著者の情報、価格やISBNなどが記載されているところである。ここに大切な情報「出版年」「版数」「刷数」が書かれている。ちなみに洋書(翻訳ではなく原著)だと奥付はなく、だいたい書籍の最初の方に出版社情報、出版年などが書かれていることが多い。
    技術書は生モノである。旬を過ぎたら腐って食べられない可能性もある。腹は壊さないが役には立たないかもしれない。言語にせよツールにせよ、バージョンが古いものと新しいものでは一部互換性のないものもあるだろう。まるっきり違うものになっている可能性も否定できない。「出版年」は、この書籍が執筆されたおおまかな時期がわかる。この時期の技術をGoogleなどで調べれば、どういう時代背景で書かれた記事かが分かるだろう。
    「版数」はどのくらい書籍が改訂されたか、つまり、内容を見直され一部ないしは全部書き直されたかである。版数が多ければ人気が高く、かつこの書籍で取り扱う内容はとても価値が高い本である可能性は高い。なぜなら、内容を時代やバージョンに合わせて書き直すために著者が手を入れ出版社が印刷するからである。当然、売れると見込まなければそんなことはしないし、世の中だってその技術が有用だと思わなければ、そうした技術書を求めることもない。読者人口が多いということは、その技術の浸透力をうかがわせる。ちなみに技術書の場合、版を改訂する(改版という)際には、表紙見出しに「改訂新版」「改訂第3版」のように記載することがほとんどであるため、版については奥付を確認しなくてもわかりやすいだろう。
    「刷数」、つまり「2刷」「3刷」など、その版の書籍を何回刷ったかを示す数である。本はコストや流通の関係から、一回にある程度の冊数を印刷する。それが捌ける頃に、またある程度印刷する、ということを繰り返す。そのため、この数が多いということは、その版が売れ筋であったことを意味する。ただし刷数が多くても、出版年が古く、版がそれ以降出ていない場合などは、当然だがその技術はその時代の趨勢ではあったが現在はどうであるかを匂わせる。そういう場合は改めて検索サイトなどで本家サイトを確認して見たりするといいだろう。ダウンロードページなどの日付が古いままなら、現在は開発を中止しているか停滞していることを示している。
    余談だが、技術書の場合はその特性上プロプライエタリな製品を取り扱う傾向があるため(WindowsとかMacとか)、タイトルページ前ぐらいに商標表記をつけている場合もある。

  3. まえがきを読む
    本文を読む前に「まえがき」「はじめに」「この本を手に取ってくださった方へ」など、とにかく最初の部分を読む。ここでは総じて「まえがき」と記載する。
    洋書翻訳本など海外の著者の場合は、さらにその前に「謝辞」を書いている人もいるが、謝辞自体は書籍の内容と直接関係のない記述が多い。謝辞については、著者の背景を知る情報として使う程度で良いと思う(大学の先生なのか有名企業の著名なエンジニアなのか…など)。
    「まえがき」には、重要な情報が隠されていることが多い。どういう経緯でこの本が書かれたのか、この書籍が執筆された時代背景はどうだったのか、どういう技術について書いているのか、読者対象はどのぐらいのスキルレベルを想定しているのか、どういう場面で活用してもらうことを想定しているのか、などである。
    書籍によっては、各章ごとにどういうことが書かれているのか、共著者がいる場合はどういう分担をしているのか、などが書かれていることもある。目次と合わせて、章別の内容を判断することが可能だろう。

  4. 目次を読む
    目次には、その本がどこまでの技術を含めているかの情報が隠されている。応用的なことまで書いてあるのか、初心者に特化した基本的中級的な内容が満載なのか、などは目次からおおまかに判断ができる。
    書籍全体における後半の章で「より進んだ使い方」という感じの章があれば、前半から中盤の章までで、あらかた基本的な説明が終わっているという前提で構成されているだろう。逆に最終章あたりでさらりと触れているなら、基本や中級の知識を中心に書かれていたり、事例やサンプルに多くのページを割いている本なのかもしれない。
    ある章と次の章のページ数の幅で、その章のボリュームがわかる。つまり、その章に書かれていることの分量の目安がわかる。
    もちろん、目次と合わせて本編にもちゃんと目を通すようにしたほうがいい。単に写真ばっかり掲載されて余計なページが多いのか、サンプルコードや事例・設定例などが豊富に掲載されているのかなどは、重要な要素でもある。
    コラムの見出しも目次から判断できる。コラムは要するに「余談」ではあるが、その本の内容をある程度学んで次に向かいたい場合のヒントが書かれていることもあれば、お話や本当に余談なだけの場合もある。コラムの見出しからそのあたりも判断がつけられるだろうし、気になればページをめくって確認するのもいいだろう。

  5. 索引を眺める
    索引とは、キーワード検索である。
    書籍にちりばめられた専門用語やキーワードが、どのページにあるのかが、索引で判断できる。
    いまどき技術書に索引がないことは稀だが、ときどき索引を設けてない技術書もある。
    逆に索引があっても1〜2ページ程度というものもある。こういう書籍の場合、キーワードはあまり多くないか、索引から何かを調べるより、書籍全体をしっかり何度も読み通して理解したほうがいい場合など、初級者向けの本に多い気がする(一概には言えない)。
    索引だけでものすごい分量がある技術書は、入門書や学習書ではなく、ほとんどの場合が参考書のような書籍であろう。キーワードが多いに越したことはないし、参考書的な本は初学者であれ新人であれベテランであれ手元に置いておきたい1冊ではあるが、初学者の場合は特に、本当に必要になったときに買う方がいいだろう。それよりも、挫折をしないための良い入門書を選んでもらいたい。

技術書の”読み方”?

技術書は普通の書籍とは読み方が異なる、と私は思っている。
それはエンジニアの書籍だけではなく、他の分野の専門書籍においても同様なのではないかろうか。

最初から最後まで読むものではない

小説は、お尻から読むとか、途中から読むということは、ほぼ100%ない。人によっては「あとがき」を先に読む人もいるみたいだが、ネタバレすることもあるので普通は頭から通しで読む。
だが、技術書は普通の書籍とは読み方が若干異なる(場合がある)。
必要な項目から読む、必要な項目だけ読む、不要な箇所は飛ばす、など、要するに参考書的な読み方をすることが多い。
もちろん、その本に書かれていること全体が興味対象や必要対象であって、最初から順を追って読んで行く場合もある。
特に導入部分に力を入れているであろう入門書の場合は、少なくとも途中の章までは頭から順に読み進めて行くことになるだろう。
しかし、慣れてきたり、ある程度把握できてきた場合、必ずしもそうした読み方になるわけではない。

なぜあえてこういうことを書くかというと、実は私自身「本は頭からお尻まで直線的に読むもの」という先入観や概念に囚われすぎて、本当に必要な箇所に読み進むまでに飽きたり挫折したりすることがあったからだ。
先に書いたように、技術書は生モノである。飛ばし読みをしていれば本当は”旬の味覚”にたどり着いたはずが、熟成させすぎて使い物にならない情報にしてしまったことも何度もある。
途中の章が自分とは関係ない、ここは今読んでも仕方がないと思ったら、迷わず先の章に進むという読み方をすべきだろう。仮にその先でつまずけば、飛ばした章が実は必要だったのだと改めて認識し、戻って読むこともできるはずだ。

飛ばし読みの際の注意点

当たり前の話だが、小説などの読み物は、すべての文章が読まれることを前提に書かれている。
もちろん技術書もそういう前提で書かれている。しかし場合によっては、掲載された設定やプログラムの説明を読んだ後に自分でそれを試しながら、本文の解説を読むということもある。その際に、いちいち知っている箇所を読む必要はないだろう。

ただ、注意したいことがある。
知っている箇所だからといって丸々と飛ばしてしまうと、実はそこにプラスアルファの有益な付帯情報が書かれている場合には、それも読み飛ばしかねないということだ。
読み飛ばすにしても、そうした情報まで飛ばさないように気をつけて読み進める必要はあるだろう。

すみません、私が「いいっ!」って思った書籍の紹介は、もう少し先に紹介する予定です…たぶん……(;´Д`A

コメントを残す

メールアドレスが公開されることはありません。