天才少年発見 #mtm07

MTM07*1に行ってきました。
相変わらずの人出の中をぶらぶら歩いてきたのですが、昨年同様たまにすさまじい展示にぶつかります。今回刺激を受けたのは

などです。
Studio Nandはサイト未整備ですね。もったいない。写真撮ってないので紹介できないのですが、フォームファクタを統一した小型の組み込み基板を多数展示していました。実装はしておらず、好きなように使えます。おもしろいのは、多くの基板にUSB/Serialの変換チップのパターンがあることで、CPLDだろうが、舞い込んだどうが全部シリアルが出てきます。また、同じ考えのQFPボードは、複数種の脚の数に対応でき、おまけに裏面は異ピッチに対応する細かです。これ、マイコン組み込んで同じフォームファクタTOPPERS/ASP基板を展示するとかしたらおもしろいかも。

子供にプログラミングを教える

さて、実は一番度肝を津抜かれたのが「こどもプログラミングサークル"Scratch"」です。一通り会場を見終わって、後輩を待っていたときでした。Macの上のシンボリックなプログラミング環境をぼーっと見ていました。どうやら子供向けのプログラミング環境で、書いたプログラムの実行結果を右のパネルに動きとして表示できるようです。この手の「環境」はパパートのマイクロ・ワールドやロゴの研究から始まり、あちこちで行われたはずです。そのひとつだろうと思って見ていました。
「これは簡単にプログラムを作ることができます」
と、展示のある机をはさんでブースの中から声をかけてきたのは、どう見ても小学生の男の子でした。子供の年齢はわかりにくいのですが、小学校4年生から6年生くらいでしょうか。
腰を落ち着けて聞く姿勢を決めた私に、たどたどしい丁寧語混じりながら落ち着いた調子で彼は説明を始めます。ふむふむと聞く内に、私は段々驚きを隠すのが難しくなってきました。
説明がうまいのです。並べて表示してあるプログラムと、公転中の天体の関係、公転をどう表現するか、自転をどう表現するか、月の公転はどうするか、それらを書き換えるとどうなるか、目の前できちんとデモして見せてくれます。そして、そのシステムをWEBと接続することで、自分の作品を公開できること、他人の作品を持ってきて改良できることなどを説明してくれます。
Macでしか動かないのか聞いたところ、すぐ隣のPCを示して「これでも動きます」。うむ、Windowsでも動くようです。
そして、極めつけ。一通り目の前のデモの説明が終わったあと、自分たちのブースの中の展示を示して「あちらでは…こちらでは…」と、説明してくれました。
ぶったまげましたよ。昨年のMTM06を紹介したときに、「説明に工夫をしたほうがいい」というコメントを付けましたが、今年もかなりのブースが黙って座っているだけ、仲間内でしゃべっているだけです。そう言った中にあって見知らぬ大人に堂々と説明し、相手の理解レベルを確認し、あまつさえ自ブースの紹介までするとは。
子供にプログラミングを教える事の意義については、発見的学習仮説なんかが後ろにあって云々という話は知っています。知っている上で私は否定的でしたが、目の前の男の子は衝撃的でした。このサークルに参加してPC触って、大人相手に堂々とデモをやれるようになっているんですから。なんだか色々考えてしまいました。
ところで、Scratchは、Squeak上に開発されたシステムで、実行だけならJavaFlashでも可能だそうです。

補足

ツイッターで数件リツイートされているので補足しておきます。タイトルは釣りです。もちろん、説明してくれた男の子の能力の高さには疑問の余地はありません。しかし、この件で本当に注目すべきは、「こどもプログラミングサークル'Scratch'」が子供たちに与えている体験です。
「子供にプログラムを教える意味はあるのか」という疑問に対して、それを将来の技術者の養成ではなく、「学習方法の獲得機会である」と説明するのがうろ覚えながらパパートの説いたことだったように思います。このサークルがどのような方針なのか私には知るよしもありませんが、指導者である大人たちが、子供たちに「プログラミングの仕方だけ教えればいい」と考えているわけではないことはよくわかりました。彼らはMTMに子供たちをつれてきて、そこで、知らない人に技術や活動の説明をするという経験を積ませています*2
もちろん、そのような体験はコンピュータの専売特許ではありません。私としては会場で子供たちが大人に糸巻き戦車だなの紙飛行機だのの解説をする場面があってもよい気はしています。
ただ、今回のMTMでこのサークルが子供たちに与えているチャンスと、それを有効に利用して堂々と場に臨んでいる少年がいたことは強く印象に残りました。

*1:Make Tokyo Meeting 07

*2:余話だが、途中「Scratchというのはサークル名で」と説明した男の子に、すかさず近くにいた大人から「サークル名じゃないよ」と訂正が入った。プログラミング環境だと訂正したかったのだろう。しかし、男の子は落ち着いて「ここに書いてる」とのぼりを指し示した。このやり取りだけで、サークル内で普段指導者たちが子供たちに接している態度がわかる。根気よく対等に接しているのだろう。たやすいことじゃないと思う

/* -----codeの行番号----- */