2006-10-27

새빨간 거짓말, 통계





어느 매체에서 어떤 주제에 대한 통계를 내고
이를 분석하는 기사를 보면
보통 정말 그럴꺼라고 믿는 경우가 많다.

이 책은 그런 믿음이 얼마나 부적절한지 확인시켜준다.
한마디로 말하면 통계로 어떻게
사기를 칠 수 있는지 가르쳐주는 책이랄까? -_-;

데이터 조사부터 해석에 이르기까지
객관(?) 테두리 내에서
어떻게 통계를 왜곡할 수 있는지
그 방법을 알고 싶다면 이 책을 보라.

저자의 말처럼 사기를 치기 위해서가 아니라
사기를 당하지 않기 위해서라도 읽을 만한 가치가 있다.
통계를 다룬다는 통념상
난해한 숫자와 공식이 난무할 꺼라는 예상과는 달리
평이한 설명다.

이 책을 다 읽고 나면 한가지 부작용이 생긴다.
어느 통계도 쉽게 믿어지지 않는다는 것이다. -_-;
뭔가 의도가 섞여있는지?
데이터 수집에 오류는 없었는지?

몰랐을 때 편하던 사실들이
이제 의심의 대상이 되기때문에
머리가 좀 복잡할 수도... -_-;;



2006-10-25

팀장이 쉬운가?



회사에서 하는 시시껄렁한(?) 강의 도중
- 강사분에게는 죄송. -_- -
원하는 인재상이 무엇인가를 묻자
여러 사람들이 의견을 내놓았다.

- 적극적인 사람
- 일 잘하는 사람
- 말 잘하고 잘 듣는 사람

등등...

다들 평소에 원하는 부하직원(?)의 모습을
말하기 바쁘더라.

난 부하직원이라는 단어조차 마음에 안들지만,
그보다 더 냉소적인 생각이 들어
계속 마음이 불편했다.

'저렇게 훌륭한 사람들이 과연 내 밑(??)에서 일하고 싶을까?'

팀장도 자격이 있어야 팀장이다.

훌륭한 사람들을 거느리고(?) 일하고 싶다면
그 스스로도 좋은 사람이어야 되지 않을까?
인간적으로든 기술적으로든
또는 그 무엇으로든...

그런 생각이 들자 자리가 몹시 불편하다.
내가 왜 능력도 없는 곳에 있는지... -_-;

하긴 사람은 무능력해질 때까지 승진한다던가? OTL



2006-10-24

급체



일요일 오후에 갑자기 체해서
어제까지 거의 이틀 동안 고생했다.

예고없이 속이 울렁거리니
정말 참기 힘들더군. T_T;

아픈 것보다도
근심어린 모습으로 날 바라보는
아내의 시선이 더 걱정됐다.

'이제 내 몸이 그저 내 몸이 아니로구나'
하는 것을 실감했다고나 할까?

조금 더 열심히 운동해야지!
조금 더 힘내야지!

ps. 어울렁 더울렁 거리는 속때문에
식은 땀을 흘리는 중에도
옛날 위인들은 육체의 아픔도 의지로 극복했다는데
나는 그게 왜 안될까라는 생각이 들더라.

글쎄... 나는 왜 안될까? -_-;
아님, 그것도 뻥이었을까? -_-a



2006-10-18

익스트림 프로그래밍, 제2판





10여년의 직장 생활 중에서
내게 큰 영향을 행사한 책을 꼽아보라면
이 책의 1판을 빼놓을 수 없다.

아마 2000년 경으로 기억하는데,
Pragmatic Programmer를 보다가 XP를 알게되었고
그때부터 내 일에서의 관심사가 극적으로 변했다.

원래부터 귀가 얇은(?) 탓인지 모르겠으나,
1판에서의 선동(!)은
'바로 이것이다' 라고 느낄만큼
내게 파급력이 커서 한동안 XP 관련 서적과 자료만 탐독했다.
(지금도 못 읽은 책이... OTL)

2판이 나왔다는 소식을 익히 듣고,
1판과는 판이하게 다르다는 풍문을 접한지 오래였지만,
'뭐가 바뀌었으랴' 하는 안이한 생각에
그동안 관심을 두지 않았다.

그러나 이제와서 이 책을 접하고 보니,
정말 많이도 바뀌었다는 감상이 가장 강하다.

교조적인 어투로 XP를 쟁취하라고 말하던 저자가
이제 세월의 정제과정을 통해
한층 성장한 논지를 보여주고 있다.

1판이 파릇한 청년의 피끓음이었다면
2판은 장년의 능숙함, 유연함이 돋보인다.

여전히 Kent Beck의 깨달음은 유효하고,
나는 그의 가르침을 어떻게 내 삶에 적용할지 고민하는 중이다.
천재 프로그래머가 아닌
평범한 인간으로서 이 업계에서 살아남기 위해서...



Object-Oriented Reengineering Patterns





진즉에 읽었으나 이제사 올린다.

계속 읽어보려고 하다가
(왜냐... 얇거든. -_-; )
다른 일에 치어서 번번히 기회를 갖지 못하던 차에
refactoring 관련서를 한꺼번에 읽어보자는
야심찬... 이 아니고 우연한(-_-) 이유로 같이 읽었다.

이 책의 핵심은 Part 1, Reverse Engineering과
Reverse/Reengineering시에 code 분석 도구의 활용에 대한 언급이라고 생각한다.

생판 처음보는 source code가 주어졌을 때,
나라면 어떻게 했을까?

아는 사람에게 물어보고
문서가 있는지 살펴서 읽어보고
source를 훑어보고
실행시켜서 breakpoint를 걸고 하나하나 따라가보고...

이런 방법들을 pattern화 한 것이
Part 1 Reverse Engineering의 내용이다.

언뜻 보면, 그게 뭐야~ 라고
비웃을지 모르겠지만,
맨땅에 헤딩해본 사람(!)은 안다.

막상 닥치면 대부분은 배째고 포기하거나
상부의 협박아닌 협박에 울며 겨자먹기로
어떻게든 해내거나...

Pattern이 좋은게 뭔가?
아는 내용을 잘 조직화해놓은 것 아닌가?

게다가 이 내용이 꽤나 공감가는 내용들이다.
가장 효율적으로 남의 source에 접근해나가는
과정이라고 보면 좋겠다.
그런 의미에서 훌륭한 책이다!!!

Part 2 Reengineering은 refactoring과 거의 유사하다.
따라서 관련 항목은 대충 훑고 넘어가도 그만.

다만 code 분석 도구를 이용한 방법은 나름대로 참신하다.
언젠가 도움을 받을 기회가 있을 것이다.

새로운 회사에 입사하여,
팀원들이 만들어놓은 방대한 code를 보고
무엇부터 해야할 지 망연자실한 느낌이 든다면
이 책을 읽어보시라.
지금 해야할 todo list가 무엇인지 알 수 있을테니까...

그런 의미에서...
난 왜 이 책을 빨리 읽지 않은 것이냐... T_T;

ps. 그나저나 집에 남아있는 8권은 언제 올린다?
내용이 기억이나 날지... -_-;



2006-10-16

패턴을 활용한 리팩터링





Pattern과 refactoring의 관계는?

밀접한 내연의(?) 관계... -_-;

단순한 수준의 refactoring이라면 모를까
고수준의 깔끔한 refactoring을 하려면
pattern에 대한 지식은 필수적이다.

Refactoring을 계속 적용하다 보면
어느새 pattern을 적용하고 있음을 알게된다.
무엇이 앞이고 무엇이 뒤인지
나로서는 딱히 설명하기 어렵다.

그러나, 이 책의 저자는 pattern을 지향하는 refactoring을 말한다.
즉 refactoring을 할 때, 어떤 pattern을 적용할 것인지
미리 고민해보라는 것 같다.
그래야 방향성이 생긴다나? -_-;

저자의 주장에 동의하던 그렇지 않던간에
두 주제가 서로 한몸과 같은 것임은
두말하면 잔소리다.

그러나, 그 동안 두 주제를 통합하여 소개한 책으로는
처음이라고 하니,
만약 독자가 한 분야에만 능숙하거나
두 분야가 어떻게 연결되는지 모르겠다면
이 책이 도움이 될 것이다.

내 개인적인 느낌을 말한다면...
(아마 좋은 소리가 안나올... -_-; )

좋은 시도이긴 하지만,
주제와 내용이 겉돈다! -_-;

Refactoring 과정을 설명하는 부분은
차라리 구체적인 사례를 보여주고
그걸 일반화하는 방식으로 썼다면
더 이해가 잘 되었을 것이다.

또, 어떤 pattern을 적용해서 refactoring을 할 것인지
그 결정 과정에 대한 설명이 핵심일텐데
이에 대한 언급이 많이 부족하다.

느닷없이 답을 내놓으면 이해하기 어렵지 않을까?
단지 pattern을 어떻게 적용하는가에 더 관심이 실려서
목적(refactoring)과 도구(pattern)의 무게가 뒤바뀐 듯한 느낌이다.



2006-10-02

Agile Web Development with Rails





정말 대세는 Rails?

하도 여기저기서 Ruby On Rails를 말하던 통에
익히 듣고는 있었지만...
Web 개발이 이렇게까지 쉬워져도 되나? -_-;

Ruby는 잘 모르고,
Rails는 더 잘 모르지만
이 책의 1/3을 읽는데는 전혀 문제가 없었다.
(더 읽지는 못했다는 말씀. -_-)

Ruby에 대한 간단히 소개만으로 무장하고,
Rails를 배우며 하나하나 따라가다 보면
단 몇 줄 코딩으로 근사한 쇼핑몰(?) 비스무레한
Web app 개발이 끝난다.

이렇게 쉬울 수가... -o-;
만약 언어에 대한 제약만 없다면
개인적으로 사용할 간단한 Web app는
언제든지 이걸로 해결하고 싶다.

Ruby라는 언어에 대해 조금 더 연구하고,
이 책의 나머지인 Rails framework 소개를 조금 더 살펴본다면
더 자유롭게 활용할 수 있을 것 같다.

흥미로운 주제다.
나중에 조금 더 파봐야겠다. :)