Pythonの学習に書籍は必要か?
疑問と結論
プログラミングの学習、特にPythonの学習について最近思うことがあります。「本って必要か?」っていう疑問です。Noteも含めですが、Web上に「Pythonのオススメ書籍3選」みたいな情報の多いこと。
で、結論から言えば必要ないと思っています。もっと正確に言えば「やさしいPython」とか「誰でもわかるPython」みたいなざっくりとした本は特に読む必要がないです。
理由
書籍がいらないと思う理由はいくつかあります。以下にまとめていきます。
公式ドキュメントの存在
書籍がいらない最大の理由が公式ドキュメントが充実していることです。実際に見てみるのが一番早いと思うので、現時点で最新のPython 3.12.4のドキュメントのリンクを貼っておきます。
日本語版もあり、中身も充実しています。さらに言えば、有料の書籍より情報の正確性や信頼度が高いです。何故ならば「公式」だからです。
また、Pythonに限らず、近年はライブラリという機能群を使ってコーディングするのが普通ですが、こちらも公式ドキュメントを頼るのが良いです。使い方が最も詳しく乗っており、最近はサンプルコードも結構充実しています。
学習サイトや技術サイトの充実
プログラミングなので手を動かしてナンボです。そういう意味で言えばここ数年は無料も含め学習サイトが本当に充実しています。ProgateやCODEPREPなどが有名です。
この手のサイトは大体が基礎部分が無料で、その後の発展的な部分が有料だったりしますが、無料の範囲での利用で充分です。あとはプログラミングでやりたいことが出来たらその都度、Qiitaなどの技術サイトを使いつつ、自力で実装してみるのが良いと思います。
プログラミングの役割
Pythonに限らずプログラミグがどういう時に必要になるか考えてみます。「ホームページを作りたい」とか「作業が面倒くさいので楽したい」とか何かしら目的があるはずです。目的が正確に言語化できれば、ググるなりChatGPTに聞くなりで、大体やり方が出てきます。わざわざ本に頼る必要もないですね。
以上のことから書籍に頼る必要はないと思っています。
学習の仕方
ではどのように学習すればいいのって話ですが、重要なことは、『実際にコーディングし成果物を作成すること』と、『人のコードを読み、自分でもコーディングしてみること』の2つだと考えています。
具体的には無料サイトと公式ドキュメントを使ってif文やfor文、関数や変数について学んだ後、なんでも良いので簡単なテーマを設けてコーディングしてみてください。データを地図化するでも、家計簿アプリ作成するでもなんでも良いと思います。
で、おそらくかなり早い段階で躓くので、ChatGPTを使うなり、ググるなりしてみてください。恐らくほぼ答えに近いコードが得られます。得られたコードをコピペしつつ、自分なりに一部をいじってみると良いでしょう。この辺りの作業を繰り返しているうちに、プログラミングの感覚がついてくると思います。
感覚がついてくればインポートしているライブラリやその機能が気になってくると思います。そうしたら公式ドキュメントや技術サイトで調べてみて、今度は他でも使ってみて下さい。で、そうするとどこかのタイミングでエラーが出ると思います。出たらそれも調べて対処するということを繰り返していきます。
繰り返しているうちに実力がついてくるはずです。
終わりに
私はPythonについて上級者であるとは自分でも思っていませんが、とりあえず、それで仕事をしているくらいのレベルではあります。そういう人間からしても書籍に頼って勉強する必要性は感じていません。
ただし勘違いしないで欲しいのは書籍を使うことを否定しているわけではありません。本を読むことが効率良いと感じる人もいるでしょうし、買うだけでやる気の出る人もいるのでしょうからそこをとやかく言う気はありません。
また、実装したい内容の書籍を読み、勉強するのはむしろ重要なことだと思います。自分で何かしらのAIモデルを作りたいとすれば、機械学習に関する本を買うのは必要なことです。Pythonの本を買うくらいなら、その分野の本をもう1冊買った方が良いということです。
大事なことは、Pythonで何がしたいかです。やってみたいことがある方は是非実装してみましょう。それこそが最も効率の良い学習になると思います。