冒頭に載せた動画だ。イーロン・マスクがスターシップに関する計画を語っている動画である。
今年中に6基のブースターとスターシップを建造し、
来年までに空中で機体をキャッチする「メカジラ」発射台も4基建設する計画だという。
そして今年中に「メカジラ」で機体をキャッチすることを試みるという。
今年の上半期に自分が取り組んできたことを振り返りながら、この動画を見て彼らはどうしてこんなに短い時間でこんなことができるのだろう?という思いが湧いた。
(もちろん規模や他の要素は異なるが、聞くだけでも驚くべきことだ。)
シンプルさこそ最も難しい

第3世代ラプターエンジン
動画で紹介されたように、ラプターエンジンも第3世代まで登場した。画像を見るだけでも、見た目がかなりシンプルになったことが分かる。イーロンが言及したところによると、外見がシンプルに見えるだけでなく、実際にも多くのものを単純化したという。
それだけ多くのcomplexityが隠されているのだ。そのためにヒートシールドも取り除き、機能を内部に統合したという。
2021年当時のインタビュー。
普段から語っていたエンジニアリング原則がよく表れている事例だと思う。
よく翻訳されたものを見つけたので添付する。
航空宇宙工学とプログラミングは異なるが、開発者でもあったイーロンのエンジニアリング原則は、開発者にも適用できる原則だと思う。
それぞれの項目も個別に重要だが、上記の原則には順序が重要だという。
開発をするとき、アルゴリズムを解くとき、最初から完璧な何かを作ろうとして苦戦することが多い。 今振り返ってみると、いくつかの理由があったように思う。
- すでに完成されたコード(ライブラリや過去のコードなど)を見て、最初からそのような完成された形がすぐに生まれるという錯覚
- 完璧なコードを書こうとするあまり、無限に時間を費やしてしまうこと
シンプルなコードには、より多くの思考とエンジニアリングが凝縮されていると思う。
シンプルさがベストだとは言い切れないが、そういったコードはいきなり生まれるのではなく、思考と時間が圧縮されながら生まれるのではないだろうか。
複雑なコードは悪いものだ?
まだプロセスを経ていない状態だと考える。
複雑なコードは悪いものではない。
少なくとも我々はそう考えるべきだ。
複雑であるという現在の状態に囚われるのではなく、シンプルにしていく過程に集中すべきだ。
複雑さを恐れず、その過程に集中し、楽しもう。