임백준의 소프트웨어 산책

임백준
한빛미디어

이 책은 오늘날의 프로그래머라면 누구나 한번은 들어 보았을만한, 그러나 설명해보라고 한다면 선뜻 조리 있게 설명하기는 조금 힘들만한 다섯 가지의 개념에 대해 에세이 형식으로 기술하고 있다. 객체 지향, 디자인 패턴, 리팩토링, 소프트웨어 공학, XML의 다섯 가지 장으로 이루어진 이 책에서 저자는 각 개념에 대해 간략한 역사와 실제 적용 사례, 비교적 객관적인 분석을 제시하여 독자들의 관심을 유도한다. 어느 정도 필수 개념이 된 객체지향에서는 기본 개념들을 차분하게 짚어보는 분위기이고, 다소 생소한 리팩토링이나 소프트웨어 공학의 Agile Programming, Pair Programming, TDD (Test Driven Development) 관련 부분은 기본 개념을 충실히 잡아주면서 앞으로 공부의 방향을 제시해 주고 있다. 책의 마지막에는 ‘프로그래머 K씨의 하루’라는 짧은 소설을 통해 문제 해결에 여러 가지 기법으로 접근하는 프로그래머의 탐구 정신과, 돈과 가정 등과 떨어져 살 수 없는 현실적인 이야기, 그리고 흥미로운 문제를 통해 구인을 하는 회사 (구글의 방식에서 모티브를 얻었다고 함) 등 ‘프로그래머’라는 직업을 가진 사람의 삶을 솔직담백하게 다루고 있다.

저자의 다른 책인 ‘누워서 읽는 알고리즘’과 ‘행복한 프로그래밍’을 읽고 좋은 인상을 받아서 새로 출시된 이 책을 주저 없이 골랐다. 다른 책들과 마찬가지로 저자는 복잡하고 원론적인 프로그래밍 보다는 편하고 가볍게 읽어 내려갈 수 있는 프로그래밍 책을 지향하고 있다. 글 잘 쓰는 프로그래머가 흔치 않기도 하거니와 어렵고 따분한 전문 분야의 내용을 ‘산책’이라는 제목에 걸맞게 쉽고 가볍게 풀어 쓰는 능력은 매우 존경스러웠다. 글을 어렵게 쓰는 것은 그 분야의 중수 정도의 사람이고, 그 분야의 진정한 고수라면 누가 읽어도 이해할 수 있을 만큼 쉽게 쓸 수 있어야 한다는 말에 어울리는 저자라고 생각한다.

다루고 있는 다섯 가지의 다양한 분야는 프로그래밍 세계에서 제각기 위치를 점하고 있다. 상대적으로 익숙했던 객체 지향과 소프트웨어 공학은 대부분이 관련 서적을 통해 접해본 내용이어서 가벼운 마음으로 읽었고, 리팩토링, 디자인 패턴, XML의 경우 이름만 알고 실제 접해본 경험이 없었기 때문에 재미있는 내용을 통해 흥미를 가질 수 있었다. 앞으로 읽어보면 좋을 책들을 권유하는 것이나 자신의 솔직한 경험을 일기처럼 기술한 점도 책을 읽는 것이 아니라 친한 선배가 옆에서 이야기해주는 느낌이어서 책의 분위기와 잘 어울렸다.

앞으로도 임백준이라는 저자의 책이라면 꼭 읽어보고 싶다는 생각이 든다. 딱딱한 번역투의 문체와 코드로만 가득찬 기술문서와는 사뭇 다른, 그러나 내용은 절대 비어있지 않은 좋은 책들을 펴내는 저자의 방향 설정이 좋다.

Author: mcpanic

어떻게 하면 보다 사람냄새 나는 기술을 만들 수 있을까 고민하는 Human-Computer Interaction (HCI) 연구자 / 컴퓨터과학자 / 새내기 조교수