プログラミング言語の学び方
よく「プログラミング言語をどう学べばいいですか」と聞かれるが、僕の答えは:プロジェクトから始めること だ。何を作ればいいかわからないまま、とりあえずプログラミング言語を学ぼうとすると、つまらなくて退屈な小さなコードブロックを書くだけで終わってしまう。時には訳のわからない例を使って説明されることもある。学習に役立つかって?もちろん役立つけど、将来もっと大きなプロジェクトを作る時に何か役立つかというと、僕はそうは思わない。だって将来プロジェクトを書く時には、自然と必要な文法を使うことになるんだから、最初からプロジェクトで始めた方がいい。
とはいえ、これはすでにプログラミング経験がある人に対して言えることだ。もし全くプログラミング経験がない人なら、いきなりプロジェクトから始めると手も足も出ないかもしれない。そういう場合は、まず基礎知識を学ぶことをおすすめする。多くのプログラミング言語には入門チュートリアルがあるし、オンラインコースを参考にするのもいい。文法を大体理解してから、プロジェクトを書き始めればいい。
より高度なデザインパターン(よく使われるシングルトンパターンなど)や変数の不変性といったことも、すべて様々なプロジェクトから生まれたベストプラクティスだ。プロジェクトを書く過程で、徐々にこれらの内容を体感できるようになる。焦らないで、プログラミング言語の学習は段階を踏んで進むプロセスなのだから。
検索エンジンやコミュニティリソース、例えば Stack Overflow、GitHub などを積極的に使って、解決策やインスピレーションを探そう。オープンソースプロジェクトに参加するのもとてもいい学習方法で、本物のコードやプロジェクト構造に触れることができる。
そうそう、必ず「ネットワークの円滑さ」を確保してほしい。プログラミング言語を学ぶのに、科学的なツールがないなんてありえないでしょう?
最後に、必ずバージョン管理システム(例えば Git)の使い方を学んでほしい。コードの変更を管理し、プロジェクトの進捗を記録し、問題に遭遇した時には簡単に以前のバージョンに戻すことができる —— 計算機教育に欠けている一課、というか第ゼロ課と言うべきか、そこでも触れられている。