洪民憙 (홍민희) 블로그

Programmer’s nirvana

요즘 드는 생각은, 프로그래머한테도 마음 수련 같은 게 필요한 듯하다는 것. 반성적으로 생각했을 때, 나를 비롯한 대부분의 개발자들은 성급한 최적화(premature optimization)이나 불필요한 추상화에 대한 욕구 따위가 존재하는데, 대부분 그것의 사적 동기는 그저 미학일 뿐이지만 겉으로는 여러 그럴듯한 근거로 포장되기 때문에 (그리고 스스로를 기만하기도 한다) 용인되는 것이다. TDD나 애자일에서 말하는 XP 같은 것들이 힘든 이유는 그것이 숙달의 문제이기 때문이기도 하지만, 어느 정도 욕심을 버려야 하는 부분이 있기 때문이다. 핵심 기능에 집중해야 한다는 거 나도 안다. 근데 나는 지금 거대한 성을 짓는 꿈에서 깨고 싶지 않다. 이게 모든 프로그래머를 괴롭히는 번뇌 같은 것이다.

프로그래머도 어디 산에 들어가 조금이라도 쓸데없는 추상화에 눈독들이는 순간 커널 패닉을 일으키는 환경에 가둬지는 고행이라도 하며 도를 닦아야 하는 걸까.