青魔道士、ここに推参
Progateというプログラミング学習サイトがある。はじめてプログラミングを学ぶには、わかりやすく丁寧で良い学習サイトだ。プログラミング学習サイトには、Progate以外にもたくさんある。基本的にどれも初学者を対象にしたサイトである。
ここでは、いちばん利用されていると思われるProgateを例にとれば、Progateは1つまたは複数のレッスンを終えるごとにレベルが上がっていくようになっている。学習意欲を高めるためのシステムである。学習意欲はプログラミング学習だけではなく、いろいろなことを学ぶ上で大事な要素である。
だが、このレベル制はときとして疑問を持つ。なぜか。それは、レベル上げのために周回学習に陥ってしまうことだ。周回学習は別に悪いことではないが、せいぜい2周もしくは3周までであろう。個人的には、これ以上の周回は、無意味ではないにしろ、無駄な時間と考えている。どの学習サイトでもそうだが、知識や技術が0から始めた初学者がスタートラインに立つまでのものである。何周もしたとしても、いつまでもスタートラインに立つだけなのである。それが悪いかと言われてしまえばそうなのだが、スタートラインから先に進まなければ、進歩はないと考えて良い。
プログラミング学習において、完璧さを求めてはいけないというのはよく言われることだろう。周回することによって、プログラミング言語の構文を覚えていくが、それは、プログラミングの言語を知識として覚えていくだけで、知恵として生かされないのである。知識は必要なものだが、それを活かすために知恵が必要である。ここでいう知恵とは、学習した知識を活かしてモノを作るための力である。この知恵がなければ、知識としては無駄なものとなりかねないのである。
基本的に、コードを多く書くことで知識と知恵が蓄積されていく。これ以上の学習はない。プログラミングは作ってなんぼの世界であり、いつまでも学習サイトにおいて、多くの時間を割いて周回学習するのは、時間を空費しているだけと考えるべきだろう。他のことについて学習したほうがよい。