プログラミングの勉強には 何がいいの? (専門書?Webサービス?) 僕の意見

プログラミングを勉強するとなると、専門書やQiita、チュートリアル、個人ブログなど色々ありますが、僕が今まで勉強してきた中で一番効率が良いと感じた方法を今回書いてみたいと思います。

メインは、ズバリ「書籍」!!

書籍の利点として

  • 網羅的に満遍なく書かれている
  • 内容の充実度が高い
  • 内容が正確

が挙げられます。

1.網羅的に満遍なく書かれている

プログラミングの専門書は書籍の中でもかなり厚手の方だと思います。最初は本の厚さをみて抵抗を僕も感じていましたが、今では何にも感じなくなりました。慣れって怖いですね笑。

冗談はさておき、専門書は先述したように300ページ以上あるものが普通です。
僕がなぜ厚くなりがちなのだろうか考えてみたところ、つまりそれだけ内容を書かないとWebとは差別がつけられないんですね。特に、プログラミングを勉強する人たちは普通の人よりもWebと親和性が高い人たち。
軽い内容だとすぐにWebのコンテンツと競うことができません。そのため、内容がすごい量になっていると個人的には思っています。

大量のコンテンツ=内容が被らないように全体が網羅的に書かれているものが多い。つまり、効率的に勉強することができますね。

2.内容の充実度が高い

書籍を書いているのはその世界のエキスパートの人たちです。つまり、その技術を使って実際に業務をしており、「こういう風にすると、後から問題になる。」など経験から得た勘所を抑えています。

また、その分野のエキスパートの方々は技術のコアを抑えているので教える相手のレベルにあったわかりやすい説明をしてくれます。

初心者向けには一般的な例え話を入れていたり、例として出てくるコードの中の関数や変数が一般の方でも想像のしやすい形になっていたりします。いやー、本当にげき強エンジニアはすごいです。

3.内容が正確

ブログを書くのは一人でもできますが、本を書くには著者、編集者、監修者など多くの人が関わっているため、一人だと見逃しがちなミスの指摘や文がわかりづらい場合他人からのフィードバックをもらえたりするため内容が正確なことが多いです(ないとは言い切れません笑)。

また、ブログやQiitaの記事だと「こう書けば動く。」といった内容のものも多いですが、書籍だと「こうやって書くのはこういう理由からだ!」といった理由を説明しているものが多いです。プログラミングは暗記ではなく、理解が大事なので、そこはしっかりと抑えた方がいいでしょう。

じゃあ、ブログやQiitaはいらないの?

そんなことはありません。
例えば、書籍は内容がしっかりしている反面、頻繁なアップグレードには弱いです。そこを補うためにブログやQiitaの記事といったWebのコンテンツは素晴らしいツールとなります。
やはり情報の鮮度としてはWebに勝るものはありません。

これまでの内容をまとめると、書籍で全体を把握しつつ、その中でわからないことや書籍で解決できないエラーが出てきたらブログやQiitaで補完していく。

これが僕が今考える、一番効率のいい方法だと思います。