幼稚園児とか小学生にプログラミング学習って必要なんでしょうか?とふと考えました。本日は、小さい子のプログラミング学習の必要性についての話題です。
早期教育が、はやっていますが…
最近は、何でも早期教育で、小さいうちから色々な習い事をしているお子さんが増えていますね。
もっとも、小さい子の習い事って昔から存在していて、私が小さい頃も、そろばん、習字、ピアノ、スイミング、バレエ、バイオリン、公文…と、いろいろやっている子がいました。子供によっては月曜日から金曜日まで予定がびっしり、みたいな。もう30年以上前の某地方都市でのお話です。
プログラミング学習も加わる
そんな習い事の中に、最近は「プログラミング学習」が加わっていると聞きました。
実際、日本の小学校では、もうすぐプログラミングが学習カリキュラムに入ってくるといいますし、我が子が通うスペインの幼稚園でも、たまにロボットを動かしたり、タブレットに触れたりとプログラミングもどきの学習をしているようです。
最初に我が子の世代に、プログラミング学習が導入されつつあると知った際には、「なぬー!」と黒船を見た江戸っ子みたいな感覚で、「いったいどんな代物だね?」と警戒心を募らせました。人間って、自分の知らないモノに対して、軽く恐怖心を抱くんですね。畏怖の念といった方がいいかしら。
とにかく、知らないものを知らないまま、そのうち子供が学ぶことになるのって嫌だわーと思ったので、まず自分が学んでみようと思ったのでした。そうプログラミングを、です。
いざ自分もプログラミングを学んでみた
そんなわけで、子供より先に自分がプログラミングを学んでみました。
私のプログラミング知識的には、これまでホームページを作るにもDreamweaverとかのアプリや、Wordpressみたいなコンテンツマネジメントシステムを利用してきたので、HTML、CSSさえも怪しい感じ。気合のコピペと写経で切り抜けてきたのでした。
まぁ、いい機会じゃ、と、HTML、CSSはもちろん、Javascript、Python、PHP、R言語、あたりも学んでみることにしました。もちろん、複数言語を同時に学ぶのには無理があります。英語とスペイン語とカタルーニャ語を同時に学んだら混乱するのと一緒ですね。なので、無理のない範囲で時間をかけて、最初はPythonをメインに、慣れてきたら、Javascriptを加えて、PHPやR言語は必要最低限って感じで学習してみました(今も学習途上にあります)。
プログラミング学習の独学で、最大限に利用したのがUdemyのコースです。特に、Colt Steele先生の鉄板2コース!
The Web Developper Bootcamp とThe Modern Python 3 Bootcampです。
英語のコースなのですが、もうめっちゃ分かりやすくて、ホント、助かりました。Udemyのコースはセール中に購入すると2000円以内で購入できるので、本を1冊買う感覚で始められてコスパ抜群です。
英語の学習に似てるかも
実際、自分がやってみて感じたのは、プログラミングって、英語(というか語学)の学習に似ているな、ということでした。
英語を学んだ人が、必ずしも英語の翻訳家や同時通訳の人になる必要がないのと一緒で、プログラミングを学んだからといって、必ずしもプログラマーになるわけではない。
英語を学ぶと、日常会話程度のレベルなら誰でも簡単に到達できるけど、国際学術会議の同時通訳や医療翻訳などの専門的な分野で活躍するにはそれ相応の訓練と経験が必要となる。
同じく、プログラミングを学ぶと、簡単なプログラムを作るレベルなら、少し頑張れば簡単に到達できるけど、プログラマーとして各種専門分野で通用するレベルのプログラムを書くには、それなりの訓練や経験が必要になる。
幼稚園や小・中学校でプログラミングを学ぶというのは、将来プログラマーになりたいから学ぶ、というのではなくて、英語の日常会話を学ぶのと同様、プログラミングの基礎を学ぶって感覚だなと実感したのでした。英語が分かるお医者さんがいるように、プログラミングが分かる建築士や、プログラミングが分かる保母さんがいたって良いのではないの、ということです。
別に英語のネイティブスピーカーになるつもりがないなら、英語だっていつから始めてもそこそこのレベルには到達するのと同様、世界屈指のプログラマーになるつもりがないのなら、プログラミングもいつ始めても大丈夫と思います。
そして将来、本格的なプログラマーになりたいという方は、専門学校なり大学なりOJT(働きながら)で頑張ってください。日英同時通訳を職にしたい人が、それ専門のトレーニングを積む感覚です。
もっとも、英語との一番の違いがこの点だと思っていて、プログラミングに限っていえば、早く始めればそれだけ効果があるとは言えないんじゃないかと思っています。
小さい子の英語教育とプログラミング教育、どちらを優先させるかと言われたら、英語と答えますね。私もそうですけど、プログラミングは英語で学ぶ方が楽ちんなので。
もちろん、一番大切なのは母国語(日本にいる多くの人の場合、日本語)力の充実ですけどね。
プログラミング学習はいつから始めるのが良い?
さて実際、プログラミング学習はいつから始めるのが良いのでしょうか。
これは、プログラミング言語の種類と学ぶ内容による、の一言に尽きます。
人気のプログラミング言語
たとえば、Python、Javascript、Ruby、C言語、みたいな、業務でプロが使用しているいわゆるプログラミング言語群。
こういった言語は、記述がアルファベットと数字と記号だし、英語がベースになっているし、文字(アルファベット)を読めることが前提になるわけです。
しかも、作るものにもよりますが、方程式の概念を知っている方がやりやすい。となると実際は、中学生が始めるくらいが無難なのかな、あるいは学び始めた後の吸収が速いかな、と思います。
なので、デキる中学生なら、PythonやJavascriptみたいなプログラミング言語をいきなり学び始めてしまっても良いかなと思います。高校生にもなれば、すんなり入れるのではないでしょうか。
幼稚園児や小学生ならではのプログラミング学習
一方で、プログラミングでよくでてくる構文である「もし~なら、~をする」とか「~の限り、以下の動作を繰り返す」という発想なら、もっと小さいころから慣れ親しむことができます。
ScratchやBlocklyなどのビジュアル系のプログラミング言語なら、アルファベットや英語的な構文が分からなくても、視覚的に直観的に、学習を進めていくことができます。
なので、幼稚園児や小学生がプログラミングを学ぶなら、次の三つが最初のゴールになるのかなと思います。
- 物事の因果関係を見つける
- 「もし~なら、~をする」「~の限り、以下の動作を繰り返す」といった発想を使って、対象を動かす楽しみを知る
- アルゴリズムの基礎を学び、結果に到達するためのより効率的な行程を考える
って感じかな、と。
それでは実際に、子供がプログラミングを学ぶには、どんな方法があるかについては、次回の記事で考えたいと思います。
コメント