ロボティクスがソフトウェアエンジニアを成長させる理由

HKDI でロボティクスを長年教えてきた経験が、ソフトウェアの見方を変えた。モーションプランニングが教えてくれた設計の話。


制約が生む規律

ロボティクスは、制約の中で考えることを強制します。サーボには限界があり、センサーにはノイズがあり、リアルタイム制御には締め切りがあります。これらは言い訳ではなく、設計空間そのものです。

ソフトウェアの世界では、メモリを足す、サーバーを増やす、例外を握りつぶす、といった雑な逃げ道が残りがちです。ロボティクスはそれを許してくれません。

HKDIで教えて学んだこと

香港知専設計学院で教えていた頃、抽象的なソフトウェア概念に苦戦していた学生でも、物理システムと結びつけた瞬間に理解が進むのを何度も見ました。状態機械のミスでロボットアームが失敗する様子を見ると、状態という概念が急に現実になります。

コードにどう活かすか

今、私がソフトウェアを設計するときは次の問いを持ちます。

  • 締め切り: これが遅れたら何が起きるか
  • 状態: この瞬間、システムはどんな形か
  • 故障モード: 壊れるとき、どう壊れるか

こうした問いはロボティクスから自然に出てきます。そしてソフトウェアを着実に良くしてくれます。