태그 : 책이야기

2009년에 읽은 프로그래밍 책

개인적으로 올해 읽었던(절대 나왔던이 아니고) 이쪽 분야 책 중에서 미처 독후감을 적지는 못했던, 하지만 마음에 들었던 책 몇 권을 적어봅니다.

제프리 리처의 Windows via C/C++
윈도우 프로그래머라면 별 네개. 거기에 C/C++프로그래머라면 별 한 개 추가.

제가 하드코어한 윈도우 개발자가 아닌 것은 분명하지만 일단 윈도우에서 돌아가는 프로그램들을 만들고 있기 때문에 윈도우API가 어떤 식으로 돌아가고 있는지 알아두는 것도 도움이 될 것 같더라구요.
그런 의미에서 이 책은 정말 단비와도 같은 책이었다고 할 수 있을 것 같습니다. 몇몇 하드코어[...]한 부분은 대략 제꼈지만 그때그때 필요한 부분만 참조하는 것 만으로도 충분히 제값을 하고 있습니다.


HARD CODE 하드 코드 : 나잘난 박사의 IT 정글 서바이벌 가이드
개발론에 관심있다면 별 네개. 거기에 MS 빠라면 별한개 추가. MS 까라면 별한개 제거.

드리밍 인 코드와 묶어 읽었으면 더 재밌었을 법했던 책입니다. MS도 이런데 우리라고 별수 있냐 ^ㅁ^ 라고.
역자분 홈페이지에서 했던 예약 인증 이벤트에 응모해 초난감 기업의 조건[...] 책도 덤으로 얻고, 에이콘출판사 부사장님 친필 예약 감사글도 받았었기 때문에(내게 카드를 써 준 여자는 부사장님이 첨이에요! ...-_-;;),
아무튼 그래서 완독하자마자 이 책에 대해 찬양하는 글도 적어 판매에 기여하고 싶었는데 어찌된게 회사 마감도 있고 이래저래 타이밍을 놓쳐버려 죄송할 따름입니다. 흑흑ㅠㅠ
드리밍 인 코드와 마찬가지로 '쟁쟁한 실력자도 아닌 내가 일정을 못 맞추는 것 역시 당연한 일'이라는... 그런 기본적인 교훈(?)에, 개발자들 간의 커뮤니케이션이나 개발론의 존재 의의, 덤으로 왜 MS가 아직도 그 많은 추격자들을 따돌리고 킹왕짱으로서 버티고 있을 수 있는지 알 수 있는 내용이 가득 담겨 있는, 가벼운 마음으로 읽을 수 있지만 결코 가볍지 않은 멋진 책이었습니다.
올해에도 이런 책 좀 나와줬으면 좋겠어요.
이 책을 구입해 덤으로 받았던, '초난감 기업의 조건'도 재밌었습니다. 쓰여있는 비슷한 삽질을 하고 있는 회사를 몇군데 아는데...
그 가운데 우리 회사도 포함..읍...으읍!! (끌려간다)


소프트웨어 크리에이티비티 + 컨플릭트 2.0 세트
고전에 관심있다면 별 다섯개. 관심 없다면 별 네개.

고전에 속하는 책이고 해서 오래전부터 읽어보고 싶었었는데 마침 책이 리뉴얼되면서 새끈한 표지에 가격도 저렴해졌길래 읽었던 책입니다. 요즘도 가끔 펴서 읽고 있으면 참 재미있는게, 그리고 예나 지금이나 변한게 없다는 사실이 마음을 찌릅니다-_-;;;
정말 고전은 시간이 지나도 빛이 바래지지 않는 모양이에요.
프로그래머라면 꼭 읽어야 할 조엘 온 소프트웨어 정도의 필독서!! 아니 그것보다 더 짱인 책임!!
이라고 추천사를 날리고 싶지만 나는 그런 권위 있는 레벨의 사람이 아니니 조용히 있겠습니다[...]


Effective C++ (이펙티브 C++) (3판)
C++ 프로그래머라면 별 네개. 농담 따먹기 싫어하면 별 한개 삭제. 농담 따먹기 좋아하면 별 한개 추가.

작년엔 상대적으로 프로그래밍 언어에 대한 책은 의외로 덜 샀다는 느낌입니다만, Effective C++는 대림 판(2판)을 이미 갖고 있었었기 때문에, 그리고 원서도 선물을 받은 적이 있기 때문에(참 좋은 내용이더군요, 물론 영어 혐오증 때문에 읽지는 않았습니다),
솔직히 그다지 땡기지는 않았...습니다만 그래도 나온지 좀 된 책이어서 저렴해졌기 때문에 구매했었던 것 같네요.
편역, 이라는 것을 개인적으로 좋아하지는 않기 때문에 게다가 이렇게 심한 편역은 차라리 직접 집필하시지 그러셔쎄여 하는 느낌...이 들어서 좀 그런게 있었습니다. 차라리 대림판이 번역이 잘됐다고 느껴지게 만드는 것도 나름 기술입니다. 네-_-;;;
너무 기계적인 번역을 했다는 느낌이 드는 것도 물론 좋지 않지만, 이렇게까지 할 필요가 있었을까 하는 생각도 들었더랬습니다. 적절한 밸런스를 유지한다는게 쉽지 않은 거겠지만... 뭐 Effective STL/More Effective C++ 때 나름 독자층에게 신선하게 받아들여졌었기 때문에 더욱더 파워업시키신 것이었겠거니 하고는 있습니다.
어차피 이 시점에 이런 불평해봐야, 이긴 합니다. 역서도 읽힐만큼 다 읽힌 책이고 하니까...


Head First Design Patterns : 스토리가 있는 패턴 학습법
별 두개. 자바 배우는 중이라면 별 한개 추가. 그림책 좋아하면 별 한개 더 추가.

자바와 도해를 이용한 패턴 책입니다. 친절하게 설명한 것 같으면서도 애매한 설명이 이 책의 백미.
성안당의 만화로 배우는 아무개 시리즈의 실사판....일리가 업자나!!


프로그래밍 수련법

제목에 낚여서 산 책...이긴 합니다.
작년 말에 막 사서 뭔가 적기가 애매하네요. 그런데 이것도 원서는 나온지 좀 된 고전인가봐요.
실은 출퇴근하면서 차근차근 읽다가 자료구조 부분에서 졸려서 넘어가지 못하고 있습니다 어흐흐흐흫


2009년 시리즈 두번째가 끝났습니다. ...이제 또다시 포스팅 거리가 없어ㅠㅠ 엏거두ㅠ두ㅠㅏ듀

by nvu | 2010/01/12 02:40 | 트랙백 | 덧글(1)

겸손한 개발자가 만든 거만한 소프트웨어

겸손한 개발자가 만든 거만한 소프트웨어
신승환 지음 / 인사이트
나의 점수 : ★★

어쩌다보니 최근에 지난 5월에 주문한 책이 또 개발론에 대한 책이 되었습니다.
뭐랄까 개발론에 꽂혀서...라기보다는, 이 책 역시 서평들이 의외로 괜찮았고, 저자 분이 개인 블로그에 올리고 계시는 글들을 꾸준히 애독해왔기 때문에, 눈팅하는 팬으로서(片思い같은거려나요), 어쨌거나 저술하신 모든 책은 아니더라도 가끔은 하나 사드리는 것이 그간의 감사함에 대한 말 없는 독자의 보답이라고 생각했기 때문이었습니다.

뭐 그건 그렇고요. 저자 분에 대한 제 개인적인 짝사랑과는 별도로, 책은 책이기 때문에 책에 대해서는 그다지 좋은 이야기를 적지 않으려 합니다. 이 점 미리 양해를.

이전 직장에선 대형 서점이 5분 거리였었는데, 이제는 지하철 한 정거장 정도의 거리를 걸어가야만 서점에서 책을 살펴볼 수 있게 된 것도 이 책을 구입하는데 한 몫을 했습니다. 즉 내용을 안 보고 목차만 훑어보고, 저자 이름 한번 보고, 웹 상에서 그냥 우왕 하고 구입한. 이른바 포샵처리된 사진만 보고 몇통의 전화 통화만으로 신부와 결혼하기로 해버린 신랑과도 같은?! (비유가 이상하다)
... 뭐 서점에서 책 내용을 좀 훑어볼 수 있었다면 조용히 다시 책장에 책을 꽂아놨을텐데 하는 생각도 들었다는 이야기입니다. 네.

책 두께가 꽤 되어서 처음 받았을 때는 꽤 많은 내용을 기대했습니다만, 책을 펴보니 글씨도 진짜 크고 줄간격도 널찍널찍하더군요. (어쩐지 대놓고 비교해보지는 않았지만 저번 개떡 책보다 비슷하거나 더 넓은 느낌? -_-;;;) 책 읽으면서 자신의 생각을 책 중간중간에 적어보라는 친절한 배려 내지는 컴퓨터 오래하는 독자들의 시력을 보호하려는 출판사의 배려라고 생각하겠습니다. 게다가 책 내내 적혀 있는 친절하고도 한결 같은 존댓말도 인상적이네요. 페이지 수 늘리려고 고생한 편집자의 수고가 눈에 아른가려 하품의 눈물이 눈 앞을 가릴 지경입니다.

물론 얇고 비싼 책은 사람들이 당연하다는 듯이 기피하고는 있다지만...;;; 그래도 이건 좀 너무 좀;;; 음;;;
설마 이런 식의 초딩소설책 스러운 호쾌한 편집이 요즘 IT출판업계 트렌드인걸까; 내가 그 대세를 못 따라가고 있는걸까...;;

다시 이야기를 돌려서,

그런데 뭐랄까 하필이면 얼마전에 읽은 책이 '드리밍 인 코드'. 라는 것이 마음이 아프다고 해야할지.
뭐랄까 하필이면 작년 이맘 때 즈음에 읽었던 책이 '소프트웨어, 누가 이렇게 개떡같이 만든거야' 라는 것이 마음이 아프다고 해야할지.

언급한 두 책들을 읽지 않은 상태에서 이 책을 접했다면 좀더 좋은 평가를 내릴 수 있었을지도 모르지만, 일단 전 비슷한 성격의 다른 책을 이미 최근에 읽어버렸다는 것이 좀 문제인 것이겠지요...
이 책을 '드리밍 인 코드'와 비교하면 '드리밍 인 코드'가 서운해 할 겁니다.
그렇다고 '소프트웨어, 누가 이렇게 개떡같이 만든거야'와 이 책을 비교하자니, 같은 출판사에서 나온 책 아니랄까봐, '개떡' 책을 '거만'책이 좀 자주 인용하고 있어요.
뭐랄까 어떤 면으로는 '개떡' 책을 한국 개발자 실정에 맞게 적당히 고쳐 쓴 느낌이었다고 해야 할까요.
책 내용을 보면 '거만'라는 표현보다는 '개떡'이라는 표현이 더 눈에 띄고 자주 나오는 것 같기도 하구요.

책 내용을 훑어보면, 책 타이틀에서 눈에 확 들어오는 '거만한 소프트웨어' 자체에 대한 내용은 전반부에 집중되어 있고,
후반부에는 팀을 어떻게 짜고 팀원을 어떻게 구성하고 하는 종류의 '겸손한 개발자'를 어떻게 부려먹으면 좋은가, 하는 부분이 주를 이루고 있습니다.

내용 전개 역시 '개떡' 책보다는 짜임새가 있는 편이긴 하지만(내용이 그렇게 겹치는게 많지는 않은데 자꾸 개떡 책과 비교하게 되는 감이 있어서 좀 죄송하네요-_-;;) , 이 책 역시 한번에 너무 많은 내용을 두리뭉실하게 풀어나가다가 두리뭉실하게 꼬인 상태로 제공하는 느낌이 있습니다.

장 끝에 잊지 말자? 였던가 아무튼 그런 타이틀로 어떤 형태의 요점 정리를 하고는 있지만, 그 정리된 내용을 보고나면, 아 그렇구나, 하는 산뜻한 생각이 들면 좋은데, 어째서? 그랬었어? 웬 급결론? 같은 느낌이 드는 항목들도 좀 있다는건 제가 독해력이 떨어져서겠지요.

뭐 그런건 아무래도 좋다고 치고, 무엇보다도 개인적으로 아쉬웠던 것은 뭔가 전에 생각지 못하던 관점을 기대하고 책을 집어 들었는데, 이쪽 분야에 관심 가진 사람이라면 한번 이상은 들어본 적은 있을 다른 책/다른 사람들이 하던 이야기의 적당한 각색 리바이벌이 대부분인 것이었다는 점이겠지요. (이런 면에서의 개발론 요점정리집[..] 같은 느낌이 들기까지 합니다-_-)

저자 분의 경험도 조금씩은 소개가 되고는 있지만, 모종의 갑 측과의 계약이라든가 때문에...이신건지 구체적인 사례 언급은 잘 안되고 있구요(독자 재밌으라고 적으셨겠지만 프로그램 배경 시원해서 조아따 같은건 아무래도 좋은데...; 그런 내용을 읽자고 책을 산게 아닌데...;).

어쩌면 이 책을 읽으신 분들 중, SI 쪽에서 근무하신 경험이 없으신 분 중에선 덜컥 겁부터 내실 분도 계실 수도 있겠다는 생각도 들었습니다. 실제 개발때 저런식으로 한단 말이야? 하고. ..
고맙습니다 경쟁자가 제거되었....

농담이구요, 사실 프로젝트 규모나 스타일이나 접근 방식에 따라 SI 업무 스타일도 모두 천차만별이기 때문에 이 책에 언급되어 있는픽션(..)은 어디선가 있을법~도한 픽션 정도로만 여기시고 겁부터 내실 필요는 없을 것 같습니다. 프리랜서 시절부터 지금에이르기까지 왜인지 모르겠지만 아직은 저는 저런 식의 설계나 기획 방식으로 프로젝트를 진행해본  적이 없는 것 같거든요. 물론짧게 치고 빠지는 소규모 프로젝트 위주로만 뛰어봤었기 때문인지 모르겠지만요.

개발 분야에만 머무르지 않고 영업이나 초기 설계 같은 부분도 적잖은 지면에 다루고 있기 때문에, 주 예상독자층인 디지탈유목민(...)들 뿐만 아니라 프로젝트를 이끌어가는 관리자 분이라면 한번쯤 읽어보실 만한 책일지도 모르겠습니다.
그렇지만 적혀 있는 대부분의 내용들이 이미 어느정도 몸으로 체득하셨을 내용일 것 같기도 합니다.; 대부분 발생하는 문제들의 원인을 모르는 것이 아닌데, 어떠어떠한 식으로 하면 개선될 것 같다는 느낌이 드는데도 쉽사리 어느날 갑자기 체제를 전환한다는 것은 사실 쉽지 않은 문제거든요.

전체적인 소프트웨어 개발 프로세스를 조망하고 해결책을 제시한다는 느낌으로 볼 때는 국내에서 보기 드문 상당히 잘 쓰여진 책일 수도 있습니다만, 제 개인적으로 읽길 원했던 내용의 비중은 상당히 낮았던 탓에(+다른 책에서 봤었던 내용들의 비중이 의외로 적지 않았기 때문에-_-) 별점은 좀 소극적으로 남겨놓겠습니다.


PS: 이 글을 두드리기 시작만 했던게 서두 언급대로 5월초 경이었습니다. 적어놓은게 아까워서 일단 올리기는 하는데; 지금 다시 책 내용을 떠올리려니 어떤 내용이었는지도 가물가물해서 내용 보충하기가 상당히 애매하네요. 이 점 고려하시고 가려 읽어주시면 감사하겠습니다.
PS 2: 저 인사이트 까 아닙니다 살려주세요.

by nvu | 2009/09/26 00:05 | 트랙백 | 덧글(0)

드리밍 인 코드

드리밍 인 코드

스콧 로젠버그 지음, 황대산 옮김 / 에이콘출판
나의 점수 : ★★★★

알파 버전을 공개합니다. 공개하겠습니다.
안되잖아. 어... 공개가 안돼. 공개시킬 수가 없어. 안돼.

요리사들도 훌륭하고, 모든 재료가 완벽한데도 절대 식사 시간까지 완성되지 않는 신기한 요리.
시간만 질질 끌다가 하루가 다 가고 야식 시간 즈음에 완성되어 나오면 맛이 없더라도 오오오 하고 찬사를 발할 수 밖에 없는 바로 그 요리. (물론 요리가 걸작이어서...가 아니라 어쨌거나 밥이 나왔다는 것이 너무 기뻐서-_-)

어째서 소프트웨어 개발팀이라는 주방에서는 언제나 그런 요리가 나오게 되는건지 궁금해 했던 날이 있었습니다.
우리는 그에 대한 대답으로 언제나 말하곤 했죠.

"아니 한참 소고기를 썰고 있는데,
지배인이 와서는 손님이 치킨 매니아라서 닭고기를 넣어야 한다는거야!
지배인이 저러는데 어쩔 수 없잖아?
그래서 지금 병아리 기르는 중이얌~
시장에선 닭을 안 팔더라궁. ㅠㅠ"

드리밍 인 코드는 챈들러라는 아웃룩 킬러(...를 노리는) 프로젝트가 진행되면서 발생한 여러가지 이슈들을 나름 시간 순으로 나열한, 연대기 같은 느낌의 책입니다.
연대기 '같은' 이라고 한 것은 연대기...이긴 한데 중간중간에 다른 업계 이야기도 나오고 소프트웨어 공학 전반에 걸친 이야기도 나오고, 하는 등의 두서 없는 전개가 이어지기 때문이죠.

지난 번의 '개떡'... 책도 그랬지만 이런 프로그래머의 에세이? 느낌의 개발론 류 책들은 어쩐지 챕터 서두는 간결한데 후반에는 주절대는 경향이 많은 것 같습니다. 그리고 이 책도 그 법칙에서 벗어나지 못하고 있다는 것은 좀 아쉬운 부분입니다. 공돌이 답게 요점만 간단히 적기 시작했는데 쓰고보니 원고량이 안되는거야, 그래서 유혹을 견디지 못하고 그만...!

내용 중간중간에 미주가 자주 붙어 있는데, 미주 가운데는 단순한 출처 만이 아닌 내용 자체를 부연 설명하는 경우도 꽤 있어서 미주 대신 각주로 달아주었더라면 더 읽기 좋았을텐데 하는(미주 표시 나올 때마다 책을 확 넘겼다 와야 한다-_-) 편집과 관련한 개인적인 유감(?)도 있었구요.

책 자체는 개발자들이 너무나도 공감할 만한, 그리고 위트 넘치는 내용과 문구로 가득하기 때문에, 그리고 번역도 깔끔하게 적당히 잘 된 덕분에 술술 넘어갑니다.

또 이 책의 저술 스타일도 마음에 드는데, 챈들러 프로젝트의 연대기가 철저한 3인칭 관찰자 시점에서 작성되었다는 부분입니다.
저자는 개인적으로 어떤 개발론을 지지한다는 것을 분명하게 표명하지 않고
그저 '이런 식으로 했더니 이렇게 망하고 저런 식으로 했더니 저렇게 망하더라. A는 이런 식이 좋다는 의견을, B는 이런 식이 좋다는 의견을 내놓았다.'라는 정도의 정리만 할 뿐이지,
'이렇게 해서 막장이 됐지만, 내 생각엔 이렇게 했더라면 잘 되지 않았을까 하는 아쉬움이...!?'
같은 종류의 의견까지는 제시하지는 않는 것이죠.

...그럴 의도는 아니었지만 아무리 생각해봐도 답이 안나와서 어쩔 수 없이 그랬을 수도 있지만. (-_-)

'난 이게 좋은거 같다,'하고 저자의 견해를 피력하는 여타의 개발서와는 달리, 그저 관찰자로서 개인적인 의견은 거의 밝히지 않는 형태로 내용을 평이하게 서술하는 효과로 인해, 독자가 독자 자신이 진행하고 있는 프로젝트를 투영시키면서 직접 생각해 볼 영역을 만들어줬다는 것이 너무나 마음에 듭니다.

그렇게 결코 성공했다, 고는 표현하기 힘든 챈들러 프로젝트의 삽질기를 쿠쿡 대면서 읽어가면서, 챈들러 프로젝트에 내가 진행하고 있는 프로젝트가 오버랩되면서 뜨끔 하는 느낌이 든다면 뭔가 일정이라든가 진행 방향 같은 것을 재정비해볼 수 있는 계기가 될 수도 있을테구요.

따라서 이미 아는 내용이겠지만 일반 개발자나 프로젝트 매니저들도 독파해 볼 만한 가치가 있다고 생각합니다, 아는 내용이 더 재밌으니까요.

왜 내가 만들라고 한 것이 이리도 지지부진한건지 궁금한 사장님들도 꼭 읽어보셔야 할 것 같아요.
사용된 용어도 대부분 잘 해설해주고 있는 편이고, 글의 난이도 또한 프로그래밍에 대해서 잘 모르더라도 이쪽 분야에 관심 있다면 그럭저럭 이해할 수 있는 수준이기 때문에, 불쌍한 개발자들을 이해하는데 약간이나마 도움이 되지 않을까나... 까나...


이 책에서 가르쳐주는 가장 중요한 사실은,
이 프로젝트를 진행하던 개발자들 대부분이 MS나 넷스케이프, 같은 곳에서 일한 경험이 있는 쟁쟁한 실력자들이었는데도
수시로 밥상이 뒤집어졌고 그에 따라 모두 일정을 못 맞추면서 허공에 삽질을 해대곤 했다는 것이죠.

따라서 그런 '쟁쟁한 실력자도 아닌 내가 일정을 못 맞추는 것 역시
당연한 일'이라는 것입니다.
아시겠죠 사장님? (쭃겨난다)


그래서... 쟁쟁한 실력자들이 뭉쳐 만든, 엄청난 개발기간이 소요된, 챈들러 프로젝트는 얼마나 잘 되었을까?
책을 읽고서 궁금해졌어요. 이 책 쓴 저자 아저씨도 잘 됐는지 모르겠으니 궁금하면 깔아 써보라고 했거든요.
어쩐지 깔아서 써봤어요.
뭐야 닭고기 요리라고 적어놓고 달걀 후라이를 내놨쟌!
(까지는 아니었지만서도 역시나~ 라는 느낌 -.-)

by nvu | 2009/04/16 02:38 | 트랙백(1) | 덧글(0)

◀ 이전 페이지          다음 페이지 ▶