
프로그래머 능률의 원칙을 정의했다. 가속, 집중, 자동화, 정식화는 프로그래머를 능률적으로 만드는 키워드이다.
1부 원리편, 2부 실전편으로 이뤄져 있다. 2부는 소프트웨어 설계와 디자인 방법론들을 이야기하고 있는데 이게 능률적인 프로그래머와 어떤 관계가 있는지 그다지 느껴지지 않았다. 그보다는 능률적인 프로그래머를 만들어 주는 가속, 집중, 자동화, 정식화를 설명한 1부가 마음에 들었다. 1부 내용을 쭉 이어서 해주면 더 배울 게 많은 책이 됐을 텐데, 이게 좀 아쉽다.
숙련된 목조 세공사의 작업실을 찾은 적이 있다면 여기 저기 놓인 많은 특수 도구를 봤을 것이다. 공작물 제조 시 목조 세공사는 바닥의 작은 나무 조각으로 공작물 일부를 임시로 떨어뜨리거나 고정 시키는데 이들 조각을 공학 용어로 ‘지그(고정구, jig)’나 ‘심(쐐기, shim)’이라고 한다. 소프트웨어 개발 시 우린 이런 소모성 보조재를 너무 적게 만들어 쓰는데, 이유는 보통 목조 세공사와 같은 개념으로 도구를 받아들이지 않기 때문이다.
다른 프로그래머를 예로 들 필요도 없다. 내가 바로 이렇게 하니깐. 확실히 소모성 보조재를 거의 만들어 사용하지 않는 편이다. 이런 소모성 보조재로는 간단하고 빠르게 만들 수 있는 스크립트가 제격이다. 파이프로 입출력을 엮어서 복잡한 작업을 간단하게 처리해버리는 유닉스 셸 스크립트(shell script)가 부러웠는데, 윈도에도 윈도 파워셸(Windows PowerShell)이란 근사한 게 있으니 소모성 보조재를 만드는데 적극적으로 사용해보려고 한다.
Continue reading »