初見BBC Micro:Bit は今朝から英国の 7 年生全員に配布されます。
子供たちが受け取るのは、element14 社製の、256KB のフラッシュと 16KB の RAM を搭載したマッチ箱サイズのシングルボード コンピュータです。
はい、お読みの通りです。これは、BBC が小学生に初めてコンピューターを披露した 35 年前、Acorn が設計した BBC Micro Model A と同じ RAM 容量です。
Micro:Bit の ARM Cortex-M0 および M0+ マイクロコントローラは、1980 年代半ばに Acorn のエンジニアによって設計された RISC ARM チップから派生したものであることを考えると、これは二重に適切です。
開発環境における重労働はすべて、タブレット、スマートフォン、PC上で動作するアプリとブラウザによって行われるため、小型です。これは完全なコンピューターではなく、シンプルなプログラムを実行し、周囲の世界とインターフェースするためのボードと考えてください。
Micro:Bitの発売も6ヶ月遅れていますが、これは良いことです。BBCとそのパートナー企業は、Micro:Bitが実際に使えるかどうかを確かめる時間を持つことができたからです。Micro:Bitは、ただ学校に放り込まれるのではなく、授業計画、必須のビデオ、そして豊富なコードサンプルが付属しています。
これは Windows プラットフォームでも .NET プラットフォームでもありませんが、Microsoft はこれに深く関与し、プログラミング言語を 2 つ提供し、コース教材の多くも提供しています (良い点と悪い点のどちらが優れているかは人それぞれです)。
PIを受講しないのはなぜですか?
読者の中にはLinuxのコマンドラインインターフェースを楽しめる人もいるかもしれないが、平均的な12歳の子供にとっては、1980年代から世界を支配しようとしている邪悪なコンピュータのように見えるだろう。Micro:Bitsはスマートフォン世代向けに設計されている。ここでは即時の満足が優先され、BBCやARMなどは、親にC++を強制的に教え込まれた子供たちだけでなく、すべての子供たちにリーチしたいと考えている。
先生方とお話をしたところ、ほとんどの先生方が、能力の幅広い、より一般的な学年の子どもたちにとってMicro:Bitが役立つと肯定的におっしゃっていることが分かりました。これは、1人の先生が25人の子どもたちを担当しなければならないクラスでは大きな問題です。そこで、Micro:Bitは4つの開発システムに対応できる状態で出荷されます。
入門レベルはMicrosoft Blocksです。Scratchをご存知ない方のために説明すると、これはドラッグ&ドロップでフローチャートを作るツールで、子供たちはプログラムを組み立てて空欄を埋めるだけです。テキストを一切入力せずに、テキストをスクロールさせたり、持ち上げられたときに反応したりするものを簡単に作ることができます。難解な構文エラーを怖がらない人もいるかもしれませんが、12歳の子供の多くは怖がります。加速度センサーが振動を検知し、5×5のLEDグリッドに失礼なメッセージを書き込むこともできます。これは基本的なIoT(モノのインターネット)であり、今日のティーンエイジャーは仕事で、あるいはもしかしたら仕事以外の時間にこれを使うようになるでしょう。
つまり、イベント駆動型プログラミング、ループ、単純な変数、そして持ち上げた時にエラーを発する機能などが得られます。多くの子供たちは、インスタントメッセージ処理という退屈な奇跡よりも、もっと何かができる「ガジェット」にもっと興味を持つのです。
BBCは「創造性」というアイデアを推進しており、どうやらメッセージ表示バッジや、携帯電話からのテキストメッセージへの返信機能などを想定しているようだ。これは1980年代初頭のBBC Micro時代、雑誌のコード入力に3日も費やしていた頃とは比べ物にならないほど短期間で実現できる。
CodeKingdomsによるJavaScriptの超簡単な解説
Microsoft TouchDevelopは、AndroidとWindows Phone向けのモバイルアプリ開発を子供たちに簡単に始めてもらうための手段として、しばらく前から学校で使われてきました。先生方からのフィードバックは非常に良好で、今回も役立ち、シンプルです。このアプリをレビューする際には、見下したようなメッセージは、12歳(「My First IntelliSense」の頃)で、自分が理解できるコードを持っているなら、むしろ良いものだと自分に言い聞かせなければなりませんでした。
Code Kingdom の JavaScript は、ドラッグ アンド ドロップ インターフェイスを使用して、子供たちが構文よりもアルゴリズムについて考えることを可能にする、本格的なプログラミングへの次のステップです。また、これにより、学生は、シンプルだが制限のあるブロックから本格的なテキストベースのコーディングまで、段階的に進むことができます。
これらは、プログラム全体とランカスター大学ランタイムを、PC開発スタイルではなくIoT開発スタイルでMicro:Bitにプッシュすることで機能します。ランタイムにはデバイス抽象化レイヤーが含まれているため、言語はジャンプテーブルにプラグインされ、初心者プログラマーはハードウェアをほとんど気にする必要がありません。
2 つの Cortex MPU がある理由の 1 つは、1 つのプロセッサでブート、ロード、ホストとの通信を行うときに問題を回避するためです。破損によりデバイスが使用できなくなる可能性があり、これは大人の開発者にとっては迷惑なことですし、25 人の生徒全員が今すぐにデバイスの修理を求めている教師にとっては悲惨な状況です。
MicroPythonはホストと通信してインタープリタ型のデバッグと開発を行うことができます。つまり、中学1年生の子どもたちが、学校でコンピュータサイエンスを教えるために急速に普及しつつある言語、JavaScriptとPythonをすぐに使い始めることができるのです。このコンピューターはARMのmbedプラットフォームをベースにしているため、C++も実行でき、より高度な子どもや大人はより高度なプログラミングも可能です。Micro:Bitにはエッジコネクタがあり、バナナクリップ式のワニ口クリップが付属しているので、より多くのデバイスやセンサーに接続できます。既にAlready Tech Will Save Us(そう、これが正式名称です)とKitronikが準備を進めており、来月いくつかレビューする予定です。
BBCは費用について明言を避けていますが、それほど高額ではないはずです。パートナー企業は費用の大部分を自前で負担し、バークレイズは在宅教育者を支援しています。BBCはプロジェクト全体をオープンソース化し、非営利団体に委託してMicro:Bitsの販売と今後1年間の開発を行う予定です。
「でも」とあなたは言うでしょう。「イギリスには7年生が58万3212人しかいないのに、なぜ100万個も作る必要があるの?」 12歳の子に会ったことはありますか? BBCは、破損や紛失に備えて予備のユニットを出荷しているほか、Micro:Bitを披露するプロジェクトのために在庫を保管しています。初期モデルに発熱の問題がいくつか報告されているものの、Micro:Bitはかなり頑丈で、踏みつけられる程度の扱いには耐えられます。
ハードウェア
Micro:Bit は低電力 Bluetooth を搭載しているため、携帯電話やタブレットとペアリングしてテキストに応答したり、Samsung の Android アプリ経由でプログラムしたりできます。
このボードに搭載されているNordic Semiconductor ARM Cortexコアは、Bluetoothと内蔵アプリの実行を担います。NXP CortexマイクロコントローラはUSB経由でホストと通信するほか、コンパス方位を測る磁力計と動きを測る加速度計も備えています。
5×5 の LED グリッドは表面に取り付けられており、最も意志の強いティーンエイジャーだけがこれを壊すことができます。電源は AAA 電池から供給され、数日間動作します。
最初の成果…Acornチームは1981年にBBC Microの前身であるAtomを手にした。
中学1年生のお子さんがいるなら、それはあなたのものになります。だからこそ、来年はもっと多くのユニットが必要になるのです。しかし、これは先生方の間で必ずしも好評というわけではありません。予算が限られていることに加え、12歳の子の行動をよく理解していて、多くのユニットが紛失したり、壊されたりすることを想定しているからです。多くの先生方は、説明が終わるまで子供たちにユニットを渡そうとしません。
ついに
Micro:Bitは、次世代を狙ったもう一つの優れた小型コンピュータボードであるRaspberry Piを凌駕するものではありません。Raspberry PiはLinuxと、(無理やりですが)Windowsに近いものも動作しますが、Micro:BitはWindowsには対応していません。
むしろ、まだプログラミングの素養がない中堅の子供たちをターゲットにしています。しかしながら、英国のすべての子供たちが少なくとも簡単なプログラミングができることが期待されていることを考えると、これは大衆にプログラミングの興味を持ってもらうための悪い方法ではないでしょう。®