POSENGINEER

Poser(見せかけ) + Enginieer(エンジニア)ということで、にわかなITブログです。ITのことを全く知らない知人に自慢できるようなネタを発信します。

子供ためのプログラミング(Hour of Code他)

スポンサードリンク

2020年から、小学校でのプログラミングの必修化が始まりますが、 その影響もあってか、子供のためのプログラミング教室や オンラインでの学習教材を多く目にするようになりました。

自分にも小学生の子供がおりまして、これを機会に

  • Hour of code
  • レゴ®エデュケーション WeDo
  • why プログラミング(テレビ閲覧)

を体験しましたので、その感想を書きます。

Hour of Code

hourofcode.com

【Hour of Code とは】 「Hour of Code」を主唱するアメリカの非営利活動法人「Code.org」は「全ての児童・生徒がコンピュータサイエンスを学ぶ機会を得る」ことをミッションに掲げて世界的にプログラミング教育の推進活動を行っており、アメリカのオバマ大統領やFacebook創業者であるマーク・ザッカーバーグ氏、マイクロソフト創業者のビル・ゲイツ氏など、多数の著名人がこの活動に賛同しています。2013年の設立以降、毎年12月に「コンピュータサイエンス教育週間」に「Hour of Code」を開催しており、これまでに34言語に翻訳され、180カ国以上でプログラミング教育のイベントが開催され、2014年までに全世界で6,000万人の児童・生徒が参加しています。特に米国では学校の授業にも取り入れられ、90,000校が授業に採用し、400万人の生徒児童に提供されています。

日本の場合、企業や一般社団法人が協力して行うのが主流のようです。 自分も、企業が主催のイベントに参加しました。 授業は、最初にプログラミングとHour of Codeに関する子供向けの説明があって その後はひたすらコーディングです。

コーディング自体は、Hour of Codeのサイトにアクセスすれば無料で行えますので 家に帰っても引き続き学習可能という仕組みです。

Scratchでのプログラミングを行いますが、 有名なキャラクターが教材として用意されておりますので ほどんどの子は、何かしら好きな教材を見つけることができるのではないかと思います。 ただし、教材ごとに難易度が変わってきます。

自分の子が実際に体験したのは、アングリーバード。 これは、条件分岐、繰り返しと利用して、アングリーバードをゴールまで移動させるというゲームです。

f:id:shuheilocale:20160523112329p:plain

実際に参加してみて、子供が難しいと感じた点を挙げます。

基本的な操作

Scratchは子供でも扱いやすいように、直感的なGUIとなっておりますが、 それでもやはり、最初は意味がわかっていませんでした。 「ブロックをつなげると、処理がつながる」という感覚が最初はなかったので、 言われるがまま、と言った具合です。 とは言っても、子供の適応性は素晴らしく、我が子含めて殆どの子供たちは、 数十分も触っていればすっかり慣れてしまっていました。

繰り返し処理

ブロック(≒コード量)は少ないほうが評価されるのですが、 例えば、右に5歩進みたい場合、

「右向く」
「進む」
「進む」
「進む」
「進む」
「進む」

としてしまいます。繰り返し(for)が使えるんだよ、と教えてもです。 そこで実際に、

「右向く」
「次を5回繰り返す」
  └「進む」

というブロックの組み合わせを作ってあげて、実行してみて上手く行った時、子供は「すごい!」と興奮していました。 なぜうまく行ったのか丁寧に教えてあげると、子供は魔法でも手に入れたかのように繰り返しを使い倒すようになります(そして溺れます)。

俯瞰的な向き

右と左がわからない、そんな子供が多くいました。 右手と左手を知らなければまずはそこから教える必要がありますが、 幸い自分の子はそれを知っていたので次のステップでした。 現実世界で右に回ることは容易です。 ただし、2次元のキャラクターを空から見下ろした場合、そのキャラクターを右や左に自在に向かせることは 子供にとってはかなり難しいようです。

これはカーナビにも同じような問題が有りますね。 ヘディングアップは常に上を向くから、次が右か左かはすぐに判断できますが、 ノースアップの場合、自分が南を向いているときに左と右は逆になります。 こういう俯瞰的な方向感覚というのは、大人でさえとっさの判断では間違うことも有るのですから、 当然、訓練されていない子供にはまだ難しいようです。

集中力

そして最大の課題は、集中力が持たないこと。 90分位の体験でしたが、多くの子供は飽きていました。 頭を使いすぎて疲れてるんだろうとは思いますが、普段授業でも90分というのは大学の講義くらいなわけで、 まあ当然だなと思います。そして、もうプログラミングは嫌だ。となります。 ただ、もちろんプログラミングにハマる子も居て、ぶっ通しで90分やりきった子も居ました。 私の子は、飽きてしまいました。が、家に帰るとプログラミングしたい、と言ってきました。 どうやら中毒性が有るようです。

こんな感じで、普段の学校の授業では味わうことができない体験ですので、良い刺激に生ると思います。 日本の企業が開催する場合は、こちらを参考にしてみてください。


レゴ®エデュケーション WeDo

education.lego.com

生涯にわたる学習の基礎は小学校で育まれます。 レゴエデュケーションがお届けする小学校向け教材は、子供たちに馴染みのあるブロックを用い、手を使って組み立てるという活動を通じて、子供たちの学習意欲を引き出します。  子供たちの好奇心を刺激し、創造力や問題解決力など、基礎学力にとって大切な力を楽しみながら育めるように開発されています。 現在教育の現場では、21世紀型スキルの習得が求められています。 レゴエデュケーションでは、子供たちが世界を舞台に活躍できるよう、国語、算数、理科、社会、外国語の教科で子供たちのやる気スイッチを『オン』にできるような魅力的な教材を用意しています。カリキュラムは、社会に出たときに発生する問題に適切に対処する方法を実践的に学べるようにデザインされています。

これはお金を払って講師の授業を受けるスタイルなんですが、 無料体験がやっていたので行ってきました。

レゴの場合、プログラミングだけではなく、実際のものを動かすという意味では子供用IoT教材として良いかもしれません。 実際にパーツは、

  • モーター
  • チルトセンサ
  • モーションセンサ

等のがあり、それらのパーツとレゴブロックの組み合わせによって様々な作品が作れます。

http://www.rika.com/wp-content/uploads/2011/01/photo_wedo01.jpg

普通の電子工作なら、モーターを正転逆転、速度制御したいなら、Hブリッジが実装されているモータードライバが必要ですし、 例えばArduinoを使って制御するにしても、トランジスタを利用して別電源を確保したりと、割りと手間がかかってしまいます。 この教材を使えば、自分が好きな様にレゴを組み合わせて、モータはUSB端子を繋げればOKと、 めんどくさいところは一切触れなくても作れられる点が素晴らしいです。

プログラミングも、Scratchに似た感じでのブロック型のGUI。こういうデザインに落ち着きつつ有るんでしょうか。

f:id:shuheilocale:20160523112341p:plain

このWeDoは、スクールに通わないと買えません、と言われたのですが、 Amazonで普通に売っていました。

通わせる時間やお金がない方は、↑を検討してみてください。


why!?プログラミング

www.nhk.or.jp

厚切りジェイソンがアルゴリズムやプログラミングについてわかりやすく説明しているので、 子供も楽しみながら見ていました。 プログラミングにはHour of Codeと同様、Scratchが使用されておりますので、 「あ!知ってる!」と食いつきも良かったです。 また、すごいアプリケーションを作った小中学生の紹介もありましたので、 自分の子は、「子供でもこんなの作れるのか、、、」と言った表情で番組を見ていました。


まとめ

子供に「仕事でプログラミングをしているんだよ」と、伝えると 「会社で遊んでるの?」と笑われてしまいました。

プログラミング=遊び、と捉えているようです。 確かにそうかもしれません。 ゾーンに入った時は、楽しいという感情が一番近いと思いますで、遊びと言われても否定はできないかも。。。 まあ遊びでお金がもらえて生活ができるなら、こんなにいいことは無いはず。

先に挙げた3つのサービス&番組は、いかに子供に興味を持ってもらおうか、真剣に考えてるんだなあ感心してしまいます。 ただ、一点だけ、足りないとすれば、協力してモノを作る点でしょうか。

3つとも、モクモクとした作業なんですよね、一緒に作るということは無く、1人が一つの作品を作る。 大人が教える、という上下の関係はあるにせよ、共同で助け合いながら作るという横の関係は生まれにくいようです。 当然同じ空間にお友達がいれば、お友達と見せ合いながらプログラミングをしていますが、 それは協力じゃなくて競争ですね。 「どこまで進んだ」、「自分のほうがすごい」、「負けたくない」。 まあ、そういう気持ちも大切なのかもしれませんけど、実際のプロダクトで大切なのは利己心ではなく利他心です。

仲間と協力して、貢献感に浸りながら作業をする、ということも教えてもらえたら幸せですね。

ともあれ、プログラミングは論理的思考やものづくりの楽しさを教える良いきっかけを与えてくれます。 早いうちに触れされておいて損は無いはず。

家でする場合、Hour of Codeをさせるも良し、 スクールに通わせてレゴをさせるも良し、 さらに最近はプログラミングをテーマとした知育本も出ていますので、 寝る前に本を読んで浸透させるも良し。

ルビィのぼうけん こんにちは!  プログラミング

ルビィのぼうけん こんにちは! プログラミング

どうぞ、より良いプログラミング教育ライフを。