Structure and Interpretation of Computer Programs (2nd, Paperback) - Abelson, Harold/Mit Pr |
Wizardbook 또는 SICP 로 불리는 책 스터디를 시작한지 어언 3년을 넘어 4년 째 접어들고 있다. 시작은 이 글에서 비롯됐고, 한 때 열 명을 넘는 참여가 있기도 했으나, 지금은 디군님과 컴키드님과 나 세명이서 명맥을 유지해서 남들 대학 졸업하는 시간만큼 걸려서 겨우 끝을 냈다. 정확히 '끝' 이라고 쫑을 낸건 아니다만 내 마음은 이미 끝. 자체 종강 ㅋ.
일주일에 두시간씩 책을 읽는 다는 게 쉽지가 않은데, 확 몰아서 보는 것만 못한 것이, 올 때마다 매번 지나간 내용을 리마인드해야하고, 혹시 한 주라도 빠지거나 모임이 성사되지 않게 되면 그 다음 주에 기억을 떠올리기 위해 2시간을 전부 쓰는 일이 비일비재했기 때문이다.
먼저 SICP 에 대한 총평을 하자면, 생각하는 지평을 넓혀 준 책이라 할 수 있겠다. 함수형 언어를 접해보지 않았던 나로써는 이 책을 읽으면서 얻는 아하! 순간이 적지 않았다. 프로그래밍을 위해 생각하는 방식이나, 바라보는 관점에도 적지 않은 영향이 있었다.
책의 챕터 내용등을 설명하는 일은 무의미 할 것 같다. 얘기를 전해 듣는 것보다 직접 읽어 보는 것이 훨씬 큰 도움이 되고, 직접 읽는 거에 더해서 연습문제를 풀어보는 것은 배운 것을 내 것으로 만드는 빠른 길이다.
스터디원들이 푼 연습문제는 http://code.google.com/p/study-sicp/ 이곳에 모여 있다. 언젠가부터 별로 공유에 대한 필요성을 못 느껴 나는 별로 참가하지 않았는데, 책이 끝나가는 시점에서 돌이켜보면 그나마도 정리해 두는 편이 다음에 공부하시는 분들한테 도움이 되었을 텐데 하는 생각이 든다. 사실은 코드 공유 자체가 목적이 되기 보다, 그 전에 서로 풀이 등을 비교해보는 과정이 있었으면 하는 바램이 내심 있었으나, 제대로 표현하지 않았다.
국내에 번역서가 나와 있으나, 영어 텍스트를 읽는 데 큰 무리가 없다면 반드시 원서로 공부하는 것이 낫다. 원서 가격이 약 6만원, 번역서 가격이 약 3.5 만원으로 제법 차이가 나나, 그 값을 하고도 남음이 있다. 아니면 번역서를 구매하고, 웹에 텍스트 전문이 공개되어 있으니 비교하며 읽어도 무방하다.
프로그래밍에서 자신의 생각을 더욱 키우고 싶은 사람이라면 꼭 한번 읽길 권한다. 이 책을 읽은 다음엔 웬만한 컴퓨팅 개념에는 자신이 생길 것이다. 왜냐하면 이 책은 뭐든지 바닥부터 다 만들기 때문이다.
책 내용에 대한 조금 더 자세한 언급은 스터디원인 디군님의 글 을 참고하는 것이 좋을 듯.