中学の技術科で、Sony Spresense を用いた基板制御の学習を行っています。生徒たちは、LEDの点灯を制御するプログラムを書き、コンパイルを経て基盤に書き込みます。そして、マイクから入力した音の強さに応じて光り方を変える制御にも挑戦しています。一見すると、LEDが光るだけの単純な実習に見えるかもしれませんが、その背後には「社会を動かす原理」が縮図のように存在していると私は考えています。
まず、コードを書くという行為は、抽象的に描かれた設計を出力する行為です。そしてコンパイルという工程を通して、その論理は機械語へと変換され、基板に書き込まれる。ここで生徒たちは、「命令は正確でなければならない」という厳密さに向き合うことになります。エラーはエラーですが、それは単なる失敗ではなく、設計の不整合を知らせるサインであり、エラーがかえるからこそ次の手を考えるきっかけをいただくことになります。こういったこのプロセスそのものが、大事だと思っています。
さらに、音声入力によって光を変えるプログラミングは、センサー制御の基本構造を知ることになります。マイクが音を拾い、アナログ信号が数値化され、閾値を超えたときに出力が変化する。これは自動ドアや防犯センサー、音声認識機器と同じ原理です。「社会の仕組みを構成する最小単位」を扱っています。言われたことをただ「やる」ことが本当の意味での基礎基本ではなく、「なぜ?」という問題や疑問と対話しつづけるプロセスによって、より深い基礎基本にアプローチしていくことができます。
この体験は、単なるプログラミング技能の習得ではありません。ブラックボックス化したデバイスや一般生活にも存在する気づかないくらいに当たり前で便利なものの前に、ただ利用者でいるのではなく、設計と改善を通して理解し、次代の商品やサービスを生み出す重要な原体験となっていると思います。(技術科 沼田 和也)
参考)
変形型月面ロボットによる小型月着陸実証機(SLIM)の撮影およびデータ送信に成功