最近(と言っても去年)、新しいプログラミング言語を学びました。
本やオンラインのチュートリアルを読みながら、独学しました。
いずれも「これをしたいときはこのように書く」というようなものでした。
小学生からBASICという言語をはじめ、プログラミングを学びました。
図書館に行き、本を借りて独学しました。
そして、1980年代当時の本は、いくつなパターンがありました。
コンピューターの仕組みを説明する本。
コンピューターの基本的な構成や部品。
0と1の世界で、数字や文字をどのように表現するのか。
メモリとディスクの違い、画面に表示するときの仕組み。
今では当たり前のことですが、当時はまだまだ未知の世界でした。
コンピューターの仕組みを説明しながらプログラミング言語を教える「プログラミング言語教本」。
あるコマンドを書くと、コンピューター内ではどのように保存し、どのように実行する。
文字列は実際にどのようにメモリに保存する。
画面に円を書く時、実際にコンピューター内になにが起きているのか。
プログラミング言語を学びながら、コンピューターの基本も学ぶような本でした。
プログラムの簡単の説明とソースコードだけを載せる「プログラム集」。
この多くは簡単なゲームのソースコードでした。
自分で入力して、そして実行して楽しむ。
自分で改造する提案も載せてある。
読者がすでにプログラミング言語の知識を持っている前提です。
確かにプログラミング言語がかなり進化してきました。
だれでも使えるようになりました。
しかし、今と比べて、違いが明らかです。
当時は基本を重視。何か新しいものを学ぶ時、基本から学ぶのが重要です。
今では即席重視。すぐに使える。手順を従えば、何とかできる。
でも、うまく行かないとき、なぜうまく行かないのか、分かりません。
その基本的な知識がありませんから、分かるわけがありません。
幸い、私は昔の知識、そして学校で学んだ知識があります。
だから何かある時、自分で原因を探り、解決することができます。
でも、周りの人をみると、そうではありません。
彼らの中には、最近になって、仕事の必要上、プログラミングをはじめた人が多くいます。
裏の仕組みを理解しないまま、手順に従えば出来上がるのようにする。
でも、うまく行かないとき、かなり悩む。
スピードが命という今の世界。
即席が当たり前です。
でも、基本から学ぶのが、本当に大事です。
時間と競争する中、それだけは忘れないでほしいです。