僕は『「プログラミングを学ぶ」ではなく「プログラミングで学ぶ」』という説に対して,これまであまり賛成の立場はとってきませんでした.そういうことができるのは否定しないけれども,プログラミング教育をする理由としては弱いというか,反論の余地があることはできるだけ言わないようにという立場です.僕が主張する,プログラミングを学ぶ理由は,コンピュータとは何かを知るためで,それは今まさに進行中の情報革命に主体的に参加するために必須だから,というストーリです.
ところが,最近ビスケットの応用が活発に進んでおり,説得力のある「プログラミングで学ぶ」という例がいろいろとでてきてます.結局のところ,これまでプログラミングで音楽とか国語とか学ぶといっても,プログラミング技術のウェイトが大きすぎて,なかなか本題にたどり着くには遠いなぁということだったのが,ビスケットになってプログラミングが簡単になったおかげで,本題にあっさり迫れてしまった,ということのようです.
ことの発端は,現役の小学校の先生竹林さんが実際にご自身のクラスで使っている例です.
ビスケットで漢字を1画ずつ書きます.書き方は,最初に漢字全体を書いて,そのあとその漢字を下絵にして,1画ずつの部品にします.
その部品をつかって,漢字の書き順通り動くアニメーションを作成します.
このときビスケットの設定に,方眼紙モードを使っているので,部品はぴったり動かないようにメガネを作ることができます.書き順が多い漢字は最後の方は作るのが大変になります.たとえば11画の漢字だったら,最後のメガネは10画から11画に変わるというもので,メガネの左には部品が10個,右には11個入るということですから.ところが作るのが大変だということが欠点ではなかったのです.
このアニメーションを先生が児童に見せるために作るのではありません.児童がそれぞれ自分のタブレット上で作るのです.漢字を覚えるために,漢字の書き取りとして10回ずつノートに書いたりしますが,このアニメーション制作はその代わりになるのではないか,ということだそうです.何度も部品を組み合わせて漢字を1画ずつ増えるように作ることは,書き順をかなり意識させることができます.作り終わった後の達成感も高いですし(ノートへの書き取りだと漢字が埋まっているだけですよね).
もう一つの例は,ローマ字の学習です.画面上には色々なアルファベットが動いています.そこに「A」と「K」がぶつかったら「か」に変わる,というようなメガネを作ってアルファベットがひらがなに変わって行くプログラムを作ります.これもビスケットが使えれば簡単に作れる部類になりますが,同様に先生が作るのではなく,児童が自分で考えて作るのが重要です.作る過程でローマ字のことを意識しなければなりませんし,できたものを動かしたときもずっと2つの文字がどうなるかを考えてます.
いままで無意味に暗記しなければならなかったものは,紙に何度も書いて頭に入れていました.ところがプログラミングができるようになって,その動きをプログラムで作るという行為そのものが暗記を助けるかもしれない.これから,本当に紙に書くよりも良い成績になるのかは,きちんと調査しなければなりませんが.
これはいろいろと応用がききますね.次は僕が考えた例です.
あらかじめ,いくつかの絵と,ひらがなの部品を用意します.
それらを使って,触ると変わる,というメガネを児童に作ってもらうのです.丁度ひらがなを覚えはじめたときがよいでしょう.
このプログラムはすぐに作れて,実際に遊ぶことができますから,児童の興味をひきつけやすいでしょう.先生も数分で課題を用意することができますし,児童も空き時間くらいで作れて,さらに時間が余れば簡単にオリジナルの文字と絵を追加することもできます.
足し算や掛け算の九九などにも応用できそうですね.