Kamihira_log at 10636

みえないものを、みる視点。

子供向けプログラミング教育に思う

f:id:peru:20170221221602j:plain

次期学習指導要領(2020年開始)では、小学校からプログラミング教育が必須化するそうで、僕の所属する情報学部でもいろんな方向から議論が活発に交わされている。早いなと思われるかも知れないが、先進国はどこもすでに積極的に進めていて日本はかなり対応が遅れている状態と言っていい。僕自身もこの問題については関心があるので、子供と一緒に勉強会を始めた。

目的は3つあって、1)子供の学習、2)それの参与観察、3)僕自身の学習である。今半年ほど経過して、Viscuit→Scratch lite → Scratch と進んできたところ。Scratch lite がもの足りなくなってきたようなので(インタラクティブなものをつくるには機能に限りがある)、年明けぐらいに小学生向けのScratchに変えた。Raspberry Piとも繋げてみようかとおもったが、まだちょっと無理があるといった感じの習熟度合いだ。

 

というわけで、進めてきた様子と感想を。

基本的なルールはそれほど難しくないので、隣に使いこなしている人がいれば、見よう見まねでおなじように組み合わせて作っていくことは、だいたい出来る。XとかYとかマイナスとか演算とか難しい概念はよくわかってないので代わりに入力してあげたりもする必要はあっても、自分で変えて遊んだりしながら、それなりに自力で命令を組みあせて書いていくことはできてしまう。

しかしながら、お手本通りのことができても「そこから自分でどんなことをするか」を構想していくことの方がずっと難しいようである。操作を覚えるより目的をつくるほうが難しいというのは、大学生の場合(うちの学部の1年生向けの演習)でも同じ傾向がある。工作のときには、自分で「こういうものをつくりたい」という発想はわりと出来ているので、経験が浅いうちはコンピュータにやらせることのイメージが繋がりにくいのかも知れない。

 

そういうわけで、半年経験してみて、こどもたちにプログラミングを教えるという試みは、このままでは結構悲惨なことになってしまうんじゃないかな、と心配がわき上がってきて仕方がない。

 

1) うちは情報学部だし、それなりに覚悟して入って来ている学生が多くて学部でもかなり教員リソース割いてプログラミング教育に力いれているけど、それでも半分ぐらいは挫折してしまう。全ての小学校で必須にしていくというのは、どういう到達目標を設定するのだろう。まさかとは思うが、参考の問題をもとにいくつか「書いてみる」ことや「書けるようになる」をゴールにするのだろうか。

 

2) ゲーム開発や電子工作、ものづくりなど、心からトライ&エラーを楽しむこととセットであつかうならば、大きな可能性があると思う。ただ、それは、学習者がそれぞれの個別の関心の方向に向かっていくことや、失敗や挑戦を奨励していく必要がある。高度に発達した学びは、遊びと見分けが付かない。ワークショップなら出来ると思うが、一斉学習という環境でどこまで実施できるのだろうか。

 

3) そして、教材はおそらく伝統的なコンピュータサイエンス系の先生方がつくるのだろう。そうだとすると、そこでの学習は、論理的に考えることを重視する気がする。これに対してはviscuit開発者の原田さんによる反論がたいへん興味深かった。

devroom.viscuit.com

 なにが嫌かというと,動かす前にじっと考えて正解を探す,という行為はまったくプログラミングの本質ではないにも関わらず,そのパズルを解く教育をすることがプログラミング教育だと思われてしまっているということです.そんなしょぼいレベルはコンピュータに任せて,人間はもっと上のレベル,コンピュータに何をやらせるか,を考えられるようにするべきなのです.

一部の人は反発するだろうけれども、重要な指摘だと思う。挫折しそうなこどもたちも、動かしながら理解できるものであれば、学びの成果は全く違うのではないか。

 

4) 最後に、もっとも大きな問題は、今の小学校教員はいろんな雑務で多忙すぎて、プログラミングや情報表現を新しく学ぶとしても時間的な余裕があるわけじゃないということ。2020年までは、もうすぐだ。

 

f:id:peru:20170221223648j:plain

今年の僕の研究室のOさんが開発した、プログラミング初学者向けボードゲーム。これもパズル的な思考回路の枠内に収まる学習ではあるのだけど、問題を仲間達と議論しながら、協調的に考えることで考え方に慣れていく、ということを狙っている。