プログラミング学習の方法論の一つ、『アンプラグドコンピュータサイエンス』
私が東京コミュニティスクール(https://tokyocs.org)でIT(Information Technology)の時間を担当して、カリキュラムをゼロからつくることになったとき、テクノロジーをつかった学びの「導入」をどのようにするか、すごく迷いました。いろいろな人に相談に乗ってもらいながらカリキュラムをつくっていった時、
「他の学び」や「体験」とつなげること
を中心に据えて、カリキュラムをつくっていくことをおすすめしてくれた先生がいらして、この本を薦めてくれました。
ゲームを通じて、コンピュータの仕組みを体系的に学んでいくことができる、それがこの「アンプラグドコンピュータサイエンス」です。
ニュージーランドで開発されたこのカリキュラムは、日本語版の翻訳サイトもあり、計算機科学を体験的に学ぶことができます。実はこのアンプラグドコンピュータサイエンス、どのような章立てになっているかというと下記のようになっているのです。(上記ウェブサイトより引用)
この中でプログラミング言語はどこに位置されているかというと、第3章「手続きの表現」です。
実際にこのアンプラグドコンピュータサイエンスの中身を子どもたちと学んだ時、プログラミングにたどり着くまでに幾つかのステップが必要な事に気づきました。
それは、
1.プログラミングの前にコンピュータへの理解が必要不可欠
2.コンピュータへの理解のために情報の表現方法を最初に学ぶ必要がある
3.コンピュータへの理解のために機器の使い方を学ぶ必要がある
ということでした。
情報の表現方法
私達の身の回りには情報が溢れています。その情報とは、なかなかとらえどころのない、かたちのない、よくわからないもやもやとした存在です。
コンピュータで処理される情報は、すべてスイッチの「オンとオフ」を意味する0と1の2進数に還元されます。この2進数での表現から、表現の種類が増え、情報も増えていきます。このダイナミズムをアンプラグドコンピュータサイエンスでは最初に体験することができるように「FAXゲーム」や懐かしいゲームの「ピクロス」のようなもので子どもたちと遊びながら学ぶことができます。
このとらえどころのない「情報」を体感して学ぶには、アンプラグドコンピュータサイエンスが最適です。
機器の使い方
そして、機器の使い方に習熟せねばプログラミングを学ぶ入り口に入ることすらできません。キャンプをしている時ナイフを使う時と同じように、電子機器も「正しい使い方」があるはずです。
入力方法もその一つ。「タッチタイピング」は小さいころから慣れれば自然になってくるのですが、おとなになって改めてタッチタイピングを学ぶと大変苦労します。(私は幸いなことに大学生の時点で矯正できましたが、もっと早くから学んでおけば、表現や活用の幅はもっと広かったのではないかと思っています。)
機器の使い方を学ぶには、コンピュータが必須です。
コンピュータはどんな道具なんだろう?
コンピュータはあくまで道具。この道具を使って自分の世界を広げ面白いことをどんどん実践していくことができます。反対に、動画を見ることを否定しているわけではありませんが、多くの子どもたちがYouTube中毒になっていることも事実です。
東京都教員センターのプログラミング教育がすべてアンプラグドであり、「ひどい」と取り沙汰されています。学校側も、デバイスやソフトのベンダー側もそれぞれの考え方があり、活発で建設的な議論になることは、今後のプログラミング教育を良くしていくために必要不可欠でしょう。
「バカもハサミも使いよう」ということわざがあるように、コンピュータがあれば良い学びになる場面と、コンピュータでないほうが良い学びになる場面とを明確に切り分けて、周到に設計せねばならないところです。