2006-08-31

The Art of Project Management





부제 : 마음을 움직이는 프로젝트 관리

원래 이 책의 번역 작업에
beta reader로 참여하려고 했으나
결혼과 업무 마감 등의 사정으로
중간에 그만 둘 수 밖에 없었는데,
막상 나온 책을 보니 일찍 그만둔 것이
잘한 결정이었다는 생각이 든다. -_-;

한마디로 나 자신의 내공 부족. OTL

프로젝트 관리자의 고민에 대한
실질적인 조언이 가득 담긴 이 책이
관련 경험이 부족한 내게는
이해하기 힘든 내용이었다는 사실을
솔직히 고백해야겠다.

훌륭한 번역과 주석에도 불구하고
또 아무런 의무감없이 그냥 읽기만 하는 입장임에도
어려움을 느끼고 있는데,
내가 과연 beta reader로 무슨 도움이 되었을지...
생각만 해도 아득... -_-;

좀 더 경험을 쌓은 후에 꼭 다시 봐야 할 책이다.
안타깝게도 이번에 읽은 것은
단지 문자를 해독한 것일 뿐,
내 것으로 만들지 못했다.

아마존을 보면 이 책에 대해서
온통 칭찬일색인데 반해,
국내에서 별 반향이 없어보인다는 점이 안타깝다.
그만큼 프로젝트 관리에 관심이 없다는 뜻이 아닐지... :(

ps. 이 책 덕분에 또 많은 책을 지를 수 있었다. -_-;



2006-08-29

Beyond the C++ Standard Library





부제 : An Introduction to Boost

아마 Java나 Python 등에 익숙한 사람이라면
C++은 참으로 애증의 언어일 것이다.

다른 언어가 제공하는 언어적 편리함이
무척 그리울 테니까 말이다.

Boost는 그런 이들에게 희망을 줄 수 있는
많은 것들이 구현된 집합체다.
도대체 C++로 저런 것이 가능한가 싶을 만큼
놀라운 구현들이 포함되어 있다.

sample code를 보면 기가 막힌다.
Boost를 알기 전이라면,
저게 도대체 정상적인 C++ code인가 싶을 정도다.
대표적인 사례가 Bind와 Lambda.
이걸 보고 나니 template metaprogramming에 대해
더 강한 흥미를 느끼고 있다.

이 책은 Boost library의 약 50가지 중
12개 정도를 소개하고 있다.
일부는 C++ standard library extension에 포함될 내용들이니,
먼저 알아두는 것도 많이 도움이 될 것이다.

책을 읽으면서 손가락이 많이 근질거렸다.
어서 써먹어봐야 할텐데... :)



2006-08-23

The Build Master





부제 : Microsoft's software configuration management best practices

저자가 MS의 build lab 출신이며
몇 년동안 여러가지 제품의 build를 담당해온 베테랑이라고 한다.

게다가 부제까지 그럴 듯!!!

그러니, SCM와 build process를 어찌하면
더 멋지게 조화시킬 수 있을까 하는 고민에 대한 해결책을
이 책에서 발견할 수 있을까 기대했었다.
역시 기대가 너무 컸... OTL

말 그대로 build에 관한(!) 내용만 잔뜩. T_T

build process 소개,
build를 전담할 조직 구성과
build 전략 및 원리,
그리고 각종 build tool 소개 등등
예상치 못한(?) 내용이 소개되어 있어
새로운 시각을 얻게 되었다는 것 정도.

MS 정도의 대규모 개발사에나 가야 쓸모 있을 듯 하다.
또는 CTO 정도 된다면 도움이 될 지도???

당장 써먹을 일은 없겠구나. -_-;

시종일관 MS의 사례를 적어놓은 것을 보면
저자가 MS를 왜 그만둔 것일까 궁금하다. -_-;

ps. 조엘온 소프트웨어에 등장한 에피소드가 이 책에서도 등장.
그 이름도 찬란한 Ship it award!!!
제품을 마침내 출시하면서 'Ship it award'를 준 적이 있었는데,
모든 이의 기대와는 달리,
개발자 이름이 새겨진 장식판이었다는 것...
과연 'Shit it award'라 할 만 하다. -_-;
얼마나 충격적이었으면 전 MS 출신들이
이렇게 부정적으로 인용하는지, 참...



2006-08-21

악마와 미스 프랭





코엘료 책을 몇 권 사두고 읽다가
거의 비슷한 전개에 싫증이 나서 안 보고 있었는데,
아내가 먼저 읽고 추천해서 읽었다.

여전히 뻔하게 보이는 전개로
(결국은 선이 이긴다?)
초반부에는 맥이 좀 빠진다 싶었으나
코엘료라는 이름값은 하는지
책에 빠져서 바로 끝을 보았다. -_-;

신이 있는지, 선이 있는지 확인하기 위해
한 마을의 사람과 미스 프랭을 시험에 들게하는
악마(?)라는 설정이 전혀 이해되지 않는다. -_-;

그래도 재미는 있다.
음... 재미있게 읽어놓고
이런 소리를 해대니 이상하긴 하다. -_-;;



2006-08-18

Software Configuration Management Patterns





어쩔 수 없는 직책 이동으로 인해(흑흑)
이제 소스 관리를 병행해야하는 상황이 되었다.

예전 업무 처리 방법대로 진행해도 되겠지만,
몇 가지 상황이 영 마음에 들지 않아
혹시 이 책에 해답이 있을까 싶어 펼쳐 들었는데...

불편 1. live 서비스 중인 binary를
debugging을 하려면 반드시 그 때 당시의 소스가 필요하다.
하지만 각종 bug fix가 동시에 발생하므로
이전 소스를 유지하기가 곤란.
이에 대한 해결책으로 현재는 로컬 복사를 통해 작업 중.

불편 2. branch가 어설프다.
live 서비스가 나갈 때마다 branch를 하는데,
bug fix가 있을 때마다 모든 branch를 다 수정해야한다.
한 두개 정도면 상관없지만,
많은 상황이 되면 골치가... -_-;;

이 책을 읽다보니 해법이 있다.
불편 1. label을 사용.
live에 배포할 때 딱지를 붙여놓자.
나중에 bug 추적할 때는 label로 조사~

불편 2. merge를 적극활용.
branch 간의 merge를 이용하자.
물론 조심해야한다. -_-;

이 외에도 현재 상황을 개선할 수 있는
몇가지 아이디어를 얻을 수 있었다.
아싸~ 유익하구나~ :)

아쉽게도 사용중인 SCM tool이
VSS라서 SCM pattern을 적용하기에 제약이 많다.
빨리 perforce로 이전해야지. -_-;



2006-08-16

Blott en dag



Blott en dag by Carola

Blott en dag, ett ögonblick i sänder,
O vad tröst, evad som kommer på!
Allt ju vilar i min faders händer;
Skulle jag som barn väl ängslas då!
Han, som bär för mig ett fadershjärta,
O han giver ju åt varje dag
Hult dess lilla del av fröjd och smärta,
Så av möda som behag.
Själf han är mig alla dagar nära,
För var särskild tid med särskild nåd.
Varje dags bekymmer vill han bära,
Han, som heter både kraft och råd.
Att sin dyra egendom bevara,
Denna omsorg har han lagt på sig.
Som din dag så skall din kraft ock vara,
Detta löfte gav han mig.
Hjälp mig då att vila trygg och stilla
Blott vid dina löften, Herre kär,
Och ej trones dyra tröst förspilla,
Som i ordet mig förvarad är.
Hjälp mig, Herre, att evad mig händer,
Taga av din trogna fadershand
Blott en dag, ett ögonblick i sänder,
Tills jag nått det goda land.
Day by day and with each passing moment,
Strength I find to meet my trials here;
Trusting in my Father’s wise bestowment,
I’ve no cause for worry or for fear.
He whose heart is kind beyond all measure
Gives unto each day what he deems best –
Lovingly, its part of pain and pleasure,
Mingling toil with peace and rest.
Ev’ry day the Lord himself is near me
With a special mercy for each hour;
All my cares he fain would bear, and cheer me,
He whose name is Counsellor and Pow’r.
The protection of his child and treasure
Is a charge that on himself he laid;
“As thy days, thy strength shall be in measure,”
This the pledge to me he made.
Help me then in every tribulation
So to trust thy promises, O Lord,
That I lose not faith’s sweet consolation
Offered me within thy holy word.
Help me, Lord, when toil and trouble meeting,
E’er to take, as from a father’s hand,
One by one, the days, the moments fleeting,
Til I reach the promised land.



2006-08-14

건망증



지난 주에 회사 ID카드를 사용하고
챙기는 것을 까먹고 있다가
오늘 회사에 못 들어 올 뻔했다. -_-;

도대체가 말이지.
이런 걸 잊어먹고 말이야...
깜짝 놀랐네. -_-;



Manager Pool





부제 : 성공하는 소프트웨어 프로젝트 관리자의 61가지 리더십 패턴

꽤 긴 부제를 가진 이 책의 뒷면에는
이런 문장이 실려있다.

'프로젝트 관리자가 프로그래머를 인력 풀에서 뽑아 쓰는 것이 아니라,
반대로 개발자들이 프로젝트를 이끌 리더를
관리자 풀에서 선정한다면 어떨까?'

바로 이 문장 속에
이 책을 관통하는 논지가 모두 들어있다.

군림하는 관리자가 아니라
서비스하는 관리자!!!
관리자가 할 수 있는 61가지 서비스 방법이
이 책의 내용인 것이다.

과거 프로젝트에서 성공과 실패의 기억들이
저자가 소개하는 패턴에서 자주 연상되면서,
'아하~ 그래서 우리가 그 때 성공/실패했구나'
라는 통찰을 얻을 수 있었고,
그래서, 대단히 흥미있게 읽을 수 있었다.

지금이라도 당장 몇개는 적용해보고 싶을 만큼
설득력도 대단하다.

예상 밖의 훌륭한 내용에도 불구하고,
몇 가지 아쉬움을 들어본다면...

꼭 패턴화할 필요가 있었을까?
패턴화 시도가 지나쳐서,
의미를 자연스럽게 연상하기가 어려웠다.

또한, 번역이 좀...
오탈자는 물론이고 이해할 수없는
단어 선택과 문장에 난감했다. -_-;

이탤릭체로 강조한 것인지 아닌지 구분하기도 힘들다. -_-;;



2006-08-10

사고의 파상공세



어제부터 오늘까지 발생한 사고 일지.

첫째, hp/cp regen 오류
test없는 refactoring의 폐해.
재수없게도 complier마저 배신!!! T_T;

둘째, 스킬 효과 공식 오류
data로 처리해야 할 내용을 코드의 예외로 수정해서 발생.
예전에 수정한 내용을 기억하는 사람이 없었다. -_-;

세째, 복사 후 실행 오류
바이너리를 복사했으나 운영실에서 엉뚱한 바이너리 실행.
여기까지만으로 끝인지 알았으나... -_-;

넷째, script 복사 오류
test용 script가 라이브에 전달.
조금 더 주의를 기울였어야했겠지만...
사고 뒤의 후회는 이미 늦으리~ T_T;

아직 넷째 건은 복구가 끝나지 않았다.
진행상황을 봐서는 내일 쯤에나 완료될 듯?

요즘따라 사고가 빈발하고 있다.
해이해진건가? -_-;

실수로부터 배운다지만 라이브에서의 실수는
정말 뼈가 시리게 아프다. :(
도전 정신이 움츠러들 정도로...

이런 일이 또 다시 발생하지 않도록 조심하자.

ps. 그런데 말이지...
어째서 사고는 꼬리에 꼬리를 물고 터지는 걸까?
게다가 설마가 현실이 되는 건 또 어떻게 설명해야하는지... -_-;
이런 현상을 말하는 무슨 법칙이 있었던 것 같은데
생각이 나지 않는군. -_-a

ps2. 머피의 법칙이었다.



2006-08-08

헤드폰 도착



7월 26일에 주문했던 헤드폰이 이제야 도착했다.
좀 써보고 사용기를... -_-;



부동산 투기와 한국경제





가지고 다니면서 꽤 많은 오해를 불러일으킨 책.
"이제 너도 부동산이냐?" -_-a

김광수경제연구소에서 2004년 경에
각종 매체에 기고한 글을 모아 책으로 엮었다.
그러니만큼 지금 읽은 것은 그다지
시의적절하지 않은 셈.

하지만 탄탄한 근거자료를 바탕으로
명쾌하게 논지를 끌어내는 방법이 아주 인상적이다.
연구소가 2004년 경 예측했던 내용과
현실을 비교해보는 것도 재미꺼리.

아쉬운 점이라면,
1) 시의성 부족
2) 자화자찬 -_-;
3) 책 상태 불량
정도랄까?

당시에 봤다면 내 경제활동(?)에
많은 영향을 주었을 것 같다.

제목과 달리 부동산 문제 외에도
국토 균형 발전, 대학 개혁, 인구문제 등
여러가지 경제 이슈를 다루고 있으니, 참고.



2006-08-07

티핑 포인트





jrogue 형의 글을 보고
wish list에 꼽아두었다가
다른 책을 살 때,
액수를 맞추려고 끼워서 샀다. -_-;

울산에 쉬러간 아내를 모시고(?) 오는 기차안에서
다 읽었으니 책 자체는 참 짧다.

마케팅 심리학에 관한 책이라지만,
내 생각에는 마케팅 카오스 이론서가 아닐까 싶다. -_-a

엄청난 물량을 투입해서 뜨는 상품이 있는가 하면
어느 날 갑자기 모두가 열광하게된 상품도 있다.

이 책은 후자의 마케팅을 분석한 것으로
유행의 카오스 상태에서 어떤 요소가 작용하여
거대하고 일관된 유행 흐름이 만들어지는지를
3가지로 구분하고 있다.

1) 소수의 법칙 - 링크를 읽었다면 쉽게 이해할 수 있다.
소수의 선도자가 먼저 받아들이고, 허브(커넥터)가 중개하며,
메이븐이 긍정적 인식을 끌어내고,
세일즈맨이 적극적으로 전파시킨다.

2) 고착성 요소 - 세서미 스트리트가 왜 아이들에게 인기였는가?
전달하는 메시지가 정보를 접하는 사람에게
얼마나 오랫동안 기억되어 남아있는지가 중요하다.
텔레토비를 보며 아이들이 왜 열광하였는지 이제 알 수 있다.

3) 상황의 힘 - 운칠기삼이라는 단어(?)가 있다.
묘하게 맞아 떨어지는 상황의 힘이 없다면
마른 들풀에 붙은 불이라도 금방 꺼져버릴 것이다.

각 요소를 어떻게 이끌어낼 수 있는지에 대한
저자의 의견과
이 요소들의 영향으로 성공한 사례들을 추가되어 있다.

저자의 추론에 100% 동감하는 것은 아니지만,
많은 생각을 하게 하는 책이다.

ps. 저자인 말콤 글래드웰이라는 이름이 익숙해서 찾아봤더니
'블링크'라는 책의 저자였더군.
이 책은 읽지 못했으나 부제는 기억이 난다.
'첫 2초의 힘'이었던가?
이 책도 그렇고 블링크도 그렇고
(옳은 판단이 아닐 수도... -_-; )
저자의 생각은 평형 상태를 무너뜨리는 작은 차이에
매우 관심이 많은 것 같다.
블링크도 읽어볼까? -_-;;



2006-08-04

왜 나는 너를 사랑하는가





이 책이 소설이라는데 동의하기 힘들다. -_-;

사랑에 대한 개인적 경험을 통한 분석, 대해부...
라는 장르가 있다면 거기에 적합하지 않을까? -_-;;

story telling보다는
사랑의 매순간을 마치 실험의 결과물인냥
분석적으로 이해하려고 하는 이 어처구니 없는 내용이
나는 왜 이리 재미 있는걸까? -_-a

기분 나쁘게도(!!???)
작가의 문장을 읽으며
과거의 내 경험이 자꾸 중첩되어 보이고,
그래서 자꾸 내 얘기를 하는 것처럼
느껴지는 것을 어쩔 수 없었다.
실제로 주인공이 애인에게 배신당했을 때는
정말 가슴이... T_T;

내 경험이 오로지 나에게만 한정적인 것이라 생각해왔는데,
사실은 지극히 일반적인 것이었구나...

사랑조차도 분석하고 이해하고 설명하고자 하는
편집증적인(?) 사람들(보통 엔지니어들... -_-)에게
희열을 선사할 책이다.
내가 그랬으니까... -_-;;

ps. 20대 초반에 경험할 꺼 다하고
(경험없이 이 책을 쓸 수는 없을 것이라고 단언한다!)
이런 글을 써낸 작가에게 찬사를!!!
그래, 너 짱먹어라~ :)



2006-08-02

Working Effectively With Legacy Code





뭔가 이름은 그렇지 않은 것 같지만,
실제로는 refactoring, pattern, 그리고 TDD에 관한 책이다.

Refactoring의 목적 중 하나는
기존 소스를 잘 이해하기 위한것인데,
이 책은 그 목적을 집중적으로 다룬 책이라 볼 수 있다.
즉, legacy를 이해하고,
어떻게 test가 가능하도록 하여 refactoring 할 것이냐가 주내용이다.

저자가 제시하는 것이
근본적으로 Refactoring : Improving the Design of Existing Code의 범주를
크게 벗어나지는 못하고 있으나,
link seam과 같은 참신한(?) 방법이 몇 가지 소개되어있다.
link할 때, 바꿔치기라니...
얼마나 참신한가? 난 생각도 못해봤다. -_-;

Unit test가 없는 최초 legacy에서
refactoring을 진행하는 전략에 대해서도 여럿 나열하고 있다.

그러나...
그 모든 가르침도
내가 처한 현실에 적용해보기에는 여전히 모자란 충고다. -_-;;;

모든 best practice가 결국은 test에서 시작인데,
시작부터 난망이니...