こんにちは。紙屋と申します。海城高校の情報科TAや、大学生用プログラミングコミュニティのメンターなどを務めている大学生です。趣味でボカロPさんの動画を作ったりもしています。
#この記事の目的
これからプログラミングの勉強を始めようとしている方や、より腰を据えて勉強したいと考えている方に向けて、失敗しない勉強本の選び方を教えることが本記事の目標です。
この記事にたどり着いた方であれば、世間にプログラミング関連の書籍が星の数ほど出回っていることを、すでにご存知でしょう。それぞれの書籍にはそれぞれの目的・信念・情熱が込められており、どれも一読の価値はあるはずなのです...が、残念ながら勉強用としてはあまり適していない本が多いこともまた事実です。効率的に勉強し、限られた時間で質の高い情報を得るためには、無数に存在する本の中から、目的に合致する本を取捨選択する必要があります。
そこで本記事では、とりあえずこれさえ押さえておけば地雷を踏む確率がかなり低くなるだろう、という4つの目安を、理由とともに紹介します。
一応、プログラミング関連の書籍の選び方についての記事ですが、他分野であっても、勉強目的の書籍を選ぶ際には参考にできるはずです。(自分は、院試の勉強用の書籍なども、本記事で紹介する基準をもとに選んでいます)
#ルール1: 著者がなるべく多い本を選ぼう
理由:どこでも通用する知識が得られる可能性を上げるため。
プログラミング関連の技術書は、書き方に著者のクセが出ている場合が多いです。中には、著者独自の視点・定義のもとで話が進められる本もあります。「一般論とは違う視点に立って説明されているな」と分かる方であれば問題ないのですが、初心のうちにそういうクセの強い書籍にあたってしまうと、下手したら勉強が無意味になる可能性さえあります。
そのため「共著」や「〇〇委員会 編」みたいな本があれば、それを選んでおくのがおすすめです。
#ルール2: 「一般書」ではなく「教科書・専門書」を選ぼう
理由:「一般書」では、知識は得られても技術は得られないため。
「一般書」がNGというわけではありませんが、そればかりをやみくもに読んでしまうと、その分野を中途半端に分かった気になってしまいがちです。自分の能力として操れる "技術" を得るためには、ワンランク上の難しい書籍をあたるのは不可避だと思います。
「一般書」は、あくまでその分野を学ぶモチベーションアップとして読み、頃合いを見計らって踏み込んだ内容の本に移りましょう。
「一般書」と「教科書・専門書」の明確な線引きはおそらくありませが、個人的には次のような基準で判断しています。
- 参考文献リストが・・・充実していない / 充実している
- 索引が・・・充実していない / 充実している
- 数式やソースコードが・・・少ない / 多い
#ルール3: 著者が表紙に載っている本は...
理由:そういった本は、著者の顔を売ることを目的に書かれている可能性が高いため。
ネガキャンじみた内容になってしまい大変恐縮ですが、こういった本は少なくとも勉強用としては避けるべきです。上記の理由に加えて、こういった本が「一般書」に分類されることも、勉強用としては不適である理由です。(専門書の表紙で著者がこちらに微笑みかけているものがあれば、ちょっと見てみたい気はします...)
#ルール4: リアルの先輩に勧められた本があれば逆張りせずに受け入れよう
理由:一番信頼すべき・信頼できる情報であるため。
正直、これが一番大事なうえに手っ取り早いです。自分が志す領域で実際に活躍されてきた先輩のアドバイスは、ひとまず聞き入れましょう。
#まとめ
この他にも「こういう本を選ぶべき!」「こういう本は避けるべき!」といった意見があれば、ぜひコメントや紙屋のTwitterのDMなどでお知らせください。記事修正の参考にさせていただきます。
また、現代において書籍以上の情報源であるネット上の情報の選び方(Webサイトはどこを見れば信頼できる?など)については、本記事では触れられなかったので、後日、そちらを取り上げた記事も書こうと思います。
最後までご清覧いただき、ありがとうございました。