행복한 프로그래밍이라는 제목에서 느낄 수 있듯이, 이 책은 프로그래밍하는 행복을 공유하고자 하는 저자가 프로그래밍에 대한 방대한 배경지식을 가지고 쉽게 풀어쓴 교양서이다. 난이도는 크게 어렵지 않으며, IT에 흥미가 있는 사람이라면 누구나 쉽게 읽을 수 있다. 가볍게 읽을 수는 있지만 결코 가벼운 내용들은 아니며, 내 경험상 기술 면접 전에 이 책을 봤다면 몇 문제 더 맞췄을 법한 기본적이지만 핵심적인 내용들도 다수 포함되어있다.
이 책의 장점은 프로그래밍에 관한 다양한 이야깃거리와 비교적 짧게 구성된 챕터들이 독서하는 내내 지루함을 느끼지 않게 해준다는 점이다. 매번 엄청난 두께의 기술서적을 질려서 한권도 독파하지 못하는 자신을 한심하게 여기고 있을 컴퓨터 전공자들에게 오아시스가 되어줄 것이다. 또 다양한 주제(알고리즘, 암호화기법, 인터넷의 역사 등)로 이야기를 풀어가기 때문에 재밌게 읽을 수 있어서 매너리즘에 빠져있던 경력자들에게는 '내가 처음 프로그래밍을 접했던 시절'에 대한 행복한 기억을 떠올리게 해준다. 프로그래밍 철학에 대한 이야기도 담겨 있어서 나의 코딩스타일에 대해 한번쯤 고민해 볼 여지도 남겨준다.
다만 한가지 아쉬운점이라면 2003년에 출간된 본판에 대한 개정판으로써는 부족함이 있지 않나 싶은 생각이 드는 점이다. 최근에 화두가 된 인공지능이나 빅데이터같은 트랜디한 내용들은 담겨있지 않아 약간 구시대적인 대학교 교양서같은 느낌을 주게 한다. 군데군데 덧붙인 2016년의 저자가 미래에서 쓴 덧붙임 말로 만족하기에는 개정판을 날로먹은게 아닌가 하는 아쉬움이 남는게 사실이다. (물론 비트코인 등에 대한 이야기가 나오긴 하지만 충분하지 않다.)
그럼에도 불구하고 내가 이 책을 주위사람들에게 추천하고 싶은 이유는 프로그래밍에 대한 이야기를 이렇게 재밌게 읽을 수 있게 풀어낸 저자의 필력에 감탄했기 때문이다. (이 분 다시보니 7가지 동시성모델 번역하신 분인데.. 그 책 읽을 때는 솔직히 잘 읽히지가 않아서 역자를 탓했던 기억이 있다. 오타도 많았던 기억이..) 물론 버그와 인터넷의 역사라던가 알고리즘에 대한 이야기는 인터넷만 조금 뒤져도 나오긴 하지만 자신의 업무상 에피소드와 무협소설(!) 비유까지 들어가며 쓴 이 책을 나는 재미있게 읽었고, 다시금 개발서적들을 열심히 읽어보고싶다는 동기부여와 프로그래밍 하는 행복감에 대해 생각해 보게 되었다. 저자가 쓴 대살개문(대한민국을 살리는 개발자 문화), 나프다(나는 프로그래머다), 누워서 읽는 알고리즘들도 시간이 나는대로 읽어볼 예정이다.