본문 바로가기
책을통해세상보기

뉴욕의 프로그래머 : 프로그래머의 일상

by redcrow 2008. 2. 3.
컴퓨터 프로그래밍은 너무나 재미있다. 그것은 음악과 마찬가지로 내면에 간직된 재능과 지속적인 훈련이 미묘한 방식으로 혼합된 결과이다.
그리고 그 결과는 상업적 비즈니스, 예술, 혹은 순수한 엔터테인먼트 어느 것으로도 나타날 수 있다.
프로그래머들은 엄청나게 많은 시간을 일하는 것으로 정평이 나 있는데, 그들이 창조적인 열정 때문에 그렇게 한다는 사실을 아는 사람은 별로 없다.
프로그래머들은 주말에, 휴가에서, 식사를 하면서 계속 소프트웨어 개발에 대한 이야기를 나눈다. 상상력이 부족해서 그런 것이 아니다. 그들의 상상력은 다른 사람들이 보지 못하는 멋진 세계를 드러내기 때문이다.

- 래리 오브라이언과 부르스 엑켈 - 와인버그의 두 번째 법칙


요즘 수,목요일만 되면 야근하던 사람들도 아홉시면 주섬 주섬 짐을 챙겨 일어납니다. 다들 뉴하트 보러간다네요.
지난주 31일 은성(지성)이 혜석(김민정)의 사랑을 받아드리는 장면이 방송된 날 시청률이 30%였다니 그 인기를 짐작할 만 합니다.

변호사,검사,의사등의 전문직을 소재로 한 법률,의학드라마가 몇년 전 부터 인기를 끌고 있습니다.
사랑얘기 일색이던 한국드라마에 다양한 소재의 드라마가 방송된다는 건 시청자의 한 사람으로써 즐거운 일입니다. 특히 하얀거탑의 경우 의학적인 소재에 정치(병원내의 암투),법률(의료분쟁)이라는 양념이 잘 버무려진 재미있는 드라마였지요.

의사라는 직업은 매우 전문적인 직업입니다.
의사선생님이 써주시는 처방전은 도대체 읽을 수도 없으며 드라마에 나오는 용어들은 자막처리가 되지 않으면 따라 적을 수 도 없습니다.
근데도 어떻게 우리 같은 일반인이 재미있게 볼 수 있는걸까요?
개인적인 생각으로는 용어는 생소하더라도 그 용어를 설명하는 용어는 알고 있기 때문일겁니다. 사람 몸에 관한 내용이기 때문이지요.
게다가 인간의 생명이 왔다갔다하는 응급실과 수술실의 긴박한 상황이 극적 재미를 높여주고 있지요.

드라마 뉴하트에 이상하게 관심이 많은 Daily서프라이즈의 기사중 '[뉴하트 따라잡기] 中 알쏭달쏭 의학용어'에 나온 용어설명을 보도록 하겠습니다.

최강국 : 환자를 죽일 셈이야? 피하고 공기가 차서 심장이 한쪽으로 밀렸어. BP가 얼마야?
이은성 : 90에 89. 근데 아저씨 뭐에요?
최강국 : 튜브 갖고와 흉강안에 피가 차서 심장이 한쪽으로 밀렸어. 응급이야! 빨리 서둘러! 데머럴! 리도케인!
이은성 : 리도케인 빨리요!
최강국 : 튜브 타이 할 줄 알지?

- BP(Blood pressure) : 혈압
- 데머럴(Demerol) : 마약성 진통제
- 리도케인(Lidocaine): 국소 마취제
- 튜브타이 : 튜브를 묶기

뭐 이정도는 의학드라마 한두번 보신 분들은 자막처리 안해도 다 아실 내용일 겁니다.

- 심실세동(Ventricular Fibrillation) : 심실근육이 불규칙적으로 움직여 온 몸에 혈액 공급을 하지 않아 심장마비를 일으키는 현상
- 블러드 컬쳐(Blood culture) : 혈액균배양검사
- 미드캡(MIDCAB) : 최소침습 관상동맥 우회술로 흉골절개를 최소화하여 미용 상의 장점이 있으나 시야확보가 잘 안되어 시술이 어려운 것이 단점

난생처음 듣는 의학용어지만 해설 한 줄이면 대충 무슨 의미는 알 정도이니 강의가 아닌 이상 드라마 줄거리 이해에는 아무 문제가 없는거죠.
그런데 프로그래머 이야기가 되면 좀 상황이 달라집니다.

'뉴욕의 프로그래머'를 읽으면서 프로그래머를 소재로 한 드라마를 만들면 과연 사람들이 재미있어할까라는 생각이 들었습니다.  해킹이나 범죄에 사용되는 컴퓨터기술 말고 개발자의 일상을 주제로 한 드라마.
그런데 앞서 말한 용어라는 문제까지 생각이 이르니까 참 어렵겠다는 생각이 듭니다.

다음은 '뉴욕의 프로그래머'의 일부

영우 : 지금 디버깅하려는 게 컨커런트 익셉션 문제지? 어제 지라에서 버그의 내용을 봐서 대충은 알고 있어. 일단 네가 지금까지 파악한 내용을 설명해줘. 그걸 듣고나서 마지막 지점에서부터 같이 디버깅을 하자.
마이크: 어떤 버그인지 벌써 알고 있었구나. 멋진 녀석. 그럼 Price 객체 안에 담겨있는 연결 리스트에서 익셉션이 발생한 것도 알고 있겠네.
영우 : 응 알고 있어. 패일-패스트(fail-fast)가 발생한 거잖아.
마이크 : 패일-패스트라고? 그게 뭔데?
영우 : 어느 쓰레드가 연결 리스트의 이터레이터(Iterator)를 이용해서 데이터를 하나씩 읽어나가는 동안 다른 쓰레드가 리스트의 구조를 변경하는 상황이 벌어진 거야. 리스트에 새로운 데이터가 더해지거나 아니면 삭제되거나 한거지. 그 경우에 이터레이터는 컨커런트 익셉션을 발생시키면서 곧바로 루프(Loop)를 빠져나오기로 되어 있어. 이하생략....

누가 TV드라마에서 이런 대사를 듣고 있겠습니까. 이터레이터를 어떻게 한줄로 자막처리한단 말입니까.
게다가 응급실,수술실이나 구급차가 아닌 책상위의 모니터와의 씨름은 그다지 긴박감도 없어보일듯 싶습니다.
그래도 걸출한 소설가와 뛰어난 극작가가 프로그래머 소재로 멋진 드라마 한편 만들어주면 얼마나 좋을까요.  

'뉴욕의 프로그래머'는 뉴욕의 금융시장에서 프로그래머로 살아가는 영우라는 인물의 일상을 그린 소설입니다.
창작소설이기는 하기는 했지만 저자 임백준씨가 말하듯이 본인과 동료들의 경험에 근거한 내용들이라 허구스럽지는 않습니다. (실제로 임백준씨는 미국에서 프로그래머로 활약중입니다)
예전에 마이크로소프트웨어지에서 보신 분들도 있겠지만 2005년 6월부터 2006년 3월까지 10회에 걸쳐 연재하던 내용을 재구성하고 보강해서 출간한 책입니다. (그때도 재미있게 본 기억이 있습니다.)

저자인 임백준씨는  '행복한 프로그래밍 : 컴퓨터 프로그래밍 미학 오디세이', '누워서 읽는 알고리즘'
'나는 프로그래머다'(여러 프로그래머의 글을 모은 책),'임백준의 소프트웨어 산책' 등의 글을 쓰고 여러권의 책을 번역한 중견작가(?) 입니다. 프로그래머들이 재미있어할 , 아주 무겁지도 않고 그렇다고 가볍지도 않은 주제를 에세이 형식으로 출간해왔습니다.
'뉴욕의 프로그래머'도 그 연장선 상에 있습니다.
개발방법론이나 코딩기법에 대한 이야기가 아니라 프로그래머의 일상에서 만날 법한 상황들을 소설로 구성해 나라면, 우리 팀이라면 어떻게 했을까 하는 상상의 날개를 펴는 재미를 주는 책입니다.
알고리즘과 퍼즐에 관심이 많은 저자 덕에 이 책에서도 몇가지 퍼즐이 들어있어 재미를 더합니다. 제 팀의 한 친구는 콘웨이 수열을 1분만에 맞췄다는... 
개인적으로는 뛰어난 후속작이 나와서 드라마화 되었으면 좋겠다는 작은 바램이 있습니다. (앞에서 말한 것들 때문에 힘들겠지만요. ^^)

열정을 갖고 프로그래머가 되려고 하시는 분, 열정을 잃고 프로그래머를 그만 두시려는 분들이 한번쯤 읽어 보셔도 좋을 듯 합니다.
사실 배경만 뉴욕이라 뉴욕에서 프로그래머가 되시려는 분에게는 별 도움이 되지 않을 듯 싶습니다.

[참고자료]
프로그래머 관련 영화 - 상업영화 빼고
- 실리콘 밸리의 신화 (Pirates Of Silicon Valley, 1999) [trailer보기]
   빌게이츠와 스티브 잡스의 이야기를 영화화
- Aardvark'd: 12 Weeks with Geeks [project] [trailer보기]
  포그 크리크 소프트웨어(Fog Creek Software)에서 근무하는 인턴 프로그래머들의 이야기.
 


댓글