『独学大全──絶対に「学ぶこと」をあきらめたくない人のための55の技法』が20万部を突破! 本書には東京大学教授の柳川範之氏「著者の知識が圧倒的」独立研究者の山口周氏「この本、とても面白いです」と推薦文を寄せ、ビジネスマンから大学生まで多くの人がSNSで勉強法を公開するなど、話題になっています。
この連載では、著者の読書猿さんが「勉強が続かない」「やる気が出ない」「目標の立て方がわからない」「受験に受かりたい」「英語を学び直したい」……などなど、「具体的な悩み」に回答。今日から役立ち、一生使える方法を紹介していきます。
※質問は、著者の「マシュマロ」宛てにいただいたものを元に、加筆・修正しています。読書猿さんのマシュマロはこちら

「私が学ぶべきことは何ですか?」という質問への恐ろしく納得の回答Photo: Adobe Stock

[質問]
 何のためにプログラミングを書くかという目的が纏められた書籍が有れば教えていただきたいです

 プログラミングを学びたいのですが、初学者にはプログラムという物がメモ帳に書かれた記号の羅列のように見え、右も左も分からず真っ白な霧の中に居るような感覚で、何のためにプログラミングを書くか? という目的を見出せません。

 例えば、英語では、「英語圏の方々とコミュニケーションをする」といった目的が直ぐに思い付きますが、プログラミングでは、「コンピュータとの対話……だから……何だろう」という思考過程で、思考が止まってしまいます。

 何のためにプログラミングを書くかという目的が纏められた書籍が有れば教えていただきたいです。

大事なのは「それで何がしたいか」です

[読書猿の回答]
 その言語に未習熟で、そのコードで何ができるのか理解できないなら記号の羅列に見えるのは道理です。理解できなければ、どうすれば何ができるかイメージできない訳で、やりたいことを具体化することも困難でしょう。

 プログラミングの目的は抽象的に言えばコンピュータに何かをやらせることですが、その何かを一冊にまとめられるほど、コンピュータにできることが限定化されたものなら、今日のようなコンピュータの隆盛はなく、学びたい人以外にもプログラミングを教えようなんて話は生まれてさえいないはずです。

 いろんな分野に関して「私のやりたいことは何ですか?」という質問をいただくので申し上げますが、プログラミングの目的が分からない方は、プログラミングを学ぶ必要がない人だと思います。少なくともまだその必然に至っていないという意味で。

 ついでに申し上げると、英語などの語学学習もコミュニケーションを自己目的化するとあいさつ止まりです。コミュニケーションを通じて実現したい何かがあるから、何を話すかを考えて、意味あるやりとりができる訳です。