結びの言葉:物作り(ロボット作り)とプログラミング

 連載も今回が最終回となりました。ロボットを作るというお題を通して、プログラミングだけでなくハードウエアのことも同時に楽しみながら学んでいただくことがこの連載の目標でした(図31)。いかがだったでしょうか?

図31●完成したラズロボ

 最近は小さい子供でも簡単にプログラミングを学べる環境が整っています(図32、33)。このように、誰でも簡単にプログラミングを学べるようになったことはとてもよいことだと思います。しかし、プログラミング中心の学びは、どうしても抽象的な「頭だけの学び」に偏りがちです。ここに、ラズベリーパイが登場したのは幸いでした。ロボットの製作のようなリアルな物作りの視点を絡ませることが可能になり、リアルな質感のある「身体的な学び」の道が開けたからです。

図32●試行錯誤する筆者の娘の理乃と香乃
図33●ロボット用プログラムの動作を確認する理乃

 プログラミングでミスしてもPCから煙が出てくることはありません。しかし、物理的な実体のあるハードウエアでミスをすれば、LEDが過電圧で壊れる、抵抗から煙が出る、ブレッドボードが熱で溶ける、部品が熱破壊する、はんだごてでヤケドするといった、リアルな失敗につながります。しかし、それらの失敗は次の大きな成功につながる意味のあるものです。

 「理論的には問題ないはず(頭の中では動くはず)」思っていても、リアルな世界ではうまくいかないことが起こるものです。それは、リアルなものには物理的な限界があるからだったり、理論的な世界(「A=B、B=C、よって、A=C」という世界)の中では存在しない時間的な因果関係(遅延など)への配慮がリアルな世界を操作するときには不可欠だという感覚が足りなかったりするためです。リアルな世界で何が起きるのかという感覚は、頭だけの学びでは決して身に付きません。どんなに上手な泳ぎ方を本で学んでも、実際に泳いだことがない人は泳げないのと同じです。

 向き合う対象に対して身体的な感覚がない人(リアルな世界の本質を知らない人)はテクニックしか学べません。どんなことにも詳細があります。大小さまざまなリアルなトラブルを乗り越え、じっくり時間をかけながら一つのロボットを作り上げることをぜひ経験してみてください。きっと、新しい世界が開けるはずです。


瀬谷 啓介(せや けいすけ)
Double Bind(ダブルバインド)代表取締役社長
「アジャイルソフトウェア開発の奥義」「まるごと学ぶiPhoneアプリ制作教室」 などソフトウェア・プログラミング関連の著書・訳書多数。オンラインIT動画学習サイト「zero2one」を運営。幅広くIT教育に関わる。日本TI半導体グループ技術主任、日本AMD次世代製品開発センター長、 フィルモアアドバイザリーCTO・執行役員などを歴任。小型飛行機免許所有、理論物理学学士、物性物理学修士。