다음 글은 전재웅씨가 쓴 "익스트림 프로그래밍" 서평입니다. 저번의 남승희씨의 서평과 마찬가지로 프로그래밍의 문외한이 쓴 서평입니다.
나는 변화를 위해 책을 읽는다. 책을 읽고 나서의 내가 읽기 전의 나와 다름이 없다면 그 책은 나에게 가치가 없다. 매일이 멀다 하고 쏟아져 나오는 책들은 모두 독자를 변화시키겠다고, 감동을 안기겠다고 약속한다. 하지만 실상 그런 책들은 많지 않다. 이 책은 그 몇 되지 않는 책들 중 하나이다.
이 책은 XP (Extreme Programming)라고 불리는 컴퓨터 프로그래밍의 실천철학에 관한 책이다. 그리고 그 실천철학을 단 한마디로 요약하면 카이젠(改善, 지속적인 개선)이다. 그리고 거기서 얻는 기쁨에 대한 찬양이다. 이를 프로그래밍의 도요타 생산방식이라 부를 수도 있을 것 같다. 따라서 이 책이 지향하는 프로그래머는 큐비클에 갇혀서 혼자 기계적인 생산을 해내는 로봇이 아니다. 동료들과 인간적인 신뢰를 갖고 윈-윈을 추구하는 가슴 따뜻한 사람이다.
물론 이러한 프로그래머는 변화를 필요조건으로 한다. 그리고 이 책은 변화를 매우 감동적으로 서술한다. 단순한 프로그래밍을 넘어선 인간의 가치를 기반으로 그 가치를 고양시키기 위한 원칙과 실천방법을 매우 자상히 알려준다. 하지만 이러한 서술을 따라야 할 의무는 없다. 그리고 실천을 위해 메모해 놓을 필요도 없다. 그저 읽다 보면 가슴에 와 닿을 것이다. 그리고 저절로 기억이 될 것이고 실천의 모티브를 충분히 제공할 것이다. 나는 이 책을 읽고 내 방 벽에 스토리 보드를 마련했다.
이 책은 변화에 대한 속성완성법 같은 것을 제공하지 않는다. 이런 비법 같은 것은 대개 사기이기 마련이다. 오히려 이 책은 근본 가치를 품에 안고 아기걸음을 할 것을 권한다. 아장아장 걷는다는 것이 맘에 든다. 이 책에서 말하듯 우리는 인생에서 아직도 어린아이라는 점을 인정해야 한다. 혼자 잘난 척 할 수 있는 어른이 아니라 끊임없이 배워야 잘 할 수 있는 어린아이이다. 이 책에서 말하는 “완벽하다는 없고 완벽해지도록 노력한다만 있다”는 표현은 동양의 고전 <중용>의 “誠者,天之道也. 誠之者,人之道也(성실한 것은 하늘의 길이고, 성실하려고 노력하는 것은 인간의 길이다.)”라는 말과 일치한다.
혹자는 이 책이 철학책이 아니냐고 반문할지 모르겠다. 변화에 대한 추상적이고 이상적인 설명만 있는 것 아니냐고 말이다. 하지만 그런 걱정은 하지 않아도 좋다. 이 책은 철저히 프로그래머들을 위한 것이다. 프로그래머가 아닌 내가 책을 읽으면서 프로그래머들이 부러워졌으니까. 분명히 나는 이 책의 내용 중 상당수를 아깝게 놓쳤을 것이다. 그리고 그 상당수의 상당수는 프로그래머들이 실제 작업에서 실천할 수 있는 지침들이다. 일례로 이 책은 팀과 사무실 책상의 배치에서부터 다른 부서나 임원과의 의사소통 방안에 대해서도 자세히 설명하고 있다. 짝프로그래밍과 프로그래밍 일일배치에 관한 설명은 상식적인 프로그래머들에게는 충격으로 다가올 것이다. 컴퓨터 한대에 두 사람이 앉아서 개발하는 것이 더 효율적이라니 말이다. 촉박한 스케줄에 맞춰 프로그래밍하기도 벅찬데 프로그래밍 한 것을 매일매일 배치하라니 말이다. 물론 이런 상식에 대한 도전은 이 책을 읽음으로써 해소되고 변화의 기반이 된다. 이 외에도 수없이 많은 반가운 지침들은 이 책을 읽을 사람들이 발견할 기쁨들이다.
번역에 대해서도 반드시 언급할 필요가 있다. 나는 원래 영어로 쓰인 책은 한글 번역본이 있다 한들 사지 않는 것을 원칙으로 한다. 한국인에게 한글이 더 친숙하고 편한 것은 물론이고 나 또한 결코 예외가 아니다. 하지만 워낙 엉터리 날림 번역에 속다 보니 생긴 습관일 뿐이다. 이 책은 그런 점에서 매우 예외적이다. 나는 이 책을 읽으면서 원본을 보고 싶은 충동을 단 한 번도 느끼지 않았다. 역자는 단순히 영어를 한글로 옮기지 않았고 그 살아있는 의미체를 맛깔스럽게 새로 담구었다. 번역서에서 우리가 일상생활에서 쓰는 한글 구어체를 만나는 것은 무척이나 반가운 일이다. 또한 독자들은 자상하고 유용한 역자주를 빼놓지 않고 봐야 할 것이다. 이 책은 번역이 아닌 하나의 새롭고 온전한 저술이라고 봐야 옳다.
앞서 말했듯 나는 프로그래밍의 “프”자 도 모르는 풋내기이다. 하지만 전반적인 내용을 이해하는데 큰 어려움은 없었다. 프로그래밍의 세부적인 내용이 나올 때마다 나는 그것에 대응하는 내 인생의 요소를 찾아가며 읽었다. 나는 내 인생을 프로그래밍한다고 볼 수 도 있을 테니까.
프로그래밍을 하는 사람들은 반드시 이 책을 읽기를 권한다. 이를 통해 자기 자신과 주변동료를 사랑하고 함께 아장아장 변해가는 기쁨을 누릴 수 있을 것이다. 프로그래밍을 하지 않는 사람들도 함께 읽는다면 내가 느꼈던 기쁨을 누릴 수 있을 것이다.
개선의 여지가 항상 있다는 점에서 삶은 항상 희망적이다. 이 책은 인생을 극적으로(extreme) 이끌어가는(programming) 방법에 관한 이야기(explained)이다. 그것이 소프트웨어든 자기 인생이든 말이다.
-- 전재웅, 2006년 10월 8일
76년 서울 태생. 중앙대 경제학과 졸업. 아는 것이 별로 없다는 콤플렉스가 강하지만 특유의 호기심을 채우는 것을 낙으로 알고 살아가고 있다. 대학시절 정작 전공한 경제학에는 재미를 못 붙이고 셰익스피어와 동서양 철학을 즐겼다. 주변에 존경할 만한 사람이 많다는 것을 자랑으로 여기며 현재는 서울대학교 국제대학원에서 중국사회의 여러 이슈들을 공부하고 있다.