Hatena::ブログ(Diary)

One Etoy Per Child

2012-12-23

abee22012-12-23

中学校にマイコンとセンサーがやってきた

かつて中学校の技術・家庭科といえば、男女に分かれて、男子は木工やはんだ付けなどの生産技術、女子は裁縫や料理などの家庭生活を支える技術を学ぶものだった。現在の技術・家庭は男女とも同じ内容を行う。おもに技術分野と家庭分野に別れており、さらに技術分野では、「A 材料と加工に関する技術」、「B エネルギー変換に関する技術」、「C 生物育成に関する技術」、「D 情報に関する技術」を習得することが求められている。

2008年3月28日に改訂された新学習指導要領では、「D 情報に関する技術」のなかで「プログラムによる計測・制御」が必修となり、4年間の先行実施を経て、2012年4月から完全実施されている。猶予期間があったとは言え、ものづくりが中心だった現場にはコンピューターやプログラミングに対する戸惑いもあるようだ。その実情を知るために、東京都板橋区上板橋第二中学校の2年生の授業を見学した。

授業は、2012年12月21日の6時間目にパソコン室で行われた。指導は新村彰英教諭、対象は約30人のクラスである。これは全6回(1週間に1回、各50分)の「プログラムによる計測・制御」の最終回にあたる。

f:id:abee2:20121221143501j:image

写真1 授業が行われたパソコン室。Windows Vistaが使われている

ぱらぱらと集まってきた生徒は慣れた様子でラックの中から車型のロボットを取り出し、決められた席に座る。このロボットは、プラスチック棒のフレームで作られた簡単なもので、DCモーター1個で前後に動くようになっている。その両端にはそれぞれ上向きに光センサー(CdS)があり、マイコンボード(ちっちゃいものくらぶNanoBoardAG)の抵抗センサー端子につながっている。同様にDCモーターは、NanoBoardAGのモーター出力端子につながっている。

f:id:abee2:20121221145628j:image

写真2 車ロボット。左に見えるのがNanoBoardAG

席についた生徒は、新村教諭の指示でPCとロボットUSBケーブルで接続し、制御用のソフトウェアScratch」を起動した。

Scratchは米マサチューセッツ工科大学(MIT)が開発したビジュアルプログラミング言語だ。Scratchでは、命令となるブロック型のアイコンマウスで組み合わせることでプログラムを記述する。キーボードタイピングが不要で、原理的に文法エラーが生じないため、小学生でも簡単にゲームやアニメなどを作成できる。また、PicoBoardという外部センサー(光、音、抵抗、ボタン、スライダー)を使うためのブロックが用意されており、LEGOのMindStormsに似たWeDoというロボットキットを制御するブロックもある。NanoBoardAGは、Arduinoをベースにハードウェアソフトウェアを拡張しており、PicoBoardとWeDoをエミュレートできるので、これらのブロックを使うことができる。

f:id:abee2:20121221145842j:image

写真3 Scratchの画面。ブロックを並べてプログラムを書く

生徒は、これまでの授業でScratchのプログラミングをある程度マスターしている。今回のゴールは、車ロボットに手をかざし、その方向に車を走らせることだ。

新村教諭は、プリントを配り、前後の光センサーのそれぞれについて、手をかざしたときとかざしていないときの値を記録するように指示した。Scratchには監視版という機能があり、リアルタイムに各センサーの値をモニターできる。

最初の課題は、これを閾値として条件分岐させ、画面に表示されているネコの絵を左右に動かすことだ。

f:id:abee2:20121221144544j:image

写真4 新村教諭の説明

10分ほどの演習で、何人かが完成した。新村教諭は、その生徒のプログラムプロジェクター投影し、生徒自身にプログラムの説明をさせた。同じ課題でも、ネコの向きを変えて歩かせたり、直接x座標を操作したりなど、異なる解法があるのが面白い。

これを受けて、他の生徒もプログラムを完成させ、いよいよ本番となる車ロボットに取り掛かった。今度は光センサーの値を閾値にして、モーターのオンオフと回転方向を制御することになる。ただし、画面の中のネコと違って、現実世界のロボットは、暴走して机から落ちたりする。そのため、木製のスタンドで車輪を浮かせて試行錯誤しやすいようになっていた(さすが技術の先生)。

f:id:abee2:20121221145601j:image

写真5 試行錯誤中。実際に手をかざして振る舞いを見る

f:id:abee2:20121221152018j:image

写真6 まったく違うことをやっている生徒も

しばらくしてから、さきほどと同様に何人かの生徒を選び、プログラム投影と説明を行った。中には、前後の動きを独立したプログラムにして並列に動かしたり、車を走らせながら吹き出しでしゃべらせたり(車の向きでセリフが変わる)などの工夫もあった。また、ある生徒が見つけたアイデアが教室内で伝播していく様子が見られたのも興味深い。

たちまち時間が過ぎ、ほぼ全員が完成した頃に授業も終了となった。

f:id:abee2:20121221152431j:image

写真7 プログラムの例。並列処理になっている。なぜか大量のセリフが

新村教諭は「プログラムによる計測・制御」の実施が決まって、いろいろな教材を検討した結果、見つけたのがScratchだったと言う。Scratchは、指導案や簡易言語とセットになった市販の教材と比べて自由度が高く、コストも低いことが決め手だったとのことだ(Scratchは無料でMITのサイトからダウンロードできる。NanoBoardAGはキットで1,500円から。端材を使った車も含めて1人あたり全部で2,000円以下)。生徒が面白いと思うポイント(前記の吹出しや視覚効果など)をよく研究して組み込んでいることも評価できる。新村教諭は、他の単元で必要だったタイマーを作るためにもScratchを活用している。

一方で、技術・家庭の時間数は週1回に減っており、その時間内で前記の広範な内容を学習することが求められている。そのために生物育成と計測制御を組み合わせるなど、教員も工夫して対応している。今回の授業は、フィジカルコンピューティングの入り口に立ったところで、時間があればもっと面白いことができるだろうと感じた。ここで終わるのは実にもったいない。

技術・家庭は中学校の授業の中で、もっともMakeの方向性に近い。将来のMakerを育てるために私たちもできることがあるのではないかと考えながら、学校を後にした。

2010-03-17

STEM エデュケーションとテクノロジー教育カンファレンス 2010

3/27(土)に東京JRサピアタワーで開催される「STEM エデュケーションとテクノロジー教育カンファレンス 2010」でScratchの講演とワークショップを行います。

講演1「子供の遊びを学びにつなげるスクラッチ(仮)」

サイバー大学客員教授 阿部和広

<講演概要>今日、コンピュータで子供たちの学習を支援する環境は多数存在します。しかし、それらの多くは頑張って勉強した報酬として、予め用意されたアニメやアイテムなどを与えるだけです。MITで開発されたスクラッチは、ものを作りたいという子供たちのより根源的な欲求に働きかけることで自発的な学習を促します。ここでは、その理念や事例などをご紹介します。

ワークショップ1: 子供の遊びを学びにつなげるスクラッチ(仮)

内容:「子供の遊びを学びにつなげるスクラッチ(仮)」でご紹介したスクラッチの環境と作品作りを実際に体験していただきます。

他にも、タフツ大学の電子テキスト作成ソフトウェア ROBOBOOKのプレゼンテーションなど、興味深い講演やワークショップが多数予定されています。参加費は無料ですので、ご興味のある方はどうぞご参加ください。

2009-11-18

abee22009-11-18

Scratchで学ぶSqueakハッキングテクニック

2009/11/27(金) 19:00から東京で開催される第15回Smalltalk勉強会において‏‎‎‎‎‎‎‏‎‎‏‎‏‎‎‎‎‏‎‎‏‎‎‎‏‏‏‏‏‏‏‏‏‎‏‎‏‎‎‏‎‎‏‎‎‏‎‎‏‏‏‎‎‏‎‎‎‏‏‎‎‏‎‏‏‎‎‏‏‎‏‏‎‎‎‏‎‏‏‏‎‎‏‏‏‎‏‏‎‎‏‎‏‎‎‏‎「Scratchで学ぶSqueakハッキングテクニック」と題したハンズオンを行います。

面白いソフトウェアがあるとき、その中身をのぞいたり、いじったりしたくなりませんか。たとえば、メニューに機能を追加したり、ボタンを5ドット右にずらしたりとか。もし英語にしか対応していないなら、日本語で使いたいのも人情です。
もちろん、Squeak(Smalltalk)ではそれができます。でもどうやって?
このあたりのノウハウは文書化しにくく、尋ねても「ここをひねって」「どーんといく」など、訳の分からない答えが返ってくることもあります。(たぶん)私だけかもしれませんが、Smalltalkerはどこに何があるかなんて憶えていません。アタリを付ける方法を知っているだけです。
今回のSmalltalk勉強会では、Scratchを題材にこのようなメタな技術(バッドノウハウ?)を皆さん自身が発見する方法をお手伝いできればと思っています。

要は、MTM04で展示する「大人のSqueak&Scratch」のネタバレというか実践版ですね。その性質上、SmalltalkやSqueakについてのスキルが若干必要になりますが、なんとなく雰囲気はわかると思いますので、カスタマイズに興味があるScratchユーザの方もよろしければご参加ください。ユーザ視点で、こんなブロックが欲しい、このボタンを変えてもらいたいというアイデアだけでもよいと思います(XP手法で言うところのオンサイトカスタマ役です)。

2009-10-17

abee22009-10-17

プログラミングが好きになる言語環境

情報処理学会の会誌、情報処理 2009年10月号ドリトル兼宗進さん、ビスケット原田康徳さんと一緒に「プログラミングが好きになる言語環境」という記事を書きました。私は「小学生にプログラミングの楽しさを伝える」という章を担当しています。

ソフトウェアハードウェアは進歩したが、やっていることはPapertの時代と本質的に変わっていない。それはResnickも肯定している。
筆者は小学校におけるプログラミング教育はプログラマを養成するためではないと考えている。特定の言語や環境に依存するツールの使い方も重要ではない。EtoysやScratchの操作はいずれ忘れ去られるだろう。極論すればどの言語でも一緒である。多少不便かもしれないが、何を使っても面白いものはできる。

この号の特集「未来のコンピュータ好きを育てる」は、このメンバがいつも行っていることです。それぞれにアプローチは異なりますが、子供たちにプログラミングの面白さを知ってもらいたいという点において共通しています。

一部の書店でも販売しているようなので、機会があればぜひお読みください。

2009-04-19

abee22009-04-19

XO-1.5(Gen 1.5)

OLPCのロードマップで予告されていたXO-1(Gen 1)のバージョンアップ版「XO-1.5(Gen 1.5)」の情報が、公式blogで公開されました。

Kicking off a gen-1.5 development process: Updating the XO hardware

合わせて、Wikiのハードウェア情報も追加されています。

Hardware specification 1.5

Gen 1.5は、デュアルスクリーンの次世代機 XO-2(Gen 2)とは異なり、Gen 1と同じ筐体を用います。最大の変更点はCPUで、AMD Geode LX-700 433MHzからVIA C7-M 400MHz〜1GHzに変わります。合わせてチップセットもAMD CS5536, CaFE, DCONから、VIA VX855, DCONとなります。RAMは256MBから1GB、SSDは1GBから4GBへとそれぞれ増えます。特徴的なデュアルモードディスプレイは継承され、解像度は200dpi、1200x900ピクセルのままです。ソフトウェアは基本的にGen 1と互換性があり、現行の8.2を修正した8.2.xが用意されます。ドライバ開発用の基板は5月、プロトタイプ数百台は8月に開発者向けに提供されます。

Gen 1.5により、XOは現在のネットブックに近い性能を持つことになります(たとえばHP 2133など)。その一方で消費電力は増加するでしょう(全体の消費電力は不明)。発熱も気になります。また、価格については今回の発表に含まれていません。Gen 1の価格($188)が下がらなかった理由として、思ったより台数が伸びず(約100万台)、スケールメリットが活かせなかったことが挙げられますが、Windows 7も快適に動作すると思われるGen 1.5の導入国がこれまでより増えるかどうか、ここが正念場でしょう。