Archive for June, 2007


[번역서 제목공모] Practices of an Agile Developer

Wednesday, June 27th, 2007

인사이트와 함께 3번째 번역작업을 마무리하고 있습니다. 이번에 번역한 책은, 제 17회 졸트 어워드(생산성 분야)를 수상한 Pragmatic Bookshelf의 ‘Practices of an Agile Developer’입니다(자세한 내용은 예전에 썼던 리뷰를 참고하세요).

개인적으로 번역 작업 가운데 가장 어려운 부분(?)은 제목 선정입니다. 원서제목이 우리네 정사와 맞는다면, 원래 제목을 살려 주는 게 좋지만. 원서제목이 가슴에 와닿지 않을 때, 새롭게 정하는 편이 좋습니다. 물론 제목을 보고 구매하는 것은 아니지만, 독자에게 가장 먼저 전달되는 것이 제목이기에 그 중요성을 무시 못하죠.

‘Practices of an Agile Developer’도 험난한 초벌, 편집의 산을 넘어 마지막 관문이 ‘제목 정하기’에 도달했습니다. 그렇게 힘든 여정은 아니었지만 갑자기 더워진 날씨 탓인지, 멋진 제목이 떠오르지 않네요. :)

그래서 여러분들께 도움을 청합니다! 책에 대해 부족한 정보지만 제가 썼던 리뷰를 참고하셔서 ‘Practices of an Agile Developer’에 어울릴만한 멋진 제목을 정해주세요.

번역서의 제목으로 선정된 분(선정된 분이 없을 때, 제목을 정하는데 가장 많은 영감을 주신 분)에게 인사이트에서 올해 출판할 모든 책을 드리겠습니다(이미 출판된 책은 제외합니다). 

응모방법은 이 포스트에 댓글로 남겨 주시고요. 많은 분이 같은 제목을 올려주시는 경우, 가장 먼저 올려주신 분에게 상품을 드리겠습니다.

응모기가은 7월 7일까지며, 당첨자는 7월 14일(오후 1시)토요일에 발표하겠습니다.

컨설팅과 칼

Tuesday, June 26th, 2007

차도살인(借刀殺人) : 남의 칼을 빌어 상대방을 친다.

손자병법의 3번째 계책

컨설턴트들은 조직을 건드리는 프로젝트를 제일(?) 꺼려한다. 개도 밥먹을 때 건드리지 않고, 거지 밥그릇도 함부로 건드리지 않는 것처럼, 남의 생존이 걸린 문제에 이래라 저래라 잘못 훈수했다가 좋은 결말을 못보기 때문이다.

그러나 조직개편을 원하는 회사에서 외부의 칼을 빌려, 자신의 살을 도려낸다. 즉, 차도살인의 계책인 셈이다. 칼을 휘두르는 자는 칼 뒤에서 숨어 모든 비난을 칼에게 돌려버린다.

물론 누군가를 베어내는 칼이 된다는 것은 기분 좋은 일이 아니다. 특히 자신의 직업을 사랑하는 컨설턴트일수록 그렇다. 그러나 자신이 칼이라는 사실을 망각하고, 환부를 도려내지도 못하고 치료하지도 못한다면, 컨설턴트로서 최악이다.

갑과 을에 대한 단상

Sunday, June 24th, 2007

슈퍼 갑이 될거에요!

고시 준비를 하려고 회사를 관둔 어떤 개발자

전 자식을 낳으면 꼭 갑 시킬거예요!

예비 아빠인 프로젝트 메니저

프로젝트를 하다보면 착한 갑을 만나기도 하고, 악덕한 갑을 만나기도 한다. 회사생활을 하면서 상관과 동료를 고르지 못하는 것처럼, 갑을 골라가면서 프로젝트를 할 수 없다. 즉, 좋은 갑을 만나는 것은 전적으로 운인 셈이다.

다행스럽게도 다년간의 프로젝트 삶을 뒤돌아 봤을 때, 깐깐한 갑을 만난 적은 있어도 포악스러운 갑을 만나지 않은 것을 보면, 나도 프로젝트 운이 좋은 듯하다. 간혹 사악한 고객 때문에 힘들어하는 동료들을 보고 있자면, 자본주의에 대해 만감이 교차한다.

육식동물은 초식동물을 잡아먹고, 초식동물은 풀을 뜯으며, 죽은 육식동물은 풀의 비료가 되듯이, 자본주의 사회에서 갑과 을의 관계는 생태계의 먹이사슬과 비슷하다. 하지만 생명의 순환고리는 거대하여 고리의 요소들이 인지하지 못하는 것처럼, 자본주의에서 갑과 을의 관계도 너무나 거대하여 요소들은 그 순환고리를 보지 못한다.

배고픈 육식동물이 눈에 보이는대로 초식동물을 잡아먹어버린다면, 먹이사슬고리는 끊어져 육식동물마저 멸종되어 버리는 것처럼, 주린 배를 채우려 을의 자생력까지 삼켜버리는 갑은 자본주의의 순환고리를 파괴한다.

그러기에 갑은 을에게서 적당히 취해야 한다.

그러나 이런 자본주의에 대한 생각은 거대한 철학이기에(?), 날마다의 밥벌이를 고민해야 하는 현실에서 먼나라 이야기일 뿐이다.

그렇다! 우리네 실정에서 을은 세렝케티 초원 위를 거닐는 한마리 톰슨가젤이다. 사자에게 먹히지 않으려면 을은 사자보다 더 빨리 뛰어야 하고, 사자보다 더 멀리 보아야 하며, 사자보다 더 잘 들어야 한다. 즉, (우리네) 자본주의의 고리에서 힘없는 을은 배고픈 사자에게 한끼 식사일 뿐이다.

이런 글을 쓴다는 것이 서글프다. 인간은 평등하다고 믿고 평등함을 추구하고 싶지만, 순수함만으로 험난한 세상에서 생존할 수 없기에 현실을 아름답게만 꾸미지도 못한다.

따라서 어떤 갑을 만나도 생존하려면, 을은 실력을 키워야 한다. 즉, 갑이 돈만으로 고용할 수 없는 을이 되어야 한다.

세상을 판단하는 것은 자신의 몫이지만, 그렇다고 세상은 변하지 않는다. 
즉, 오직 실천만이 세상을 바꾼다.

글쓰기와 프로그래밍

Sunday, June 17th, 2007

저는 김훈씨의 소설을 가장 좋아합니다. 구성이 뛰어나거나, 내용이 재미있어 그를 최고의 작가로 꼽지 않습니다. 너무나 담백하여 건조하게 느껴질 정도의 명료한 ‘문장’ 때문입니다.

 사공은 돌아서서 얼음 위로 나아갔다. 김상헌은 환도를 뽑아들고 선착장에서 뛰어내렸다. 인기척을 느낀 사공이 뒤를 돌아 보았다. 김상헌의 칼이 사공의 목을 베고 지나갔다. 사공은 얼음 위에 쓰러졌다. 쓰러질 때 사공의 몸은 가볍고 온순했다. 사공은 풀이 시들듯 천천히 쓰러졌다. 사공의 피가 김상헌의 얼굴에 튀었고, 눈물이 흘러내려 피에 섞였다. 김상헌은 소매로 눈물을 닦았다. 강 건너 마을은 어둠에 잠겨 보이지 않았다. 보이지 않는 마을에서 버려진 말이 길게 울었다.
 말 울음소리가 빈 강을 건너왔다.

남한산성 中

위의 구절은 김상헌의 심리를 묘사한 것입니다. 즉, 청의 군대를 안내하고 끼니라도 때우겠다는 사공의 처지, 백성들의 상황을 이해하면서도 신하된 도리를 지키려는 선비의 심리상태를 나타낸 것입니다. 김훈의 문장이 단문위주로 구성되기 때문에 주인공들의 심리를 이해하려면, 전체 글 속에서 문장을 읽어야 글의 참맛을 알 수 있다는 한계도 있지만.

이런 문장들이 지닌 강한 필력 때문에, 저는 김훈씨의 글을 최고로 여깁니다.

어떤 분야든지 도의 경지에 이르면 세상만사에 통달한다는 것처럼, 김훈씨의 글은 리팩토링이 너무나 잘 된 대가의 코드와 비슷합니다.

블로깅을 처음 할 때, 생각을 어떻게든 글로 옮기는 것이 중요하다고 생각했습니다. 마치 프로그램을 짤 때 알고리즘을 코드로 구현하는 것이 전부라는 생각과 비슷합니다.

글쓰기가 손에 붙자, 좋은 글은 멋진 생각을 글로 옮기는 것 이상임을 알게 되었습니다. 물론 글이 담고 있는 의미도 중요하지만, 글 자체가 지닌 형식미도 무시할 수 없습니다. 즉, 퇴고의 중요성입니다.

코드에서도 마찬가지입니다. 아름다운 코드가 지닌 매력은, 그 코드가 담고 있는 알고리즘의 독창성 이상의 것입니다. 즉, 군더더기가 없고 너무나 단순하여 소름이 돋을 정도의 명료함이 아름다운 코드의 중요한 요소입니다.