プログラミングは「将来の強み」になる
会場には、小学校の教員だけでなく、民間のプログラミング教室の先生など教育関係者30名ほどが参加し、ヤフーの現役のエンジニアやデザイナー数名がチューターとして参加者をサポートした。
最初に、ヤフーがCSR活動の一環として行っているプログラミング体験教室「Hack Kids」の紹介が行われた。「日本全国の子どもたちにプログラミングの楽しさを感じてもらい、将来の選択肢を広げるためのきっかけを提供する」ことを目的としており、2017年から日本各地で32回にわたって開催されている。「子どものうちからプログラミングに対しての抵抗感をなくしておくことは、将来に向けてひとつの強みになる。さらに、物事を順序立てて考えられるようになることは、日常生活や学習でも役立つ」と、プログラミング学習の意義を解説した。
続いて「Hack Kids」での指導例を体験するため、実際の教室と同様の指導が行われた。今回、筆者も取材を行いつつ、一参加者として指導を受けてみた。
「Hack Kids」では、毎回始めるにあたって3つの約束を設けている。その約束とは、「仲良くしよう」「みんなで協力しよう」「こまめに休もう」の3項目だ。プログラミングを楽しんで、明るく楽しい雰囲気にするために、参加者同士が仲良くすること。そして、プログラミングではレビューなど他の人に見てもらうことが多く、また他人の意見を聞くことで問題が解決することも多いので、仲間の協力が不可欠だ。さらに、「こまめに休む」ことで、画面を見続けて緊張からくる疲れを軽減させる意味がある。
アンプラグドプログラミングで「プログラミング的思考」を学ぶ
次に行ったのが、自分の体を使ってプログラミングを実行する体験だ。これは、パソコンやタブレットなどを使わないプログラミング学習のひとつで、「アンプラグドプログラミング」と呼ばれている。「手をたたく」「ジャンプする」といった命令が組み合わさったプログラムの順番通りに、参加者は実際に体を動かしていく。
これまでにもたくさんのアンプラグドプログラミングを体験してきたが、今回興味深かったのが、プログラムに「分岐」や「繰り返し」が入っており、かなり複雑な動きを要求されたことだ。アンプラグドプログラミングは、幼児や小学校低学年向けにプログラミングの導入として取り入れられることが多く、プログラムの内容も簡単なものがほとんどで、あまり難しいプログラムを体験することがなかった。しかし、今回は「手をたたく」を3回繰り返したあと、「自分が●●ならねこの声を出す」といったプログラムもあり、よく考えて行わないとうっかり間違えてしまうこともあった。
さらに、後半になると、わざと間違えたプログラム(バグ)も紛れ込んでいた。実は、この間違っているプログラムにはちゃんと意味があり、これらを「バグ」として説明し、「デバッグ」を教えるために用意されていたのだ。
初心者の子どもたちがいきなりプログラミングを行うことが難しい場合、アンプラグドプログラミングで「プログラミング的思考」を学び、また、体を動かすことでプログラミングは楽しいものだと印象付けることができる。実際に「Hack Kids」では、このアクティビティを通じて、参加した子ども同士が仲良くなる効果もあったという。
初めてScratchに触れる小学生を想定し、「プログラミングとは何か」といった解説も行われた。人間とコンピューターの違いの例として、「ロボットやコンピューターはきちんと命令しないと、目的通り動かない」ことを説明し、プログラミングの必要性を話した。