昨今の小・中学生向けプログラミング教育は、ロボットを用いたロボット型プログラミング学習と、Scratchに代表されるパソコンソフトを用いたソフト型プログラミング学習に大きく分けられます。
小・中学生向けにプログラミングを扱う教室をみると、ロボットを使ってプログラミングを教える「ロボット教室」と、Scratchのようなビジュアルプログラミングで教える「プログラミング教室」の2つに分けられることがわかります。
キットなどのハードを使って学ぶロボット型プログラミング学習と、パソコン上で完結するソフト型プログラミング教室。
今回はそれぞれの特徴について考えてみたいと思います。
ロボットで学ぶ「ロボット型プログラミング学習」
ロボット型プログラミングの特徴
ロボット型プログラミング学習は、モーターやセンサー、LEDなどの電子パーツを使ったロボットを作成し、ロボットの「動きの制御」を通じてプログラミングを学びます。
物理的なキットを用いて学ぶことから、昨今関心の高まっている「モノのインターネット」通称「IoT(Internet of Things)」に通じる教育として注目が集まっています。
物理的なキットで学ぶのでわかりやすく、低年齢から学べるのが特徴です。
ロボットは子どもの好奇心と相性がよく、子どもの興味をひきやすいという点においても優れています。
ロボットを扱う教材の中には必ずしもパソコンを必要としないモノがあるものもあります。スマートフォンやタブレットからロボットに命令を与えたり、電子回路を組み替えるなどしてプログラミングを学びます。
ロボット型プログラミングの代表的なものに、ブロックで世界的に有名なレゴ社のマインドストームEVがあります。
ロボット型プログラミング学習の課題・問題点
ロボット型プログラミング学習は教材やキットが高額なものが多く、初期投資にお金がかかってしまう点がデメリットです。
ロボット教室に入会して学ぶ場合、入会金や教材費などの初期費用が数万円かかってしまうこともあります。
教材によりキットの内容や学び方が大きく異なり、ロボット型プログラミング学習と一言でいっても一貫性に乏しいのが実状です。
「ロボット」であることはロボット型プログラミング学習の弱点でもあります。
キットを用いるロボット型プログラミング学習は、積み木などの物理的なおもちゃで遊ぶ低学年に興味を抱かせやすい反面、物理的なおもちゃよりTVゲームのような遊びを好む高学年〜中学生は興味を示しにくい傾向にあります。
ロボットというハードに依存しているので、ロボットに興味を持てなかったり飽きてしまえば終わり、という側面も。
どんな学習でも子どもの性格や資質に依るところはありますが、ロボット型プログラミング学習は特に性格や資質に左右されやすい傾向があります。
こういった側面をふまえ、ロボットで初歩的なプログラミングを学んだ先にScratchなどのソフト型プログラミング学習を用意する教室も増えています。
Scratchなどの「ソフト型プログラミング学習」とは
ソフト型プログラミング学習の特徴
パソコン上のソフトを使ってプログラミングを学ぶのがソフト型プログラミング学習です。
ロボットを使って学ぶロボット型プログラミング学習との最大の違いは、ゲームやアニメーションなどモニターごしの作品を作りながら学ぶ点です。
小・中学生向けのプログラミング教育には「ビジュアルプログラミング」という「視覚で直感的に扱いやすい言語」が用いられています。
代表的なものに米マサチューセッツ工科大学が開発した「Scratch」というソフトがあり、全世界のプログラミング教育現場で使われていることで有名です。
日本では文部科学省が公開しているプログラミンやVisucuit(ビスケット)というソフトがあります。
ソフト型プログラミング学習は教材費が無料〜安価に抑えられるメリットがあります。
既にパソコンを所有している場合は、そのままプログラミング学習に使うことができるので初期投資が少なくてすみます。
幅広い分野への展開や応用が効きやすいのもソフト型プログラミング学習ならではの特徴です。
ソフト型プログラミングは、他言語間で共通する部分が多く、Scratchが終わったらWeb系の言語、それが終わったら制御系言語、と展開しやすい性質があります。
そもそもロボット型プログラミング学習で行われるロボットの制御には、Scratchなどのビジュアルプログラミング言語で行われる教材が大半を占めます。
ソフト型プログラミング学習は、ロボット型プログラミング学習に比べてよりプログラミングの本質や根本的な部分に近い学習といえます。
ソフト型プログラミング学習の課題・問題点
ソフト型プログラミング学習はパソコンやタブレットなどのデバイスを使うことが大前提です。デバイスを所有していない場合は購入しなければなりません。
ソフトによってはインターネット回線を使いますので、パソコン購入費の他にインターネット接続のための費用もかかります。
プログラミング教室を開校するとなると数台のデバイスを確保する必要があり、初期投資が大きくなってしまう傾向があります。
ソフト型プログラミング学習は専門性が高く、子ども達に教える講師の知識経験が問われます。
子ども向けビジュアルプログラミング言語のレベルであれば、講師の力量に左右されない教育教材もあります(Progra!もそうです!)。しかしビジュアルプログラミング言語の先にある業務レベルで使われるような言語でプログラミングを教えるには、対象言語でのプログラミングに精通した講師が必要となります。
環境さえあれば比較的お金をかけずにはじめられるものの、すべてを一から用意して始めようとするとコストがかかってしまうのがソフト型プログラミング学習のデメリットです。
まとめ
こういった記事は最後に「どちらも一長一短あり〜」と結ばれることが多いのですが、この記事を書いている私個人の意見としては、小・中学生向けのプログラミング教育にはソフト型プログラミング学習を推薦したいと思います。
理由はやはりソフト型プログラミング学習のほうが応用力に優れ、よりプログラミングの本質に近いと考えるからです。
ロボット型プログラミング学習は、子どものとっつきやすさなどに優れているものの、ロボットという枠から抜け出せない可能性があります。
学習するための初期投資の高さは、優れたプログラミング資質を持つ子供にプログラミング教育を届けらずに終わってしまう懸念もあります。
本来は幅広い分野に応用できるはずのプログラミングが、「モノを動かすもの」「ロボットを作るもの」と子ども達にミスリードされる危険性があり、それによる弊害は多いように感じられます。
ハードを使うロボット型プログラミング学習と、パソコン上で完結するソフト型プログラミング学習。
何を重視するかで結論は変わると思いますが、あなたは子どものプログラミング学習としてどちらが適していると思いますか?