도구를 계속 쓰다 보면 설명서에 있지 않은, 도구를 만든 사람이 의도하지 않은 방식으로 쓸 수 있는 때가 올 수도 있다. 프로그래밍도 여러가지 도구를 사용하는 기술이니만큼 언어나 툴의 근본을 이해하면 흔히 ‘매직’ 이라고들 하는 그냥 보기에는 신기해 보이는 일, 더 아래로 가면 ‘흑마법’ 이라고 하는 알고 다시 봐도 신기한 것들을 할 수 있게 된다.
하지만 도구를 그냥 계속 쓰는 것 만으로는 매지션이 될 수 없다. 엔지니어를 가르는 기준으로 매우 중요한 기준 중 하나가 마법사인가 아닌가인데, 아쉽게도인생은 실전이야! 마법사가 되는 퀘스트는 다른 사람이 도와줄 수 없다. 설명서에 있지 않지만 하고 싶은 것이 있어서, 도구의 동작 원리와 빈틈에 대해 살펴보고 스스로 길을 찾아내는 경험이 필요하다. 마법사가 되어야 마법을 쓸 수 있는게 아니라, 마법을 쓸 수 있어야 마법사다.
인터뷰를 볼 때, “오픈 소스 프로젝트 중에 필요에 의해 고쳐 써본 것이 있는가?” 를 자주 물어보는데, 잘 생각해보면 이 질문은 이 사람이 마법사인가 혹은 마법의 자질이 있는가를 보기 위한 것이다.
마법의 길은 항상 열려 있다.
물론 퀘스트가 완전히 맨땅에 헤딩하는 것 만은 아니다.
<- 이것과 계약해서 마법
소녀사가 될 수도 있고,
<- 이 비전서를 통할 수도 있다.
하지만 어느 쪽이건 무척이나 괴로울 것이다.
Comments