일을 하기 위한 일은 항상 옳다
유닉스의 탄생이란 책을 읽고 가장 감명깊었던 구절이 있다.
전처리기를 만드는 건 항상 옳다!
전처리 작업이란 얼핏 생각해보면 비효율적일 것 같다. 뭔가 요령 피우는 것 같기도 하고, 그거 할 시간에 직접 작업을 치는 게 맞다는 생각도 든다. 하지만 사실은 그렇지 않다.
무엇이든 반복해야 하는 일은 자동화할 수 있다. 어떤 일을 반복할지에 대한 개념을 잡아야 하기 때문이다. 그러한 개념은 문자열, 배열 같은 기초적인 프로그래밍 개념으로 환원할 수 있다.
우리는 물리적인 세계에서 일하는 것에 너무 익숙해져 있어서, 전처리가 비효율적이라는 터무니없는 착각에 빠지기 쉽다.
우리가 회사에서 하는 거의 모든 사무적인 작업은 상태 다이어그램으로 나타낼 수 있다. 할 일이 그저 특정 파일의 내용을 맘속으로 정해둔 규칙에 맞게 정리하는 것 정도라면, 더욱 그렇다.
당신이 해야 하는 일은 그냥 프로그램으로 당신이 할 일을 표헌하는 것이다.
전처리 작업은 보통 놀라울 정도로 단순하게 끝난다. 일 전체를 처음부터 다시 하는 것에 비하면 말이다.
한번 하면 그다음부터는 다시는 안 해도 되는 일을 해야 한다.
댓글