from ‘http://okjsp.pe.kr/seq/84327'
코딩하던 노인
원작 : 尹五榮의 '방망이 깎던 노인'
벌써 3-4년 전이다. 내가 갓 취업 한 지 얼마 안 돼서 구로공단에서 일 하던 때다.
이른 아침. 찜질방에서 잔 뒤 출근 하러가는 길에, 게임한판 하고 가기위해 근처 PC방으로 향했다.
리듬안마 맞은편 PC방에 구석에 앉아 비쥬얼 스튜디오를 들여다 보는 노인이 있었다.
밤새 잡히지 않는 버그에 대한 조언도 구할겸 소스를 봐달라고 부탁을 했다.
값을 굉장히 비싸게 부르는 것 같았다.
“좀 싸게 해줄 수 없습니까?”했더니,
“소스 하나 고쳐주는걸 가지고 에누리 하겠소? 비싸거든 자네가 고쳐.”
대단히 무뚝뚝한 노인이었다. 더 값을 흥정하지도 못하고 버그나 잡아달라고 부탁했다.
그는 잠자코 열심히 들여다 보고 잇었다. 처음에는 대충 보는 것 같더니, 저물도록 이리 스크롤해 보고 저리 스크롤 해보고 굼뜨기 시작하더니, 마냥 늑장이다. 내가 보기에는 그만하면 다 고친것 같은데, 자꾸만 더 고치고 있었다.
인제 잘 돌아는 가는것 같으니 그냥 달라고 해도 통 못 들은 척 대꾸가 없다. 사실 출근 시간이 빠듯해 왔다.
갑갑하고 지루하고 인제는 초조할 지경이었다.
“더 고치지 않아도 좋으니 그만 주십시오.”
라고 했더니, 화를 버럭 내며,
“끓을 만큼 끓어야 밥이 되지, 생쌀이 재촉한다고 밥 되나.”
한다. 나도 기가 막혀서,
“맡긴 사람이 좋다는데 무얼 더 고친다는 말이오? 노인장, 외고집이시구먼, 출근 시간 늦었다니까요.”
노인은 퉁명스럽게.
“다른 데 가 고치우. 난 소스 지우겠소.”
하고 내뱉는다. 지금까지 기다리고 있다가 그냥 갈 수도 없고, 출근 시간은 어차피 틀린 것 같고 해서, 될 대로 되라고 체념할 수밖에 없었다.
“그럼, 마음대로 고쳐 보시오.”
“글쎄, 재촉을 하면 점점 지저분해지고 늦어진다니까. 코드란 제대로 짜야지, 짜다가 놓치면 되나.”
좀 누그러진 말씨다. 이번에는 고치던 것을 숫제 새로 처음부터 태연스럽게 곰방대에 담배를 담아 피우며 짜고 있지 않은가.
나도 그만 지쳐 버려 구경꾼이 되고 말았다. 얼마 후에야 단축기를 눌러 이렇게 저렇게 컴파일 하고 돌려 보더니 다 됐다고 내준다. 다 되기는 아까부터 다 돼 있던 코드다.
출근 놓치고 지각 해야 하는 나는 불쾌하기 짝이 없었다. ‘그 따위로 코딩을 해 가지고는 장사가 될 턱이 없다. 손님 본위가 아니고 제 본위다. 그래 가지고 값만 되게 부른다. 상도덕도 모르고 불친절하고 무뚝뚝한 노인이다.’
생 각할수록 화증이 났다. 그러다가 뒤를 돌아보니 노인은 태연히 허리를 펴고 리듬안마 지붕 추녀를 바라보고 섰다. 그때, 그 바라보고 섰는 옆 모습이 어딘지 모르게 노인다워 보이고, 부드러운 눈매와 흰 수염에 내 마음은 약간 누그러졌다. 노인에 대한 멸시와 증오도 감쇄된 셈이다.
회사에 와서 소스를 내놨더니, 팀장은 완벽하게 코딩했다고 야단이다. 퇴사한 박대리(주1)가 코딩한 것보다 참 좋다는 것이다. 그러나 나는 전의 것이나 별로 다른 것 같지가 않았다. 그런데 팀장의 설명을 들어 보니, 코드가 너무 지저분하면 버그가 생기기 쉽고 같은 코드라도 성능이 떨어지며, 변수 이름이 제멋대로이면 다른 사람에게 코드를 넘겨주어도 쪽팔리기 쉽단다. 요렇게 꼭 알맞은 소스는 좀체로 만나기가 어렵다는 것이다. 나는 비로소 마음이 확 풀렸다. 그리고 노인에 대한 내 태도를 뉘우쳤다. 참으로 미안했다.
옛날부터 내려오는 開作(개작-Open Source)은 혹 컴파일이 안되면 자료형을 바꿔 컴파일 하고 파일이 누락되어 있으면 구글에서 찾아 넣고 컴파일 하면 좀체로 에러를 내지 않는다. 그러나 요새 소스는 에러가 한번 튀어나오기 시작하면 걷잡을 수가 없다. 예전에는 오래된 開作(개작-Open Source)코드를 갈아엎을때, 깔끔한 최신 배포판으로 잘 받아서 갈아치우기만 해도 컴파일이 되었다. 이것을 최신 리빌드라고 한다. 이렇게 하기를 세 번 한 뒤에 비로소 배포한다. 이것을 '최신 버전을 릴리즈 한다'라고 한다. 물론 날짜가 걸린다. 그러나 요새는 소스코드를 그냥 통채로 복사해서 붙여넣는다. 금방 붙는다. 그러나 왠지 찝찝하다. 그렇지만 요새 남이 보지도 않는 것을 며칠씩 걸려 가며 리빌드 할 사람이 있을 것 같지 않다.
外注(외주)만 해도 그렇다. 옛날에는 복사한 코드(Copy&Paste Code)는 얼마, 직접 짠 코드는 얼마, 값으로 구별했고, 구디구빌(NDNB:Nine-Debug, Nine-Build)한 것은 세 배 이상 비싸다. '구디구빌(NDNB)'란 아홉 번 디버깅하고 아홉번 리빌드 한 것이다. 눈으로 봐서는 다섯 번을 했는지 열 번을 했는지 알 수가 없다. 단지 말을 믿고 사는 것이다. 신용이다. 지금은 그런 말조차 없다. 어느 누가 남이 클레임 걸지도 않는데 아홉 번씩 디버깅 하고 리빌드 할 이도 없고, 또 그것을 믿고 세 배씩 값을 줄 사람도 없다.
옛날 사람들은 코딩은 코딩이요, 생계는 생계지만, 코드를 만드는 그 순간만은 오직 아름다운 코드를 만든다는 그것에만 열중했다. 그리고 스스로 보람을 느꼈다. 그렇게 순수하게 심혈을 기울여 어플리케이션을 만들어 냈다.
이 소스코드도 그런 심정에서 만들었을 것이다. 나는 그 노인에 대해서 죄를 지은 것 같은 괴로움을 느꼈다. “그 따위로 해서 무슨 코더를 해 먹는담.”하던 말은 “그런 노인이 나 같은 젊은이에게 멸시와 증오를 받는 세상에서, 어떻게 아름다운 코드가 탄생할 수 있담.”하는 말로 바뀌어졌다.
나는 그 노인을 찾아가서 삼겹살에 소주라도 대접하며 진심으로 사과해야겠다고 생각했다. 그래서 그 다음 월요일에 퇴근하는 길로 그 노인을 찾았다. 그러나 그 노인이 앉았던 자리에 노인은 있지 아니했다. 나는 그 노인이 앉았던 자리에 멍하니 서 있었다. 허전하고 서운했다. 내 마음은 사과드릴 길이 없어 안타까웠다. 맞은편 리듬안마의 지붕 추녀를 바라다보았다. 푸른 창공에 날아갈 듯한 추녀 끝으로 섹시한 포스터가 걸려있었다. 아, 그때 그 노인이 저 포스터를 보고 있었구나. 열심히 코딩 하다가 우연히 추녀 끝의 포스터를 바라보던 노인의 거룩한 모습이 떠올랐다. 나는 무심히 ‘採菊東籬不(채국동리불)다가 悠然見南山(유연견남산)!’ 도연명의 시구가 새어 나왔다.
오늘, 회사에 출근했더니 후배가 MFC(Microsoft Foundation Classes)와 리소스 편집기로 코딩을 하고 있었다. 전에 커맨드라인과 배치파일로 힘겹게 코딩하고 컴파일 하던 생각이 난다. 도스를 구경한 지도 참 오래다. 요새는 까만 화면은 볼 수도 없다. '왓콤씨' 이니, '어셈블러'이니 애수를 자아내던 그 개발툴들도 사라진지 이미 오래다. 문득 3-4년 전 코딩 하던 노인의 모습이 떠오른다.
주1) "퇴사한 박대리" - 필자가 자기자신을 희화한 인물.