ティーンエージャーの作るアプリは世界を変えられる?

タフツ大学の電気電子工学部のパネッタ学部長と、IEEE(電気・電子分野における世界最大の学会)が13歳以上の学生を対象にヘルスケア、教育、クリーンエネルギーといった分野の世界の問題を解決するアプリを開発するコンテストを開催することになりました。目的は携帯を使って世界の低所得層者を援助することです。(3月8日ボストングローブ)

先日のハルトプライズ でも提案されていましたが, どんなに貧しい所でも、携帯電話は普及しています。水を得るのが難しくても、携帯はあるというのが現実なようで、電気やガスが通る前にインターネットが通じる可能性という事を考えると、アプリで問題を解決するというのは十分あり得る話です。パネッタさんはクリントン元大統領がスピーチでモバイルのアプリが2010年のハイチの地震での救助やその後の復旧に役立ったというのをきいてこのアイデアを思いつきました。

このコンテストには18歳以上の人も参加できます。18歳以上なら実際のソフトを作る必要がありますが、13〜17歳の子供達はアプリを作る必要はありません。彼らはそれがどのように機能するのかというアイデアとスケッチがあれば参加できます。賞として、iPadエアーがもらえたり、IEEEのエンジニアがそのアプリを実際に作るのを手伝ってくれたりします。

アプリコンテストはIEEEが発展途上国での国際プロジェクトを援助するためにクリントングローバルイニシアティブの協力をえてたちあげたApp-E-Feat(アップイーフィート)というサービスに注目してもらう為に、そして又、ソフトウエアのエンジニアを育てる為にデザインされたものです。パネッタ学部長は発展途上国やアメリカ国内でも広く問題を解決する為にモバイルのテクノロジーは使えると思っています。IEEEには40万人のエンジニアがおり、2月の中旬には500人のボランティアが集まりました。

コンテストに、現状興味をもっているのは女の子が多いそうです。
子供たちは人間関係や環境を意識しています。
友人関係を良好に保てるように、関係が悪くなりそうなら警告サインをだしてくれるアプリや、環境問題も人気のあるテーマです。例えばグーグルマップ上で清掃されるべき場所が示されるアプリとかに注目が集まっているようです。

App-E-Featコンテストは5月19日が締め切りで6月20日に受賞者が発表されるとのことです。

電気工学の分野では女性は圧倒的に少ないのですが、女性の学部長が先頭にたつことで、女の子達も敷居が高くなく参加できるのかもしれません。
確かに子供の視点って、余計な邪心がないので事の本質をついていたりします。子供心のある、単純にこんなのあったらいいな、っていうものが世界をよりよいものに変えていく可能性は十分にあると思います。いいアイデアとソフトウエアを作る能力があれば、中学生でも世界をかえることができるということを感じられる取り組みは子供に夢を与えることになりそうです。

コーディングを習うと数学の成績がよくなるのか?

この1ヶ月くらいの間にいかに、子供達にコーディング(プログラミング)を習わせるかという記事をいくつもみています。それは教育現場からの視点だったり、労働市場における視点からだったりするのですが、どっちにしても、市場がプログラマーを必要としていることには変わりはないのかな、という感じです。この流れはしばらく、続きそうです。

12月16日ボストングローブ紙

オバマ大統領が、子供達に、”携帯電話で遊ぶだけでなく、プログラミングをしてごらん!”と、プログラミング(コーディング)を推奨するプロモーションビデオで語っている。code.org というNGOがオバマ大統領や、その他有名人達が、子供達にコンピュータサイエンスのクラスをとることがどれだけかっこいいことなのか、伝えているのだ。アップルストアもこれを後押しして、無料のコーディングワークショップを行った。アメリカ国内でのコンピュータリテラシーを改善する必要だという認知度をあげて、1時間のコーディングの授業をしたことで、次のザッカーバーグやビルゲイツが増えるかといえばそういうことでもないだろうが、大学でプログラミングのクラスをとる人が増えて、卒業した時に、需要の高いスキルをえることができるかもしれない。

それ以上に、小、中学校である種のプログラミングスキルを学んだ子供は標準の数学のテストの点数が改善した。テック関連の教育者は現在どの、プログラミング言語と学校のカリキュラムが有効なのか国内の公立学校に普及させる為に調べている。

ブリガムヤング大学のライト研究員がユタ州の中学校で課外授業として週2回プログラミングの基礎を教え、数ヶ月後、代数で使われる変数や関数の分野では明らかに点数があがったという結果を出している。
ライト氏は2014年からコンピューターサイエンスのプログラミングを小学校から高校まで教えることになったイギリスのように、技術に対する恐れを減らし、子供たちに若い時から慣れさせたいと思っている。
しかし、アメリカの場合、州によってカリキュラムが違うので難しいと思われる。全米の90%の学校ではプログラミングの授業を提供していない。

マイクロソフトの元コーダーで、現在ハーバード大学で代数教育に関する博士課程をしているエマニュエル シュナンツアー氏は、“プログラミングが子供達が問題解決をしたり、抽象的な考え方をするのに役立つということを証明しようとしてきた歴史があります。そして研究では満足のいかない結果におわっています。”

シュナンツアー氏はブートストラップと呼ばれる、代数と幾何の原則をビデオゲームの為にコードを書く事で、12歳から16歳の子供たちに教えるカリキュラムを開発した。マサチューセッツ州の7つの学校と全米で数十校が、代数や代数の準備コースとして8、9年生(中学2、3年生)の数学の授業に、この20時間のコースを取り入れている。

ライト氏、シュナンツアー氏はプログラミングの授業をとる前と、とった後に数学の成績がどう変わるかを調査している。
子供達にプログラミング言語を教えて、魔法のように数学のスキルがあがるということではない。プログラミングにおいて習った機能が、どのように数学の授業でも使われるのか、先生ははっきりと指摘しなければならない。

そして、本来それはとても複雑な過程である、なぜなら、あるプログラミング言語では、“x=x+1”というコードがあり、それは代数で考える“x=x”という概念とは、違うし、それに、高校の数学の先生はプログラミングを教える技能をもっていない。

ブートストラップが使うプログラミング言語は数学の方程式と一致するようになっておりカリキュラムはNGOのウェブサイトで無料で手に入る。ただし、学校は先生を訓練する為のワークショップには費用を支払わなければいけない。
シュナンツアー氏はこの6年間調査してきたが、もっと沢山の数の学生の調査をする必要があるという。

日本のプログラミングの授業はどうなるんでしょうか。英語を習うように “言語” として、とらえるのでしょうか、それとも、アメリカの例のように ”数学” という観点からアプローチするのか、それとも、ワードやエクセルを習うようなカテゴリーで習うのか。それによって結果もずいぶん違ってきそうです。

注:この記事ではコーディングと、プログラミングを同じ意味で使っています。

参考
代数はなぜ世の中に必要なのかを、コンピュータープログラミングのコースで教える取り組み
ブートストラップはダウンロードもできます。
http://getbootstrap.com/