Book2009. 3. 14. 09:49

리팩토링 데이터베이스: 진화적 데이터베이스 디자인
Scott W. Ambler/정원혁 | 위키북스 | 번역서 | 2007-06-29
종합평점 
도서수준 
2007년 기술 생산성부문에서 졸트상을 받은 책으로 올해 초 원서와 여름에 번역서 2번을 읽었는데 감상이 다릅니다.
 
처음 읽었을때는 아주 황당했던 책으로 이봐~ 이런걸 누가 몰라. 초보적인 SQL이구만
(지금 생각해보니 파울러의 리팩토링을 처음 읽었을때도 같은 생각을 했습니다. )
몇장씩 챕터별로 나누어져 있었기 때문에 매우 빠르게 읽을수 있어 금방 읽고 치워버렸습니다. 
그런데 얼마전에 기존에 전혀 접해보지 않은 분야의 모델링을 하게 되었을 때
초기에 좋은 모델링을 하기가 얼마나 어려운가를 생각하게 되었습니다.
 
흔한 현실의 변명처럼 기초자료는 충분하지 못하고 참조가능한 예제도 없고
게다가 모델러 스스로가 익숙하지 못한 도메인에서 일할때 
기존의 지식과 규칙들은 그리 크게 도움이 되지 못하며
전혀 모르는 도메인 외계어와 의미를 알수없는 약어, 데이타들이 수백개의 표들로 이루어진 정보로 변해야 할때,
충분할만큼 완전하며 미리 예측가능한 ERD를 만드는건 매우 어려운 상황에서 무심코 다시 이 책을 읽게 되었을때
이책의 논리는 아주 합리적이며 이성적으로 보였습니다.
 
이전에 변수 이름 바꾸기 같은 리팩토링의 방법을 몰라서 안한게 아닌것처럼
진화적 데이타베이스의 SQL을 몰라서 안한게 아니었지만 책을 읽고 조금 더 많은 생각을 하게되었습니다.
 
 
하지만 리팩토링을 강력히 주장하는 XP의 약점중의 하나로 자주 지목되는
수행하는 사람의 질적인 문제로 다시 돌아가지 않을 수 없습니다. 
유명한 미국의 물리학자인 파인만은 어떤 교육방법이 기존 방법보다 더 낫다는 걸 증명하려면
실험이 새로운 교육방법을 주장하는 교사가 아닌 기존의 평범한 교사가 수행하여 비교해야 한다고 말한곤 했습니다.
 
왜냐하면 이미 잘 알고 있고 새로운 방법을 충분히 이해하며 기존 방법의 장단점을 분석하여 이해하는 교사는
어떤 방법을 쓰느냐와는 상관없이 기존방법에 비해서 비교실험에서 우위를 나타내는게 당연하므로
기존의 평범하고 대다수를 차지하는 평범한 교사가 잘 이해하지 못하는 새로운 방법으로 시도했을때 비교우위가 나타나야지
그 교육방법이 더 좋은 방법으로 말할 수 있기 때문입니다.
 이 경우 사실은 교사라는 사람의 변수에 의해 나타난 효과가,
x방법이라는 변수가 효과에 영향을 미친걸로 오해되기 쉽습니다.
 
이 책을 읽고 "DB모델도 유연하게 변경할수 있다"라고 생각하는게 아니라
"위 책에서 보듯이 DB모델은 언제든 수정가능하기 때문에 괜찮을 거다"라는 변명거리로 사용된다면,
대다수의 소규모의 팀으로 제작되는 소프트웨어에서
해당 프로젝트의 재앙에 이 책은 아마 기름을 뿌리는 효과가 될지도 모릅니다. 
 
다소 허망하지만
좋은 프로그래가 어떤 기법을 쓰느냐와 상관없이 좋은 프로그램을 만드는 것과 같이
좋은 모델러는 어떤 기법을 쓰느냐와 상관없이 좋은 모델을 만듭니다.
 
이 책이 좋은 모델러를 만드는데 기여할수는 있겠지만
책의 방법을 따른다고 "해당 프로젝트의 기간"내에서 좋은 모델이 만들어지지는 않을 것 같습니다.
 
마틴파울러의 리팩토링책이 그러했던 것처럼
단지 우리는 실수를 통해 더 빠른 피드백을 얻고 더 많은 생각을 하게 됨으로써
조금씩이나마 조금 더 나은 모델러로 성장하여 "다음 프로젝트에서는" 조금 더 나은 모델을 만들수 있을것입니다.

'Book' 카테고리의 다른 글

Ajax Design Patterns  (0) 2009.02.10
소프트웨어 컨플릭트 2.0 : 시대를 뛰어넘는 즐거운 논쟁  (0) 2009.02.10
프로그래밍 심리학  (0) 2009.02.10
추천 도서  (0) 2009.01.16
Javascript: The Definitive Guide  (0) 2009.01.11
Posted by bleujin
Book2009. 2. 10. 12:02

Ajax Design Patterns
ㆍ원서 | 2006-07-01
O'REILLY
Michael Mahemoff
만약에 Ajax in Action을 이미 읽고
좀 더 Ajax에 대해서 알고 싶다면 이 책을 추천합니다.
 
이 책은 아무런 정보없이 서점에서 무심코 꺼내들었다가 괜찮아서 읽게 된 책인데
상당한 퀄리티를 자랑합니다.
 
챕터별로 그루핑이 잘 되어 있으며 상당히 많은 레퍼런스를 자랑합니다.
 
개인적으로 책을 볼때는 책만 보는 버릇이 있는데.
이 책은 한 페이지에 서너번씩 책에서 소개해준 참고,예제,참조 등을 보느라 직접 브라우저에서 확인하는게 귀찮긴 하지만...
(그래서 읽는 속도가 많이 느려집니다.)
 
내용적으로는 초보적인 지식보다는 Ajax의 활용 패턴위주로 되어 있으며
비교적 단순한 Ajax Techical로 미처 생각치 못한 다양한 응용의 가능성을 보여줍니다.
(아마도 이책을 읽을만한 독자들 대부분은 이미 Ajax 참고 사이트 몇개를 알고 있겠지만 이 책은 그 이상의 세세한 응용 사이트를 보여주고 설명해 줍니다. )
 
참.. 제목이 같고 지은이가 같고 발행일와 페이지수도 비슷한걸 보면 같은책인 것 같은데..
표지가 다른 동일한 책이 있습니다.
Posted by bleujin
Book2009. 2. 10. 12:01
소프트웨어 컨플릭트 2.0: 시대를 뛰어넘는 즐거운 논쟁
ㆍ국내서 | 2007-01-03
위키북스
로버트 L. 글래스 I 박재호
위 도서의 다른 서평 보기 (3편)
몇년전 소프트웨어공학의 사실과 오해라는 책을 꽤 감명깊게 보았던 지라.
예약서적에 올라온 때부터 기대하고 있었습니다.
 
다만. 이책이 십몇년전에 쓰여졌다는 사실을 몰랐습니다-_-
 
생산성을 극단적으로 높일 수 없는 은총알은 없으며 그러함에도 굳이 하나를 찾아야 한다면 좋은 인력을 찾을 것, 그리고 그 외의 방법을 -이를테면 Case툴,4GL, 방법론 등등 - 선전하는 컨설던트 직함을 달고 있는 영업사원의 말은 적당히 흘려 들을 것..
.. 라는 거죠..
 
 
Chaos 이론에 긍정적인 견해를 가지고 있는 독자로서 저자의 의견에 상당부분 동의하지만 별다른 새로운 점이 없었습니다. (책이 나온 시기를 감안하면 당시에는 맨먼쓰의 신화와 같이 아주 독보적인 내용이었으리라 생각되지만 지금 시점에서 본다면... 입니다.)
 
 
이전의 수십년이 그러했기 때문에 앞으로의 수십년도 그러 할 것이다와..
이전의 수십년이 그러했기 때문에 앞으로의 수십년은 다를 것이다는
 
는 동일한 근거를 가지지만 결론이 전혀 다른 이야기를 하고 있습니다.
독자는 앞으로도 계속 프로그래밍질을 하며 그리고 로버트 보다 좀더 오래 살아남아-_- 시간이 이 둘 중 어느 손을 들어줄까를 흥미롭게 지켜볼 생각입니다.
 
이런 종류의 책은 눈에 잘 띄지는 않고 퍼센테이지도 그리 크지 않지만 인체를 구성하는데는 필수적인 무기질 영양분과 같은 책이므로 지하철이나 볕 좋은 오후에 가볍게 읽는 다면 도움이 되리라 생각합니다.
 
그러나 먹었다고 당장 에너지를 발휘하는 책이 아니므로 혹 이 세상의 모든 방법론 혹은 다른 어떤 새로운 것은 불필요해 라고 외치는건 너무 성급하다고 생각합니다. 최근에 이런 종류의 책이 많이 나오다 보니 오히려 이전과 반대인 걱정이 생겼다고나 할까요-_-. 대부분의 경우 적절을 뛰어넘은 광신은 위험합니다. 
 

아.. 박재호씨의 번역과 베타리더분들의 적절한 조합은 조엘의 책에서도 느꼈지만 아주 훌륭하다고 생각합니다.

 

'Book' 카테고리의 다른 글

리팩토링 데이타베이스 : 진화적 데이타베이스 디자인  (0) 2009.03.14
Ajax Design Patterns  (0) 2009.02.10
프로그래밍 심리학  (0) 2009.02.10
추천 도서  (0) 2009.01.16
Javascript: The Definitive Guide  (0) 2009.01.11
Posted by bleujin
Book2009. 2. 10. 11:56
프로그래밍 심리학
ㆍ번역서 | 2008-01-02
Insight (인사이트)
Gerald M. Weinberg I 조상민
많은 관리자들은 이해하지 못하거나 인정하지 않으려는 사실 중 하나는
프로그래머는 정해진 수치의 능력을 발휘하는 게임속 캐릭터가 아니라는 사실입니다.
 
삼국지에서 조운과 미방을 백번 일기토 시켜본들 조운이 질리가 없지만.
현실에서 프로그래머는 장비도 될수 있고 가끔은 제갈량이 될수도 있습니다.
 
아직도 많은 사람들은 단순히 포드식의 컨베이어 벨트의 기계적인 조립공으로 프로그래머를 다루고 있기에(이책은 무려 1971년에 초판이 나온 책입니다.)
이책의 "프로그래머는 기계를 조종하는 또 다른 기계로 취급되지 않는가"라는 의문은 아직 유효합니다.
 
저자의 말대로 프로그래밍은 사람이 하는 일이라는 당연하지만 현실에서는 인정받지 못하는 문제에 대하여 기술적인 문제로 해결하기 어려운 프로그래머의 고민이나 어려움에 대하여 -잘 쓰여진 고전이 흔히 그러하듯이- 문제를 제기하고 생각의 여지를 남겨두고 있습니다.
 
"개인의 성격이 프로그래밍에 끼치는 영향,
 프로그래머의 지능과 문제 해결 능력, 동기와 훈련, 경험이 프로그래밍에 끼치는 영향,
 프로그래밍 팀의 심리 등 프로젝트를 이끌어나가는 사람 사이의 관게뿐 아니라 코드와의 관계..."
 
어찌보면 IT와 어울리지 않을 심리학이라는 인문학 제목이 낯설지 모르지만
프로그래머 뿐 아니라 관리자, 아키텍트, 테스터 등의 다른 관점에서 읽더라도 좋은 책입니다.

Posted by bleujin
Book2009. 1. 16. 12:52


2007년 말쯤에 작성한.. 추천도서
그래서 2008년 이후에 발행된 도서는 목록에 없다 -ㅅ-

Javascript
- Javascript The definitive Guide(원서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200606220013
- Ajax Design Pattern(원서) - http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200605220008
- Ajax 인 액션, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200605180029


Database
- Beginning Oracle Programming(번역서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200209130002
- 데이터베이스설계와 구축, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200501150004, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200209040010
- Inside SQL Server 2000(번역서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200106190006
- 새로쓴 대용량 데이터베이스 솔류션 1, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200511220001
- 대용량 데이타베이스 솔류션 1, 2, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=199912220013, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200005220004
- 데이터 아키텍쳐 솔류션, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200310250001
- 이펙트브 오라클(번역서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200407060007
- SQL Performance Tunning(원서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200306190012

 

Java
- Beginning Java Object, , http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200112140007
- Java를 지배하는 핵심원리, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200303180003
- Java 언어로 배우는 Design Pattern 입문(번역서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200203130012
- Java 언어로 배우는 Desing Pattern 입문[멀티 쓰레디편](번역서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200303110010
- HedFirst Design Patterns(번역서),http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200508240010
- Effective Java(번역서), Bloch, 대웅미디어, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200305090002
- HeadFirst Servlets & JSP, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200504280002
- 유쾌한 자바 퍼즐러, Bloch, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200706110018
- 리팩토링(번역서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200204020003
- 자바 퍼포먼스 튜닝(번역서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200310060005
- 자바툴을 이용한 eXtreme Programming, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200302040004
- 패턴을 활용한 리패토링, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200607110007
- Concurrent Programming in Java(원서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=199912290002
- Expert one-to-one J2EE 설계와 개발(원서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200307310017

 

Language
- 프로젝트 자동화 빌드, 디플로이, 모니터링, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200503230004
- 단위 테스트 with JUnit http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200411020003
- UML 실전에서는 이것만 쓴다, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200312170001
- 알고리즘 트레이닝 북, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200407020006
- Code Complete 2(번역서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200504110013
- 테스트 주도 개발, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200412020003

 

Architecture
- HeadFirst Object-Oriented Analysis & Design(번역서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200705250001
- 소프트웨어 개발의 지혜 : 원칙, 디자인패턴, 실천방법(번역서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200402020001
- 소프트웨어 아키텍쳐 이론과 실제(번역서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200704260053
- 엔터프라이즈 애플리케이션 아키텍쳐 패턴(번역서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200303210001
- Core J2EE 패턴(번역서), ,http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200405220006
- GoF Design Pattern(번역서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200705300004
- 자바 엔터프라이즈 디자인 패턴(번역서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200305090007
- Pattern-Orinted software architecture 1(POSA 1 - 번역서), , http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200801140004
- Pattern-Orinted software architecture 2(POSA 2 - 원서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200010210003

 

교양 1
- 실용주의 프로그래머, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200505180011
- 생각하는 프로그래밍, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200301140012
- 우리가 미처 알지 못하는 소프트웨어 공학의 사실과 오해, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200409230002
- 프로그래밍 심리학(번역서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200712140017
- 맨먼쓰 미신(번역서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200708020005
- 소프트웨어 장인정신, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200212120001
- 피플웨어, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200302150001
- 대체 뭐가 문제야, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200602100038
- 컨설팅의 비밀, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200406300004
- 소프트웨어 컨플릭트 2.0, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200612210002
- 소프트웨어 프로젝트에서의 리스크 관리, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200409040001
- Rapid Development(번역서), http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200307150010

교양 2
- 조엘 온 스프트웨어, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200503170001
- 뉴욕의 프로그래머, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200709030002
- 죽음의 행진, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200511180002
- 해커와 화가, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200509230033
- 누가 소프트웨어의 심장을 만들었는가, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200503110001
- Code Craft - 뛰어난 코드 작성을 위한 실전 지침, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200710120001
- 임백준의 소프트웨어 산책, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200505230005
- 세상을 움직인 컴퓨터 과학자 15인의 지식 오디세이, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200509100002
- 링크, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200311010002
- 프로페셔널 소프트웨어 개발, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200310140001
- 소프트웨어 프로젝트 생존 전략, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200307230015
- Art Of Unix Programming(번역서) http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200408050002
- 누워서 읽는 알고리즘, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200312010001
- Web 2.0 이노베이션, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200612010027
- 당신만이 할수 있는 일을 하라, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200501250072
- 데드라인, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200402190001
- 익스트림 프로그래밍, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200607040038
- 마음을 움직이는 프로젝트 관리, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200606210006
- XP installed, http://kangcom.com/common/bookinfo/bookinfo.asp?sku=200207220004

Posted by bleujin
Book2009. 1. 11. 07:47

JavaScript: The Definitive Guide (5/E)
ㆍ원서 | 2006-08-01
O'REILLY
David Flanagan
자바스크립트로는 HTML Form Validation이나 체크하고
가끔 이미지 rollOver시키는게 전부다라고 생각하는 오해가 있습니다.

자바스크립트를 작성하는 대부분의 사람들이 개발자가 아니거나 초보개발자였기에 좋은 예제가 상대적으로 많지 않으며
그리고 이것은 다시 자바스크립트는 초보자들을 위한 언어라는 인상을 주었습니다.

사실 스크립트라는 접미사는 보통의 C나 Java보다 약한 언어라는 인상을 줍니다.
하지만 이건 관점의 문제일뿐 Javascript는 표현력과 역동성을 위해 성능을 희생한 것입니다.
자바스크립트는 개념적으로 매우 심플한건 맞지만
단순 반복작업에나 사용될만한 그런 단순한 언어는 아닙니다.
오히려 그 심플함으로 인해 매우 우아하며 실용적입니다.

몇년 전부터 Ajax 열풍으로 인해 javascript가 조금 재조명을 받긴 했지만
여전히 자바스크립트는 초보개발자나 하는 노가다 작업으로 취급되고 있습니다.
그리고 여전히 대부분의 개발자는 자바스크립트에 대해 잘 알지 못합니다.

그에 대해서는 국내 자바스크립트 서적도 일정부분 책임이 있다고 생각합니다.
이제까지 Ajax를 제외하고도 몇권의 국내 자바스크립트 책을 읽어봤지만
그중에 사실 독자로서 추천하고 싶은 책은 한권도 없습니다.

그 책의 대부분은 기본적으로 개념이없고-_- (자바스크립트는 프로시저형 절차지향 언어가 아닙니다.)
틀린 내용이 많으며 잘못된 방법으로 구현된 예제를 부추깁니다.
(해외 관련한 책중에도 상당수는 아주 바보같은 책들이 있습니다만 좋은 책이 몇권 더 있다는게 다릅니다.)

물론 자바 스크립트도 다른 언어들처럼 의문이 드는 설계나 버그가 없는 것은 아니지만
(게다가 더 많은 버그를 가지고 있는 브라우저에 내장되어 있었습니다.)
그렇다고 하더라도 지금 자바스크립트의 가치는 지나치게 평가절하되어 있습니다.

사설이 길었지만 다른 관련 서적에 불평이 많은 만큼이나
이 책은 자바스크립트와 관련하여 제가 알고 있는 최고의 책입니다.

기본적인 연산자와 함수부터 자바스크립트의 객체지향적 특징까지 아주 잘 설명해주고 있습니다.
그리고 아주 잘 정리되어 있기 때문에 옆에 두고 레퍼런스로 쓰기에도 손색이 없습니다.
3th가 국내번역이 되었지만 너무 오래전 책이라 지금의 버전과 차이가 있습니다.
(자바스크립트는 아마도 가장 빨리 버전업이 되는 언어가 아닐까 합니다.)


이 책은 추가적으로 Javascript에서 사용되는 좋은 사용예제와 이디엄을 보여주고 설명해 주기 때문에
Ajax관련하여 이를테면 dojo나 prototype등의 소스를 보며 대체 이게 무슨말이야-_- 라고 당황했다면
아주 도움이 될거라 생각합니다.


ps. 이 서평을 처음 썼을때는 없었는데 현재 번역본이 나와 있더군요.
Posted by bleujin
Book2009. 1. 9. 13:04

맨먼스 미신 THE MYTHICAL MAN-MONTH - 소프트웨어 공학에 관한 에세이
ㆍ국내서 | 2007-07-25
케이앤피북스
Frederick P. Brooks I 김성수
몇년전쯤에
내가 만일 왕이라면 이라는 글을 읽은 적이 있습니다.
내가 만일 왕이라면 자바의 이런점을 고칠텐데.. 라는 아주 흥미로운 글이었습니다.
(참조 : http://www.ibm.com/developerworks/java/library/j-king.html)


그 글을 읽으면서 엉뚱하게도 이런 생각을 했습니다.
내가 만일 왕이라면 THE MYTHICAL MAN-NONTH - 이 책을 번역하라고 시킬텐데-_-.. 라고 말이죠.
(비슷한 책으로 The Timeless Way of Building가 있습니다.)


많이 알려진 - 구글의 검색엔진의 핵심이기도 한 - 참조 카운트라는게 있습니다.
어떤 논문이 다른 논문에 많이 인용된다면 이는 중요한 논문일 확률이 높다 라는 단순한 아이디어에서 본다면 이책은 아마도 굉장히 중요한 책일 확률이 높습니다.

한명이 아기를 낳는데 10달이 걸린다 하여 10명의 임산부로 한달만에 낳는건 아니다. 라는 유명한 비유를 시작으로 수술팀 형식의 엘리트 주의,
소수 엘리트의 설계로 제품의 개념의 일관성, 두번째 시스템의 위험, 커뮤니케이션의 중요성을 강조한 바벨탑의 사례, 은총알은 없다. 등등의 유명한 얘기들로
이 책은 이미 33년전에 씌여졌지만 시대를 초월해(IT에서 33년이란 대략 dogyear로 200년이 넘으니 시대라고 해도 충분할 만큼의 시간이군요)
이 책만큼 시간이란 제한을 넘어 지속적이면서도 지대하게 소프트웨어 공학에 영향을 끼친책은 아마 찾아보기 힘듭니다.


많이 인용된만큼 어디선가 한번쯤은 이미 들어본 얘기인데다
대체 33년전에 - 아마도 독자층의 상당수의 프로그래머 나이보다 오래된-_- -씌여진 책을 읽을 가치가 있을까 라고 생각하는 사람들이 있겠지만
대부분의 오래 읽혀지는 고전이 흔히 그러하듯이 Guru 프로그래머의 오랜 경험을 통해 나온 철학과 통찰력이 담겨있는 책입니다.

이 책의 내용중 상당수는 현재의 상황에서 낡아보인다고 생각할지 모르지만
그 의견에 찬성을 하든 혹은 반대를 하든
이 책은 여전히 유용하며 여전히 가치가 있습니다. (다만 번역에는 다소 아쉬움이 있습니다.)


그리고 그게 소프트웨어를 하면서 가장 슬픈점입니다....-_)
과거는 과거가 가르친것을 가르치지만 우리는 여전히 배우고 있지 못하니까요.

'Book' 카테고리의 다른 글

Ajax Design Patterns  (0) 2009.02.10
소프트웨어 컨플릭트 2.0 : 시대를 뛰어넘는 즐거운 논쟁  (0) 2009.02.10
프로그래밍 심리학  (0) 2009.02.10
추천 도서  (0) 2009.01.16
Javascript: The Definitive Guide  (0) 2009.01.11
Posted by bleujin