Extremely Agile/General2007.10.13 00:42
블로그 "애자일 이야기"에서 달인이 되는 데 도움을 줄만한 책과 영화에 대한 글을 본 적이 있습니다. 그 글을 읽다 보니, 과연 나에게 그런 책이 있었나 하는 생각이 들더군요. 한참을 생각한 끝에, 저에게도 그런 책과 영화들이  있다는 것을 발견했습니다. 물론 저에게는 '달인'이라는 용어는 어울리지 않으니 '좋은 프로그래머가 되려면 읽어두는 게 좋을 책과 영화를 발견했다'고 말을 바꾸도록 하죠. :-P


1.

첫 번째 책은 "생각하는 프로그래밍"입니다. 추천하신 분 말대로, 뭔가 깨달음을 주고 무릎을 치게 만드는 명저더군요. 아직 다 본 것은 아니고 단기간 내에 읽을 수 있는 책도 아닙니다만, 프로그래밍 관련 서적 중 베스트로 손꼽히는 이유를 책장을 넘기는 순간 순간마다 느낄 수 있습니다. 이런 저런 C++ Idiom들이나 Effective XX 시리즈들에 질리신 분은 한 번 읽어볼 만 합니다. 프로그래머에게도 추천할 책이긴 합니다만, 연구하다가 좌절을 많이 겪은 연구자들, 논문을 읽기는 읽는데 도대체 breakthrough를 못찾겠다, 는 생각을 자주 하는 분들도 읽으면 좋을 것 같다는 생각입니다. 그럼 대체 이 책이 뭐가 좋다는 건가요?

이 책은 문제의 해법을 스스로 창조하기 위한 생각의 패턴을 가르쳐 줍니다. 그 이상은 스스로 알아내야 합니다만, 그래도 그게 어딥니까? :-P

사용자 삽입 이미지


2.

두 번째 책은 "Network Algorithmics"입니다. 네트워크 하드웨어 연구자에게 적합한 책입니다만, 네트워크 장비가 해결해야 할 이슈들에 조금이라도 지식이 있는 사람이라면, 이 책에서 분명 그 이상의 일반적인 교훈을 얻을 수 있을 것입니다.

이 책의 백미는 뭐니뭐니 해도 제한된 메모리와 시간 요구사항을 뛰어넘는 "longest prefix match"알고리즘을 장비에 탑재하기위해 수많은 개발자와 연구자들이 어떤 식으로 알고리즘을 조금씩 개선시켜왔는지를 보여주는 부분입니다. 모든 문제나 언제나 조금씩 해결되기 마련이라고 생각하는 분들은 그 이면에 어떤 사고과정이 개입되는지를 이 책을 통해 짐작하실 수 있을 거라고 믿습니다.

네트워크 공부를 하는 학생들이 생각하는 것 이상으로 좋은 책입니다.

사용자 삽입 이미지

3.

마지막으로 소개할 무엇은 책이 아니라 영화입니다. 제목은 "The Pursuit of Happyness"입니다.

사용자 삽입 이미지

사람은 누구나 행복해지고자 합니다. 프로그래머도 마찬가지입니다. 프로그래머는 프로그래밍을 통해 행복을 얻고자 하는 사람들입니다. 많은 것들이 프로그래머에게 기쁨을 줍니다. 코드, 프로그램, 자신의 성장, 그리고 가족들의 성장. 코드가 자라듯 프로그래머를 둘러싼 모든 것들은 조금씩 자라나고 프로그래머와 함께 성장합니다.

하지만 프로그래머도 사람인지라, 좌절을 겪습니다. 지금 생각해도 우스운 일이지만, 저는 B+ 트리를 보름간 디버깅해 본 경험이 있습니다. 그 보름간, 저는 밥먹는 시간을 제외한 모든 시간을 컴퓨터 앞에서 보냈습니다. 잠도 거의 자지 않았습니다. 아무도 어떻게 디버깅을 해야 하는지 알려주지 않았고, 몸은 물 먹은 솜 마냥 무거웠습니다. 모든 것은 그저 제 경험에 달려 있었습니다. 아마 그 때 좌절해 버리고 프로그래밍으로부터 등을 돌렸다면, 저는 끊임없이 저를 자극하는 이 재미있는 작업을 지금도 저주하고 있었을 겁니다. 하지만 저는 그렇게 하지 않았고, 지금은 스스로를 프로그래머라고 생각하는 사람이 되어 있습니다. (물론 썩 좋은 프로그래머는 아닙니다 -_-;;)

"The Pursuit of Happyness"는 프로그래머가 겪는 좌절을 어떻게 극복하면 되는지에 대해서는 알려주지 않습니다. 다만 그것을 극복한 사람에게 어떤 선물이 주어지는지를 조용히 이야기할 뿐입니다. 그런 의미에서는, 모든 사람들에게 도움이 될 만한 영화라고 할 수 있겠습니다.



Posted by 이병준

소중한 의견, 감사합니다. ^^

  1. 비밀댓글입니다

    2008.08.04 17:42 [ ADDR : EDIT/ DEL : REPLY ]