意図したことが実現されていれば、それはプログラミング的思考を身につけている
こんにちは、教室長の中村です。
最近、徐々に涼しくなり、長袖を着る機会が多くなりました。
皆様の体調はいかがでしょうか?
私はおかげさまで、元気に授業をしております。
本日は、教室であったちょっとした話から、プログラミング教育について考えていきたいと思います。
ミッションをクリアする方法は無限大
プログラミングキッズの小学生コース(ベーシック・アドバンス)では、毎回の授業でEV3というロボットを使って、ミッションを行っています。マス目のコースを使って、毎回異なる課題に子供たちがチャレンジをします。
先日、ある授業で、スタートのマスからゴールのマスに移動するというミッションがありました。その時のコースは、5×4のマス目のあるコースで、スタートから、前、前、右、前と移動すればゴールにたどり着く簡単なものでした。
途中、障害物もなく、通らないといけない道もありませんでした。(※下図参照 S→スタート G→ゴール)
ある生徒が、最初に前に進ませました。
安心して見ていると、急に右に回り始めました。
思わず間違えと言いそうになりましたが、ぐっとこらえてそのまま見ていました。
そうすると、前、後ろ、左、前、右、前と進み、見事ゴールしました。(※下図参照)
最短ルートではないのですが、スタートのマスからゴールのマスに移動するミッションはクリアしていました。
しかし、どうしてわざわざ回り道をしたのか気になって、子供に聞いてみると、一言こういいました。
「先生をビックリさせたかったからだよ。」
この答えを聞いて、はっとさせられました。
プログラミング的思考は自分の意図する一連の活動を実現すること
ここで少し話は脱線して、プログラミング教育の話にうつりたいと思います。
2020年から小学校でプログラミング教育が必修化されるという話はご存知だと思います。
その中では、プログラマーを育てるとは言われておらず、プログラミング的思考を育てると言われています。
そして、文部科学省で新学習指導要領と同時に公示された「学習指導要領解説」に、プログラミング的思考は次のように定義されています。
「自分が意図する一連の活動を実現するために、どのような動きの組合わせが必要であり、一つ一つの動きに対応した記号をどのように組み合わせたらいいのか、記号の組合わせをどのように改善していけば、より意図した活動に近づくのか、ということを論理的に考えていく力」
そう、この子にとって、意図した活動というのは、「先生をビックリさせる」だったのです。
そして、先生は見事に驚いたため、意図した活動は成功したのでした。
こういったミッションを作ると、いかに最短ルートでブロックを少なく使うかと考えてしまいますが、それだけが答えではないんだなと気づかされました。
たとえ、最短ルートでなくても、ブロックをたくさん使っていたとしても、本人が意図したことが実現されていれば、それはプログラミング的思考を身につけているのだなと感心しました。
本当に子供たちは気付きをたくさん与えてくれるので、素晴らしいですね。
今週の授業も楽しみです。
それでは、本日はここまでとなります。