2015.12.08
1時間のMinecraftで子どもたちにプログラミングを教えよう(Hour of Codeを楽しむリソースガイド)
あなたのお子さんは(あなた自身も)、コンピューターの画面にへばりついてゲームの世界をうろついている時間がどれだけあるだろうか。完全にピクセル化された街の中を。もったいない! そろそろ、その時間をゲームを「作る」ために使うべきだ。そこで、私の子どもが通う小学校で行っている、幼稚園児から5年生までの子どもたちにプログラミングを教えるという試みを紹介したいと思う。あなたも、これを読めば子どもたちにコーディングを教えてMakerの卵に育てあげることができる。
これは子ども専用というわけではない。誰であろうと、プログラミングを教える最適な方法だ。4歳から104歳までの誰もが、ちょっとの時間でテクノロジーのブラックボックスを開いて、未来はタブレットをいじる自分の指の先にあることを実感できるようになる。
12月のはじめ(12月7日〜13日はコンピュータサイエンス教育週間)に、Code.orgが毎年開催しているアルゴリズムの祭典、Hour of Code(HoC)という大きなイベントの一部としてそのチャンスがある。HoCは、奇遇にもComputer Science Weekとも重なっている。それはまさに、何万人という人たちを動員して、命令、条件、ループといったプログラムの仕組みの基礎を教える取り組みが行われる。創設からほぼ2年になるCode.orgは、学校の生徒を中心とする1億人の人々に、プログラミングのパワーを教えてきた。彼らはそれを、そのパワーを信じて、それを人々に伝えたいと考えている、みなさんのような人々の手を借りて行っている。
200万近くの人々が、Code.orgのオンライン宣言に同意している。それは「すべての学校のすべての生徒にコンピューターサイエンスを学ぶ機会を得るべき」というものだ。自分の子どもに教えるというだけの話ではない。すべての子どもにコーディングを教えるのだ。みなさんの地域の学校では、こうした機会を子どもたちに与えているだろうか。もしそうでないなら、みなさんの手で状況を変えることだ。
楽しくて、簡単に使える魅力的なコーディング入門ソフトとして新しく登場したのが、Minecraftだ。これは、どの子どもも(そして先生も)大好きになるクリエイティブなデジタルユートピアだ。Code.orgと協力して、ビットマップ化されたツルハシを使って、幼稚園から高校3年生の子どもたちを教育しながら、コンピューター科学の宇宙を掘り進むのだ。
Mojangの開発主任、Jens Bergenstenはソフトウェア業界ではよく聞く話をしてくれた。彼は子どものころゲームが大好きで、自分でビデオゲームを作りたいと思うようになった。それからいろいろあって、今では彼と彼の友人は億兆長者になった。私たちが彼をMaker Camp 2014に招待した際に、彼は11歳のときにBASICとTurbo Pascalを使ってゲームを作ったということを知った。
Hour of CodeのためのMinecraftのチュートリアルには、Blockyと呼ばれるブロック式の言語が使われている。蓋を開けて中を覗けば、そこには本物のJavaScriptがある。子どもたちは、14題のMinecraftをテーマにしたパズルをコードを書く(というか、つなげる)ことで解いていく。学校でMinecraftをプレイできるのだから子どもたちは大喜びだろう。私もこれには興奮した。クラスメートたちには、昨年12月のHoCのAngry Birdsチュートリアルが大人気だった。ほとんどの生徒たちが、家でもコーディングを続けられるようにブックマークを付けていた。今年も私たちのワークショップで、子どもたちは溶岩のように熱くなることだろう。
Makerコミュニティには、Scratchのファンが大勢いる。Hour of Codeは、友だちを国際的なScratchコミュニティに誘う最適な場所となる。Scratchにも非常に優れた3つのHour of Codeチュートリアルがある。ひとつは、Cartoon Networkの人気番組、We Bare Bearsだ。小さい子どもたちにプログラミングを教えるには、Scratch Jr. bookがいいだろう。
それでは核心に入ろう。みなさんの学校やメイカースペースを、12月7日から13日の間に開かれる93000ものHoCイベントのリストに加えるには、まず、HoCの「Host an Event」ページを確認することだ。
実施のための8つの秘訣
チュートリアルはどれも優れたものだが、教室の子どもたち全員の注目を集めることは、それがなんであれ難しい。私は、私たちの学校でのHour of Codeの中心人物、Henry Sobelに会い、学校の300人あまりの生徒たちにコーディングを体験させるための授業の準備について話を聞いた。以下は、HoCの準備リストにも恐らく載っていない秘訣だ。
1. 人を集める ビデオやチュートリアルがどんなに豊富でも、ひとりでは何もできない。大きなイベントを行うには、保護者やボランティアを十分な人数だけ集めることが大切だ。1クラスあたり2〜3人は欲しい(だから今この時期にHour of Codeの話をしているのだ[日本語版編注:日本語訳の公開が遅れたことをお詫びします]。人を集めるのに数週間かかる。チュートリアルはどれも初歩的なものだ。プログラミングの経験は、忍耐力、基本的なコンピューターのスキル、各生徒の未来への情熱に比べれば、それほど重要ではない)。
2. やってみる すべてのボランティアは、子どもたちに教える前に、家でチュートリアルを試してみることが大切だ。
3. 動作を確認する 各ハードウェア(ノートパソコンまたはデスクトップパソコン) にプログラミング環境を読み込み、開き、テストすること。学校にはファイアーウォールを設定しているところが多く、それは一様ではない。マシンごとに設定されている場合もある。
4. 充電する ノートパソコンやタブレットなどのポータブルデバイスを使うときは、スケジュールに充電時間を入れること。そのための、十分なコンセントまたは充電カートを確保しておく必要がある。もちろん、前夜にデバイスの充電をしておくことも忘れてはならない。
5. 紙にバックアップ 選んだチュートリアルのURLを紙に書いて、各要所に置いておく。子どもたちは、間違ってウィンドウを閉じてしまうことがあるからだ。また、計画が破綻したときに、オフラインでも行える活動を準備しておく。
6. 楽しく ワークショップを始めるときに、プログラミングはパズルを解くようなものだと強調する。そして楽しくやろうと言ってやる。大人が考えているようなこと(数理系教育に関する問題など)は子どもたちには関係ない。明るく楽しく、Hour of Codeの時間を盛り上げよう。HoCは年に1回しかない。説明の段階で実際のデモを見せることも大切だ。たとえば、クラシックなゲームの命令のセットを渡し、どこまでできるかを試させる。
7. 周辺機器を準備する 1年生程度の小さい子どもたちは、トラックパッドがうまく使えないかもしれない。そこで、マウスなどの周辺機器を準備しておき、そうした子どもたちに対応できるようにしておく。
8. 2人1組で 小さな子どもたちには効果的だ。コンピューターの台数が少ないときは、先生が事前に子どもたちを2人1組にペアを組ませる。
12月の初めにワークショップを開こうとするのは危険だ。いつだって学ぶことはできる。San Francisco Friends Schoolで教えているBeth Espinozaは、子どもたちにプログラミングを教えるためのプラットフォームを吟味して、先週、Maker教育者のグループに公開した。これはHoCでも使える。イベント後のフォローにも使えるし、子どもにプログラミングを教えたいときに、いつでも役に立つ。
プログラミング用プラットフォームに関するBethのノート
・Hour of CodeのMinecraft、Angry Birds、Star Wars、ディズニーのFrozenの各パズルは、一部の子どもには代わりに読んでやる必要がある。音声はなし。iPad Miniにも対応。JavaScriptを使用。しかし、コードをタイプする必要はない。チュートリアルには紹介ビデオがあり、さまざまなプログラマーが登場する。サインインすれば自分のプログラムを保存できる。
・Scratch Junior:iPad用。対象年齢は5歳から7歳。Scratchへの導入として最適。
・Scratch:人気のウェブベースのプログラミング言語。Getting started with ScratchとGetting creative with Scratchを見て欲しい。クリスマスカードを作る。
・Kodable:iPad、デスクトップ、Android互換機用。対象年齢5歳以上。あとで継続できるように、途中までの保存ができる。
・Lightbot(One-Hour Coding):iPad、Android、ウェブブラウザー対応。コマンドには一部文章を読む必要がある。文章が読めない子どもは、1人では難しい。
・Tynker:ドロップアンドドロップでコードを組み立てる。シンタックスを気にする必要がない。コードをテキストで表示させるオプションがある。学校情報が記録できる。ビデオもある。幼稚園から8年生に適応。授業の準備のための先生向けのビデオもある。生徒を集め、授業計画を立てる。チュートリアルとギャラリーには、すぐに使えるプロジェクトとレッスンがある。2〜7年生向けのコーディングに関する情報はこちら。
・Blockly:ゲームベースのプログラミング。
・Daisy the Dinosaur:iPad専用。読む力が必要。シンプルなブロックベースのプログラミング。
・Hopscotch:iPad専用。Hopscotchチャレンジに関する無料のebookが付属。角度(90、180、360…)の知識があるとよい。
・Karel the Dog on CodeHS:プログラムのタイプのデモあり。子どもたちは実際にコードをタイプする。JavaではなくRuby。4方向しか動けないが、一部の生徒にはチャレンジング。iPadよりもノートパソコンのほうが使いやすい。授業を始める前の準備が必要。
・RoboMind Academy:仮想ロボットをコントロールして、拾う、色を塗るなどの行動をさせるプログラムを作る。テキストの命令を使用。オンラインコースには、簡単なプレゼンテーション、映画、パズル、自動ガイダンス、プログラミングのヒントなど、必要なあらゆるものが揃っている。Chromebookで使用する際にはマウスが必要(ロボットの世界のズーム、パン、ヘルプを表示するためのスクロールを行う)。音声効果が素晴らしい。プログラミング言語にドロップアンドドロップ方式のプログラミングを接続可能。文字資料は少ないが。ヘルプをクリックすると詳細な情報が得られる。ループ文と条件文の導入によい。
コーディングの経験のある生徒向け
・Code Monster:2つの画面で構成されている。片方にはコードが表示され、もう片方にはコードの動作が示される。コードをいじると、吹き出しにコマンドの説明が現れる。
・Beetle Blocks(アルファ版):3Dプリントのための3Dコーディングオプション。
・Code Academy:複数のコースから好きなものを選び、ウェブサイトを作る。プログラミング言語はRuby on Rails、Java、CSSなど。
・Code Combat:ゲームをプレイしながらコードを学ぶ。
・Khan Academy:プログラミングの編集の学習によい。
・Hour of Code for K-5 students:さらに学習が続けられる。20時間以上のプログラミングカリキュラムがある。より深くプログラミングを学びたい子ども向け。
Bethはまた、EdSurge’s Coding Resourcesも勧めている。Bethのリストに、Maker Edがリソースページで紹介していた次の2つも追加したい。
・Hello Processing
・AppInventor
子どもたちにコーディングを教えることの大切さは、みんなわかっている。技術系企業が、未来のツールを作るための人材を多く求めていることも知っている。独自性がありあらゆる可能性を持つ人々だ。たとえ子どもたちがプログラマーやプロジェクトマネージャーや、技術に関係のある職業に就かなかったとしても、詩人や獣医や花屋や歴史家になったとしても、ソフトウェアの構造に関する基本的な知識を持つことの意味は大きい。その知識は、大勢の才能ある会社員や知識人に囲まれた中でも、きっと役に立つ特質となる。プログラミングは、すべての子どもが大切に隠し持っておくべきパワフルな能力だ。あらゆる子どもがその基礎を学ぶことができる。
みなさんの学校でコンピューター科学に対する関心が低いようなら、HoCが非常においしいニンジンをその教師たちの眼の前に吊すことができる。1万ドル分のギフトカードの寄付などだ。
Hour of Codeを楽しもう。
[原文]