見出し画像

子どもはテキストプログラミングを学ぶべきか?


1.ビジュアルプログラミングとテキストプログラミングの特徴

ビジュアルプログラミングの特徴

ビジュアルプログラミングでは、単語や文字、数字を打ち込まず、ブロックやキャラクターや音を組んでゲームプログラムを作ることができます。きれいで、わかりやすく、直感的で、テキストベースのコードよりもはるかに使いやすいのが特徴です。しかし同時に、テキストプログラミングに比べて制限があり、できることは限られています。

↑ビジュアルプログラミング(スクラッチ)

テキストプログラミングの特徴

テキストプログラミングは、黒い画面に文字や数字や関数などを打ち込んでいくプログラミングです。できることの範囲が青天井である一方、サービスを作るのは地道で忍耐が必要であり、初学者にはつまずきやすく難しいという特徴があります。

↑テキストプログラミング(Ruby on Rails)

一般的にスクラッチやマイクラなどのビジュアルプログラミングは初心者が学びやすいというメリットがありますが、より高度なプログラミングをしたい場合は、テキストプログラミングが適しています。ビジュアルプログラミングを使って楽しいゲームを作ることはできますが、実際に人の問題を解決するWebサイトやアプリなどのサービスを作ることはできません。

2.子どもはビジュアルプログラミングから始めるべきか?

多くの子どもはビジュアルプログラミングから学び始めるのが合っています。
ビジュアルプログラミングは、子どもがプログラミングの基礎を理解するのに役立ちます。また、エラーで動かなくなることなどを心配する必要がありません。箱を所定の位置にマウスで持っていき実行すると、キャラクターが画面上を動き、すぐに結果が得られます。自作ゲームもすぐに作ることができます。

こうした理由から、ほとんどの子どもはビジュアルプログラミングから始めると上手くいきやすいです。スクラッチやマインクラフトなどを使えば、カラフルな命令ブロックをマウスで組めばよく、言葉を気にする必要が無いので読解力も関係ありません。

しかし、いずれ子どもたちは遅くとも小学校まででビジュアルプログラミングに飽きます。そうなるとテキストプログラミングに移行します。高校の情報で出てくる問題もテキストプログラミング(疑似言語)になります。ビジュアルプログラミングで基礎を学び、準備ができたらテキストプログラミングに進みます。

子どもプログラミング教室エドグラではスクラッチから始まり、C言語・JavaScript・HTML/CSS・Python・Ruby on Rails・jQueryなど、多様なテキストプログラミング言語やIT国家資格(ITパスポート, 基本情報技術者)の取得などの学習に進むことができます。何段階かのレベルに分けられており、学習速度に応じて上のレベルの内容に進めます。

カリキュラムイメージ

もちろん最初からテキストプログラミングを学ぶという選択肢もあります。子どもにとってはむしろその方がいい場合があります。
しかし、テキストプログラミングを学ぶことで待ち構えていることを知っておいたほうが良いと思います。

3.テキストプログラミングの学習は忍耐がいる

子どもが読み書きできる年齢であれば、テキストプログラミングに挑戦することができます。言語の種類は、HTML/CSS・Python・C言語・JavaScript・Rubyなど様々です。

HTML/CSSは、ホームページに表示するものをコーディングできます。Pythonは子どもたちの学び始めに最適といわれ、高校の情報でも出てきます。C言語は情報系の大学でプログラミングの基礎として学びますし、RubyはIT未経験者の学び始めに使われる日本発の日本人に分かりやすい言語です。


しかしテキストプログラミングは簡単ではありません。PythonやRubyなどは特に分かりやすい構文ではありますが、ビジュアルプログラミングを学ぶよりもかなり難しいのです。

まず、タイピングの仕方を知らなければ、テキストプログラミングを書くことができません。小さな子どもは、文字がどこにあるのかもわかりません。人差し指でポチポチ…とゆっくり押すのがやっとです。そんな子どもがテキストプログラミングから学ぶと、進みが遅すぎて嫌になってしまうと思います。

また、エラーが起きることがよくあります。単語のスペルミスやカッコの抜けがあるだけでプログラムが停止してしまいます。子どもたちはビジュアルプログラミングの場合よりも、エラー解決をしなければならないです。

要するにテキストプログラミングは多くの時間と忍耐が必要です。そして、教師や親も忍耐強くなければなりません。子どもをサポートし、励まし、小さな成果ごとにほめてあげましょう。


4.テキストプログラミングは早く学んだほうがいいの?

子ども次第となります。
一方では、ビジュアルプログラミングに時間をかけて楽しいゲーム作りに慣れすぎてしまうと、むしろ低刺激なテキストプログラミングへのハードルをより上げてしまうことだってあると、以前の記事で話しています。(参照:子どもプログラミング教室 ビジュアルプログラミングに力を入れすぎ問題)

他方では、挑戦心があり優秀な子どももいます。
そのような子どもの場合、テキストプログラミングから始めるかもしくは、早い段階からテキストプログラミングへ移行するのが良いかもしれません。

結局のところ、最初にビジュアルプログラミングを学ばなくても、早いうちから始めることは投げ出してしまうリスクさえなければメリットが非常に大きいです。

5.テキストプログラミングは無限にスキルが伸ばせる

ビジュアルプログラミングの場合、限界がとても低くなります。楽しく遊んだり、ちょっとした複雑なプログラムを作成したり、すごいスピードでブロックを組みゲームを作れるようになりますが、実際にできることはそれだけです。

テキストプログラミングにはその問題はありません。子どもたちができることの幅は無限に広がります。日々技術は更新され、ITスキルが頭打ちになり飽きてしまうことは一生ありません。

最終的には、プロの現場で活躍するようになるかもしれません。GoogleのプログラマーはPythonで作業しています。インターネットのほとんどはJavaScriptで動いています。この「note」はRubyで開発されています。

そもそもすでに情報化社会は進み、IT系の仕事に一見関係ない人でも、それらを扱う人やサービスに取り巻かれていきます。ニトリは社員の80%以上にITパスポートの取得を目指しはじめました
なるべく子どもの頃から学習をはじめれば身につきやすく、それだけアドバンテージとなります。

6.ビジュアルプログラミングからテキストプログラミングへの移行にはストレスがかかる

簡単に楽しいゲームの作れるビジュアルプログラミングから、本物のプログラミングであるテキストプログラミングに切り替えるときにはストレスがかかります

私が以前働いた子どもプログラミング教室でも、移行後にギャップを感じてしまい意欲が減退してしまうという子を何人も見ました。

最初にビジュアルプログラミングを行っておけば、プログラミング学習へポジティブになれるというメリットもありますが、移行時のギャップ・落差は必ず感じます。

どうせなら、できるだけ早くテキストプログラミングを学び始めたほうが合理的であると考える人もいると思います。


最後に

基本的にはビジュアルプログラミングから始めるのがよいと思います。

子どもプログラミング教室エドグラでも、ビジュアルプログラミング⇒テキストプログラミングというカリキュラムをオススメしています。同時に個人的には、ビジュアルプログラミングの楽しさに慣れすぎてしまうことは、次の学びへつなげるためにあまりよくないと思っています。

子どもプログラミング教室エドグラでは、テキストプログラミングを段階的に学んでいけるカリキュラムを用意しています。ホームページ、ゲーム、処理プログラム、データ分析AI、アプリケーションなどを作りながら学ぶことができます。子ども用に、考えたり発表したり課題をこなしながら学べるよう工夫されたテキストプログラミングの教材を、教員・プログラマー経験者の講師が長期にわたり丹念に作ってきました。スクラッチすら全て作っています。予期せぬエラーや、難度の高い質問など不測の事態への対応もあるため、おそらくこれからも多くの子どもプログラミング教室では実現しないと思います。

是非一緒にエドグラでプログラミングを学びましょう!


この記事が気に入ったらサポートをしてみませんか?