2016.04.25
さあはじめよう! 子どもたちにコードを教えるための教材
子どもにコーディングを教えるときには、大人に教えるときは考えもつかないような障害に出くわす。子どもは現実の人生経験に乏しいため、たくさんの類推が子どもたち頭の中をよぎる。抽象的な思考に対処するのは大変なことだ。だから、より具体的に伝えることが必要になる。また、子どもは大変に気が短い。とくにグループになるとその傾向が強まる。即座に十分な報酬が得られなければ、彼らは退屈してボンヤリしてしまう。そうなれば、世界中のどんな講義も彼らの頭の中に何ひとつ有益なものを残さない。
子どもにプログラミングを教える際には、ゴールとなるのは、彼らを励まし、毎日彼らが使っているシステムについて理解を深めさせることだ。そして、今だけでなく人生においてずっと役に立つ、コンピューターに関するスキルを身につけたことを自覚させることだ。みんながソフトウェア開発者として身を立てたいと思っているわけではない。ソフト開発の仕事がいいか悪いかではなく、今やプログラミングはいろいろな分野に浸透しているのだ。
自分の教材を探す
コーディングを教えるためのテキストを探していたとき、私は、子どもが飽きずに学べるよう、彼らの目線で、やさしく語りかけてくれるものを求めていた。さらに、ほんの初歩の段階からでも、すぐに手をつけられる実践プロジェクトが含まれているものだ。そして私が選んだのが、Jason Briggsの「Python for Kids」だった(最初は「Snake Wrangling for Kids」というタイトルだった)。その後、私のプログラミング初心者の友人数名と、インターネットで見られる大人向けのコード学習教材の不満を話し合ったのだが、私は彼らにこの本を渡した。今でもこの本は私のお勧めだ。
以下のウェブサイトも、これからプログラミングを学びたいという人にお勧めできる。
1. code.org
2. Khan Academy
3. codecademy
4. O’Reilly
プロジェクトを選ぶ
まだ正しい判断ができるだけの経験を積んでいない人にとって、プログラミングには圧倒されるほどの多くの選択肢がある。そこで、子どもたちにはプロジェクトを与えて、選択肢を狭くしてやることが大切だ。プロジェクトを行えば、子どもたちがすぐに飽きてしまうことも予防できる。
どのOSのディストリビューションを使ったらよいか、どんな言語を学んだらよいかといった質問に答えるためにも、Raspberry Piなどのプラットフォームを決めるとよい。プラットフォームにはそれに合った言語があり、困ったときに助けてくれる巨大なコミュニティもあるからだ。ボードのなかには、それを使うための専用のOSが用意されているものもある。そうしたボードの場合、通常は丁寧な資料が整っている。問題に突き当たったときも、サポートが丁寧だ。もし子どもたちが、いわゆる「フロントエンド言語」を気に入ったなら、その言語に対応したボードを選ぶとよい。
NodeBotsは、JavaScriptロボットを作るためのミートアップだ。まだ適当なプロジェクトが見つかっていないなら、ここはプロジェクト探しに最適な場所だ。
続けよう
プログラミング言語をひとつ学んだら、別の言語はもっと楽に学ぶことができる。子どもたちも、iOSやAndroidのプログラミング言語を第一言語にして、アプリを作ることができる。何をするにせよ、まずは最初のプロジェクを終えたあともプログラミングを続けさせることが重要だ。それにより、さらに経験を積み、すでに学んだことをもとにスキルを磨くことができる。これは彼らの就職を目的としたものではない。子どもたちの世界を、毎日使っているものを見る目を変えることを目的としている。
[原文]