更新日時:
イギリスの公共放送会社、BBCによって開発された micro:bit はポケットサイズのコンピュータで、単純にコンピュータに使われるのではなく、子供にコンピュータの仕組みを教える目的で作られました。Makersシェムリアップの4回目のオープンハウスイベントで、子どもたちはこのボードを使いながらプログラミングを学びました。そのクラスの模様をお伝えします。
micro:bitとは
1980年代に教育プログラムのためにBBCはBBCマイクロを開発し、その拡張性の高さ、 BASICだけでなくPascal、C、LISPといった複数のコンピュータ言語をサポートすることから人気を博しました。micro:bitはその後継にあたります。
それから数十年後の2016年、BBCは再びコンピュータボードを開発し、イギリスの学校に数多く無料で配布しました。BBCマイクロでは動作周波数2Mhzの8ビットCPUでしたが、 micro:bitは動作周波数16Mhzの32ビットコンピュータが動いています。BBCマイクロの拡張性の高さはきちんと受け継がれており、基板端子には多くの入出力ピンが用意され、 USBとブルートゥースも装備しています。5x5のLEDディスプレイと各種センサーのおかげで、micro:bitだけですぐに使い始められます。
micro:bitはイギリス国内だけでなく、ヨーロッパ各国、そしてシンガポール、台湾、 日本など世界各国の学校で使われています。オフィシャルサイトには各国における レポート が公開されています。
オンラインプラットフォーム MakeCode
子どもたちはまず、Microsoftが提供するオンラインプラットフォーム、 MakeCode でプログラムの書き方、シュミレータでの動作確認、出来上がったコードをダウンロー ドしてmicro:bitにアップロードし、実際に動作させるといった基本操作を学びます。 このオンラインプラットフォームでは、様々な資料を読んだり、動画によるレッスンを観たり、サンプルプロジェクトを試すこともできます。学ぶコンピュータ言語はレベルに応じて選択でき、ブロックを組み合わせてプログラムを書くブロックランゲージ、 Python、そしてJavaScriptがあります。クラスではブロックランゲージを使いました。
使い方は簡単で、すでに Scratch といった他のブロックランゲージを学んだ子供も多くいました。すでに別の言語で学んでいた経験がクラスでは大きな差になります。ブロックプログラミングランゲージはいくつもありますが、使い方は共通です。たくさんのブロックの中からブロックを選び、 それをワークスペースと呼ばれる場所で組み合わせます。目標もまた同じで、「小さいうちからプログラミングとエンジニアリングに慣れさせる」ために作られました。しかし、micro:bitには他にはないユニークな特徴があります。それは作ったプログラムから「本物の」反応が返ってくることです。本物のハードウェアでコードが実際に動き、 手で直接反応を確かめられ、どこかに持っていって実験もできますし、作ったゲームを友達と楽しんだり、出来上がったものを自慢だってできます。
授業風景
生徒は付属のLEDディスプレイの使い方、シミュレータでの動作確認、書いたプログラムのアップロード方法など MakeCodeの基本をチュートリアルで学びます。操作はとても簡単で、選択したブロックをワークスペースで組み合わせ、シミュレータで動作確認したのちに、コンパイルされたファームウェアをダウンロードして、コンピュータに接続したmicro:bitにコピーアンドペーストします。
生徒によっては少し簡単すぎたようだったので、そうした生徒のためにもう少しむずかしい課題を作ることにしました。日曜日のクラスでは、micro:bitに接続した部品を操作する課題を出しました。その部品はマイコン内蔵LEDリングです。テープLEDは様々な場所で使われています。店舗のショーケース、航空機の機内照明、屋台の車両などにも使われています。けれども、授業で使ったLEDはもっとスマートなんです。全体の明るさの調整だけではなく、それぞれのLEDの色を個別に変えられます。
マイコン内蔵のLEDはスマートデバイス市場でとても人気があります。スマートデバイスには、音声で操作できるスピーカー、リモコンでオンオフのできる壁スイッチ、物理的な鍵を必要としないスマートロックなどがあります。マイコン内蔵LEDは部屋の照明色を変えたり、様々なパターンの色を表示したり、スマートフォンや音声でコントロー ルもできます。コンピュータのスキルを身につければ、操作を自動化することもできます。例えば、部屋に入室したら照明を自動的に点灯させ、夜の11時になったら照明を明るい青に変更し、眠りについたら自動で消灯させる、などです。
LEDリングは形は違えどディスプレイの一種と言えます。ディスプレイに意図するパタ ーンを表示するのはそんなに簡単なことではありません。けれども、マイコン内蔵LED 用のライブラリを使うと、生徒でも簡単にシンプルなパターンをLEDリングに表示できます。 すこし学んだだけで、生徒は虹色のパターンを表示できました。
マイコン内蔵LEDの他にも、電子パーツをいくつか使いました。ブレッドボード、ワニクリップ、外部バッテリー、そして接続するためのワイヤです。これらは、電子工作におけるレンガにあたります。ブレッドボードは試作に欠かせない道具で、思いついたアイデアを簡単に試すのに使われます。はんだ付けは不要で、ワイヤで接続するだけで回路を作成できます。なぜ「ブレッドボード」と呼ばれるのかは次の動画を見るとわかります。
授業を終えて
実際にプログラムの反応を見たり、触れられたりできるというのは、教育プログラムにおいて思った以上に優れていると実感しました。他のブロックプログラミングではブラウザの中ですべてが完結します。それはそれですごいことなのですが、micro:bitでは現実の世界で見たり動かしたりできます。そして、自分の成果を他のひとに見せることも簡単です。ソフトウェア開発では、ほとんどの部分が目に見えないものです。実際に動くものを見せられるのは、フロントエンドを担当する一部の「幸運な」開発者だけだったりします。こうした「目に見えて、触れられる」のが電子工作の良いところです。 自分で書いたプログラムが動いた瞬間を目にした生徒の顔は忘れられないものです。
参加した生徒全員が過去にブロックプログラミングを経験していました。ブロックの組み合わせかただけでなく、変数とは何か、条件分岐とは何かといったコンピュータの基本をすでに理解していました。こうした事前知識は学習において大きな差になります。 プログラミング言語をひとつ習得すれば、他の言語を習得するのはそんなに難しくはありません。プログラミング言語は個々の差はあれど、共通する考え方があって、過去に学んだ知識が無駄になることはないのです。過去に教えた生徒の中にはプログラミング言語どころか、コンピュータの動作についてもまったく知識がない生徒もいました。この差はとても大きく、学習進度の違いにもつながります。「幼いうちからプログラミングやエンジニアリングに触れさせる」というのは、BBCがmicro:bitを開発した理由でもあります。数十年前、コンピュータが「新しかった」頃とは違い、こうした知識は今や必須とされています。始めるのなら早めに始めたほうが良く、COBID-19以降に多くの教師が必要に迫られて、必要なトレーニングやサポートも受けられないまま、無理やり学ぶようなことでは遅すぎるのです。
個人的にも、現代的な技術にあまり精通していない人と仕事をするのは大変なことです。 ファイルを共有したり、複数人でひとつのファイルや文書を編集したり、効率的に仕事を進める方法を知らない人たちです。こうした人たちは主に古い世代で、高い職制だったりしますが、もうすぐ引退します。若い世代は同じ轍を踏むべきではありません。良いエンジニアはチームの中で「一番下手くそ」であることを好みます。なぜなら、できるチームメイトと共に働くのはとても楽しいですし、お互いに刺激しあい、学ぶことも多いのです。
おわりに
Makersシェムリアップでは、オープンハウスイベントを週末に開催しています。過去のクラスでは、 はんだ付けで電子回路を作成 したり、 紙飛行機を作る 教室や、 3Dオブジェクトのモデリング を学べます。
イベントの告知は Siem Reap Parenting Facebookグループと Twitter. でしています。現代的な技術スキルを学ぶ機会に興味がおありでしたら、Facebookグル ープに参加、もしくはTwitterでフォローをお願いします。ご質問やお問い合わせは Telegram でお受けしております。