서두에 붙여둔 영상이다. 일론머스크가 스타쉽 관련해서 계획을 이야기하는 영상이다.
올해안에 6개의 부스터와 스타쉽을 건조하고,
내년까지 공중에서 기체를 잡는 ‘메카질라’ 발사대도 네개나 건설할 계획이라고 한다.
그리고 올해안으로 ‘메카질라’로 기체를 잡는 것을 시도할 것이라고 한다.
내가 올해 상반기 진행해온 일들을 돌아보면서, 이 영상을 보자 그들은 어떻게 이렇게 짧은 시간에 이런 일을 할 수 있을까?
라는 생각이 들었다.
(물론 규모와 다른 요소들이 다르지만, 듣기만해도 놀라운 일들이다.)
단순함이 가장 어려운 것
영상에서 소개되었듯이 랩터 엔진도 3세대 까지 나왔다. 이미지만 봐도 엄청 보기에 심플해졌다. 일론이 언급하기로도 겉보기에 심플해보이지만 실제로도 많은 것을 단순화 하였다고 한다.
그만큼 complexity가 숨겨져 있다고 한다. 그러기 위해 heat shield도 제거하고 기능들을 내부로 통합하였다고 한다.
21년 당시 인터뷰.
평소 말하던 엔지니어링 원칙이 잘 들어나는 사례라고 생각한다.
잘 번역되어 있는 것을 발견하여 첨부한다.
항공우주공학과 프로그래밍과는 다르지만, 개발자이기도 했던 일론의 엔지니어링 원칙은 개발자에게도 적용할 수 있는 원칙이라고 생각한다.
각각의 항목들도 독립적으로도 중요하지만, 위의 원칙들에는 순서가 중요하다고 한다.
개발을 할때나, 알고리즘을 풀거나 할때마다, 처음부터 완벽한 무언가를 만들고자 고전할때가 많다. 지금 돌이켜보면 몇가지 이유가 있었던 것 같다.
- 이미 완성된 코드들(라이브러리, 이전 코드 등등)을 보면서 처음부터 그러한 완성된 형태가 바로 태어난다는 착각
- 완벽한 코드를 작성하려고 하다보니, 무한한 시간을 소비하게 되는 것
단순한 코드에는 더 많은 고민과 엔지니어링이 함축되어 있다고 생각한다.
단순함이 베스트라 말 할 수는 없겠지만, 그런 코드들은 바로 태어나는 것보단 고민과 시간들이 압축되어가며 태어나는 것이 아닐까 싶다.
복잡한 코드는 나쁜 것이다?
아직 프로세스를 거치지 않은 상태라고 생각한다.
복잡한 코드는 나쁜 것이 아니다.
적어도 우리는 그렇게 생각해야한다.
복잡하다라는 현재 상태에 집중하기 보다는 단순하게 만들어가는 과정에 집중해야한다.
복잡함을 두려워하지말고, 그 과정에 집중하고 즐기자.