2019年8月14日水曜日

子供用プログラミング教材まとめ

子供用プログラミング教材が増えてきたので、思考整理も兼ねて、まとめました。 内容は日々更新しており、今のところ最終更新は 2021-09-03 です。

なぜ子供用プログラミングを学ぶのか?

まず第一になぜ「子供用」と分けられているかというと、現場のプログラミングをいきなり子供が学ぶのは、結構キツイからだと思います。 その解決策として、ビジュアルプログラミングが採用されるのが多くなっている感は正直あります。 確かにタイピングがいらないし、英語もいらないし、文字もほとんど打たなくて良いし、高度な文章理解能力もいらないし、リファレンスもいらないので、だいぶハードルが下がる。 良いことです。

ビジュアルプログラミングは幼少期からITを先取りするためには必須に近いと思います。 先取りは世界的にどんどん早くなっています。取り組んでいる内容は、PDF: 諸外国における プログラミング教育に関する調査研究(文部科学省)にまとまっているので、読んでみると面白いです。 非常に良い資料で、この資料を読むと、日本の子が何をすべきかすぐにわかると思うし、大人は回答が出せないといけないと思います。 特にインドが凄まじくて、小学生で日本の大学生レベルに到達しそうな勢いです。 これに追いつくのは普通にやっていたら絶対無理なので、ビジュアルプログラミングによる先取りは有効と思います。 日本のように英語との親和性が低い国だと、特に。

ビジュアルプログラミングについて一番まとまってるのは Wikipedia のビジュアルプログラミングのページ と思うのですが、 このページは、実際どれが一番流行っているか、どのような製品/サービスがあるかは載ってません。 そこでビジュアルプログラミングを想定した製品/サービスごとに、最も使われているものを調べ、触ってもみました。

世界のビジュアルプログラミング教材

1. Code.org

現在ビジュアルプログラミングで最も有名なのは Code.org です (4億人〜)。 歴史は浅いですが、世界中の名だたる企業の支援により、2013年から一気に伸びています。 Hour of Code という仕組みでイベント的に行われるせいもあってか、Google Trends などで調べると、まだ後述する Scratch のほうが有名です。 Code.org は実際のプログラミングでも利用頻度の高い JavaScript コードに変換でき、体系的に学べるのが良いところです。 私はとてもよくできた教材と思っています。



2. Minecraft

2番目に有名なのは Minecraft です (1億2000万人〜)。 Minecraft 自体はただのゲームなのですが、ビジュアルプログラミング言語や Python などの実用言語と連携して遊べるので馬鹿にはできません。 ただ今のところプログラミング言語との連携は、設定も環境も面倒なのは難点かなあ。 「プログラミング思考」を学ぶためや「PC/IT製品に慣れる」ために利用するなら、初期導入としては面白いかも、とは思います。 ただプログラミングと関係ないところでハマってしまう時間が増えすぎるので、私は使わないかなあ。 PC版とiOS/Android版では値段が違い、iOS/Android版のほうが安いです。教育用バージョンも (一応) あります。


Google Play で手に入れよう


3. Scratch

歴史が長く、3番目に有名なのは MIT の開発した Scratch です (3000万人〜)。 日本だとScratchが一番よく使われてる気がします。 サンプル数が非常に多く、様々なサービスや製品と連携しやすいのが利点ですが、導入説明が少ないのは難点です。



4. Codemao

4位は中国のWebサービスである Codemao です。 利用者数は具体的な数字が書かれていて、執筆時点では中国で7120校の採用があり、2063万人が使っているそうです。 2015年3月に会社設立でこの速度は、恐ろしいものがある。 登録制なので中は見れませんが、ハーバードから教員を招いていて、カリキュラム付きの専門コースがあるみたい。 本格的だなあ。

ところで中国の 0-14 歳人口は 2.35 億人ほどと言われていますので、中国の子供たちのうち最低 8% がこの高度な IT 教育を受けているという事になります。 もっと現実的に考えると、中国は沿岸部の人口が51%と言われており、今も増えているものと思われます。 これを考慮すると、沿岸部の 20% くらいの子供たちが最先端教育を受けていると予想できます。
数字を見ていても、中国は「勝つための教育」をしている国だとよくわかります。 日本もようやくプログラミング教育が始まりますが、香港ではプログラミングが第三外国語になっていますし、中国も凄い速度で進化しています。 世界の速度感、規模感、クオリティがいかに凄いかよくわかるかと思います。



5. mBot

5番目に有名なのは、おそらく mBot です (450万人〜)。 中国発のロボット製品で、そのコーディングにビジュアルプログラミングを利用しています。 最近は体を使ったりロボットを使って学ぶ、フィジカルプログラミングや物理コンピューティングという言葉が出てきましたが、その中で1番有名なのが mBot になると思います。 mBotは日本ではなかなか手に入れることが大変なのですが、まあまあ安い割に機能が豊富なのが特長です。 ソフトバンクが色々やってるみたいなので、そのうち簡単に手に入るようになるかも。 今のところ mBot (左) と、拡張版の mBot Ranger (右) の、2つのバージョンがあります。




6. レゴ®マインドストーム, レゴ®ブースト, etc.

6位はレゴシリーズです。 レゴの人口は4億人と言われていますが、ビジュアルプログラミングのできるレゴ®マインドストーム のユーザは 200万人 です。 思っていたより少ないのは知見でした。 レゴ®マインドストームは結構お高いのですが、最近はレゴ®ブーストという廉価版も出ています。 レゴ®ブーストmBot は同じくらいの値段なので、どちらを取るかは難しいところ。 レゴは他にも教育機関向けの WeDo などのシリーズもあります。




7. micro:bit

7位は micro:bit です (100万人〜)。 様々なセンサーを使って遊べる製品です。執筆時点ではバルク品だと2,160円で購入でき、日本でも簡単に手に入ります。 ケーブル類や電池類を買おうとすると意外と高いので、正規品で良いように私は思います。 いずれにしても非常に安いのに、かなり色々なことが、非常に簡単にできるのが特長です。 Python コードに変換できるのも良い点だと思います。





番外

ビジュアルプログラミングに閉じず、教育に利用できる製品としては Raspberry Pi (通称: ラズパイ) も有名です (1100万人〜)。 ラズパイは小型PCとも言えるし、拡張可能なIoT製品とも言えます。 似たような製品はたくさんありますが、知名度の要因は、手頃な価格とLinux OSが動くことにあると思います。 Raspberry Pi は一定以上のレベルがあれば良い教材とは思いますが、完全な素人の子どもにはハードルが高いです。 利用用途のよく似た micro:bit のような手軽さはありません。 またどのように使うかで、パーツも選ばないといけないし、購入の仕方も大きく変わってくるので、教える側も買う時に相当悩むでしょう。 Raspberry Pi そのものにはビジュアルプログラミングは付いていませんが、組み合わせることはできるので、いちおう候補には挙がるのかな…。



Linux を学ぶなら Raspberry Pi のほうが良いですが、電子工作を意識したビジュアルプログラミングをしたいなら、Arduino は良い候補かも知れません (3000万人〜)。 Raspberry Pi より多いのは意外でした。 BlocklyDuino というエディタでビジュアルプログラミングができるのは、Raspberry Pi より良いところです。

Arduino は様々なセンサーキットが売られているのですが、種類があり過ぎて選ぶのが大変になってる。 欲しいものだけ選ぶほうが良いかも知れませんが、慣れている人じゃないと相当大変だろうなあ。 また Arduino でも Raspberry Pi でも、電子工作はいざ製品を組み合わせようとすると、どうやっても電流や抵抗の知識が必要になります。 私のようなソフトウェア人間だとここが面倒に感じます。 ソフトウェアな人は電流や抵抗を意識する必要がまったくないので、習う必要性をあまり感じない。 このへんがソフトウェア/ハードウェアの適正を分ける境界線なのかも。 やはり敷居は高いと思います。




8. Blockly

8位以降は正直よくわかりません。日本に閉じていると、今のところ数万人の採用が限界なので、やはり海外製のほうが規模は大きくなります。 何となくの予想では Blockly が有名そうです。 BlocklyCode.org の前身とも言えるサービスなので、今のところ Blockly そのものを触る必要はなさそうですが、Google らしさをどこかで出してくる可能性はあります。 その1つの可能性は、Project Bloks です。



9. p5.js (Processing)

コードを書かないことがビジュアルプログラミングの前提な気もするのですが、ほんの少しのコードでプログラミングできる言語はたくさんあります。 その条件で一番有名なものは p5.js でしょう。 コーディングのファーストステップとしては、非常にわかりやすい言語だと思います。 なぜ取り上げたかと言うと、採用数が大きそうで、Code.org が変換する JavaScript コードとも親和性があるからです。 ビジュアルプログラミングを学ぶ上では、このような発展性の考慮も重要と思います。




その他たくさん

他にもたくさん製品/サービスがあるので、特に参考になったリンクをまとめます。 ただ私は発展性があり採用経験も豊富な、上記製品/サービスが良い気がしている。 色々理由はあるんですが、日本は後進国なので、間違った脚色を入れたものではなくきちんとプログラミングそのものを学ぶ教材を採用して欲しいんですよねえ。
あまりにも製品/サービスが増えてきたせいで、全部取り上げるのは煩雑になるだけに感じます。 性能が良くて安いとか、高機能で汎用性があるとか、何らかの特長がないと採用は難しいと思う。 iOS/Android 上で無料で使えるアプリもだいたい試しているつもりですが、特におすすめはないかな。 色々触ってみて感じるのは、適当にガチャガチャやったり真似してればできてしまうものと、 ループを使ってできると簡単というものは頭の使い方がぜんぜん違う点です。 前者はものづくり、後者はプログラミングなので、後者を意識したもののほうが良いんじゃないかな。

私が特に面白そうと思ってる製品/サービスを取り上げてみると以下です。 規模がわからないので大きくは取り上げないですが、特長が際立っているものです。



日本のビジュアルプログラミング教材

以降は日本で利用されている言語も紹介したいと思います。 製品に関しては上記リンクを参照頂くとして、無料のものだけを取り上げます。

10. ドリトル

おそらく日本製+無料で一番使われているのはドリトルで、小学校での導入事例もあります。 日本語プログラミングとビジュアルプログラミングの両方ができるのが特長です。



11. プログラミン

プログラミンは文部科学省が作った、お手軽なビジュアルプログラミング言語です。 Flashのため更新予定はなさそうなのが残念ですが、私はよくできたツールだと思っています。



12. MOONBlock (前田ブロック)

MOONBlock は、秋葉原リサーチセンターで開発された言語です。 前田ブロックという名称の時期もあったようです。 UIが独特。

13. Viscuit

Viscuit は、ビジュアルプログラミングとはまた毛色が違った、簡易お絵描きツールです。 最近のUIとはかなり異なっていますが、ビジュアルプログラミングの一種とは言えそう。 海外にもお絵描き専用のビジュアルプログラミングはいくつかあります。



ビジュアルプログラミング以外にも、ゲームで何となくプログラミングを学ぶアプリや教材もあります。 短時間ならゲームも良いと思います。 ただ最終的にプログラミングに繋げるためには、コーディングを想定した学習にする必要がある。 そう考えるとビジュアルプログラミングは必須だし、シームレスにコーディングに移行できる基盤も必須に感じる。 将来を見据えてやるかどうかの差は大きいと思います。

0 件のコメント: