(1)私の実体験
私自身、初めてプログラミングしたのは、中学校1年生の時でした。
今考えると、小学校6年生の頃だったら、十分プログラミングが出来たと思います。もちろん簡単なプログラムですが。
当時はパソコン自体が、一般家庭にはほとんど普及していませんでした。パソコンが家にある人は、クラスに1人いるかどうかの時代です。
プログラミングには、小学校6年生の頃から興味があったのですが、始めるチャンスが無かったのです。
私もパソコンを持っていなかったので、持っている友人の家で、一緒に何時間もプログラミングをさせてもらった記憶があります。懐かしい思い出です。
中学校2年生の頃になると、親にお願いして、学校の成績アップを条件に、やっと自分のパソコンを買ってもらいました。
その頃は、パソコン関連の本や雑誌を片手に、独学でプログラミングをしていました。
パソコンの記憶媒体が、まだカセットテープの時代です。パソコン雑誌の付録もレコードでした。
雑誌に掲載されているプログラムは、レコードに音声で記録されていました。
レコードの「ピー、ガー」という音声を、カセットテープにダビングすると、パソコンでゲームができる仕組みでした。
また、雑誌に掲載されているソースコードを、指一本で入力していたのを思い出します。
この時の独学の影響で、キー入力は長い間、自己流でした。まぁ、それなりに速かったのですが。
タッチタイピングの必要性を実感して、習得したのは30代になってからです。
もし私が子供の頃に、タッチタイピングやプログラミングを、ちゃんと教えてくれる大人が近くにいたら、もっと上達が早かったと思います。
したがって、「小学生でもプログラミングが出来るのではないか?」ということは、自分自身の体験からも感じていました。
私の場合は、本格的にプログラミングの世界に入るのは、30歳を過ぎてからでしたが、中学生の頃のプログラミングの経験が活きています。
(2)小学生にパソコンを教えた経験
メルマガにも書いたことがありますが、私は延べ500人以上の小学生に、パソコンを教えた経験があります。
また、中学生、高校卒、大卒、社会人にプログラミングを教えた経験もあります。
その経験からも、小学校6年生なら、十分プログラミングが出来ると考えています。
以下は2001年頃の話なので、データが古いですが、参考までに。今はもっと進んでいるかもしれません。
・小学校1年生 ゲームしながらタイピングができる。
・小学校2年生 簡単な文章が入力できる。ワードや一太郎で葉書などが作れる。
・小学校3年生 パワーポイントで資料が作れる。発表できる生徒もいる。
・小学校4年生 パワーポイントやインターネットが自由に使える。
・小学校5年生 インターネットで調べ物をしたり、まとめたりできる。
・小学校6年生 ホームページを作成できる。動画を編集できる生徒もいる。
私は複数の小学校で教えていたのですが、同じ学年だと、大体似たようなレベルでした。
担任の先生がパソコンが得意だと、やはり生徒のレベルも高いですね。
小学生と話す機会も多かったのですが、プログラミングに興味を持っている生徒もいました。
中学生にはプログラミングを教えましたが、これは十分可能でした。
高校生になると、大人と同じ内容で教えても大丈夫です。むしろ大人より教えやすいです。
高校生は柔軟な思考ができるので、大人より上達が早いのです。
(3)インド式教育
少し前に、フジテレビの「エチカの鏡」という番組で、「インド式教育」を取り上げていました。
この番組では、日本国内にある、インドのインターナショナルスクールを紹介していました。
在日インド人の子供達のための学校ですが、最近は日本人の子供も多いようです。
学校の教育方法に特徴があり、わざわざインターナショナルスクールに子供を通わせる親も多いのだとか。
さすがにIT大国のインドだけあって、IT教育には、子供の頃から力を入れています。
小学校低学年からパソコンを使い始め、なんと小学校の高学年(12歳)になると、プログラミングが出来るようになるそうです。
ちゃんと教えれば、小学生でもプログラミングが出来るという証拠です。
日本の小学校でも、パワーポイントやワード、一太郎など、既存のソフトウェアなら使える生徒は多いです。
ホームページが作れたり、動画を編集できる小学生もかなりいます。
でも自分でプログラムを書き、何かを作り出すところまでは、まだまだ出来ません。
実はこの小学生の時の差が、将来のITスキルに大きく影響しています。
自分が必要だと思ったシステムを自分で作り、さらにカスタマイズ(改良)も出きるというのは、もの凄いことなのです。
単にパソコンが使えるのと、プログラミングまで出来るのとでは、天地ほど違いがあります。
【まとめ】
インターナショナルスクールでは、授業は英語です。
インド式の教育が、プログラミングに有利なのは、英語が話せることが大きいと思います。
プログラミング言語の制御構造、命令、変数、プロパティなどは、英語が基本だからです。
またインド人は、算数や数学に強く、論理的な思考力が鍛えられている点でも有利です。
論理的とは、物事をきちんと筋道を立てて考えることです。
プログラミングでは、数学的な知識が必要なことがあります。
日本でも中学生になると、数学で座標や方程式を習います。計算の優先順位や不等号も理解できます。
また、中学生なら基本的な英単語も知っているので、まったく問題ありません。
小学生にプログラミングを教えるとしたら、この辺が難しいかもしれません。
しかし、プログラミングは四則演算が基本だし、必要な数学の知識も絞れるので、教えることは可能だと思います。
また、最近は小学校でも英語の授業があります。ネイティブの先生が、英会話を教えることもあります。
だから今の子供達は、私達大人の世代ほど、英語やアルファベットに対するアレルギーは、無いと思います。
プログラミングでよく使っている英単語程度なら、簡単に覚えられます。
それに「ひまわり」のような日本語プログラミング言語もあるので、英語が得意でなくても大丈夫です。
ひまわりは、日本人の母国語である日本語で、プログラミングすることができます。アルファベットは使わなくてもOKです。
プログラミング経験者は、日本語で書くと逆に読みにくかったりするのですが、小学生やプログラミング初心者には、日本語のほうが易しいと思います。
話は変わりますが、プログラミングを学ぶだけなら、古いパソコンでも十分です。
最近はWindows98やMe時代のパソコンの処分に困っている人も多いです。周囲に聞いてみると、意外とタダでもらえることがあります。
私の子供時代は、パソコンが高価なものだったので、それと較べると今は恵まれています。
統合開発環境などの開発ツールも使いやすくなったし、プログラミングに関する情報は、インターネット上に無限にあります。
もしあなたにお子さんがいたり、あなたが教育関係者なら、小学生や中学生にプログラミングを教えてみることをオススメします。
小さい頃からプログラミングに親しんでおくことは、これからの情報社会では大事なことです。
国際的な競争力のある大人に育てるためにも、欠かすことができないスキルの一つです。
プログラミングを学ぶことで、論理的な思考力も育ちます。
せめて子供の頃に「タッチタイピング」だけは習得していると、将来きっと役立ちます。
本人がプログラミングを本気で学ぼうと思った時に、効率的に学べるからです。
ソースコードを入力するのは時間がかかるので、タッチタイピングができると、プログラミングの学習時間が短くて済みます。
それに一般的な事務職でも、タッチタイピングが出来る人と、出来ない人では、パソコンを使った仕事の生産性が、全く違います。
ピアノやソロバンのように、プログラミングも、ぜひ子供の頃に身に付けさせてあげてください。
せめてタッチタイピングだけでも。
オリジナルの関数を作らずに、単純に上から下に流れるようなプログラムなら、小学生でも十分理解できます。
小学生にプログラミングを教える時は、興味を持ってもらうため、「何を作るか」が大事だと思います。
ゲームだと確実に興味を持ちますが、数学的な知識が必要なため、少し難しいです。
でも、あまり単純なものでは、興味が続きません。
その兼ね合いが難しいところです。
プログラミングに興味のある教育関係者は、メールをいただければ、簡単なアドバイスくらいならできます。