< 작당모의(作黨謀議) 16차 문제(文題): 시 쓰는 밤 >
넋 놓고 읽더라도 내용이 머릿속으로 흘러들어오는 소설과 달리, 시는 먼 산의 뜬구름 같아서 정신을 바짝 차리고 파고 들어가더라도 이해하기가 쉽지 않았다. 시는 기타로 오토바이를 타는 것처럼 난해했고 13인의 아해가 도로를 질주하는 건 그들 나름대로의 이유가 있겠지, 하며 넘겼다. 쉽게 읽히지 않는 시에 손이 잘 가지 않았다. 읽는데 노력이 필요한 시를 그다지 좋아하지 않았다. 그건 내가 20년을 개발자로 살아왔기 때문일지도 모른다.
소스코드는 마치 글처럼 사람마다 개성이 드러난다. 같은 기능을 구현했더라도 개발자마다 소스코드의 모양새는 제각각이다. 모로 가도 서울만 가면 된다는 말처럼, 어쨌든 서울에 가기만 하면 개발자는 소스코드에서 손을 놓는다. 실력이 뛰어난 개발자는 고속도로를 타고, 평범한 개발자는 국도를 타겠지만, 왜 고속도로를 두고 국도를 탔느냐는 타박을 들을 일은 거의 없다. 정해진 시간에 서울에 모습을 드러내기만 하면 그걸로 임무는 끝난다. 일정만 지키면 능력이 부족하다는 말을 들을 일이 없다. 서울까지 어떻게 왔는지를 묻는 동료 개발자는 드물다. 기획자는 개발자가 제시간에 서울에 도착한 것만으로도 기뻐한다.
개발자의 일이라고 하면 보통 소스코드를 짜는 모습을 주로 떠올리지만, 사실 이미 완성된 소스코드를 수정하고 개선하는데 더 많은 시간을 쓴다. 신규 서비스를 오픈할 때엔 많은 개발자들이 우르르 달려들지만 서비스가 세상에 나오면 모였던 개발자들은 흩어진다. 몇몇만 남아 오픈한 서비스를 관리한다. 이를 유지보수라 말하는데 유지보수를 위한 인력은 늘 최소한으로 둔다. 보통 개발자마다 유지보수를 담당하는 서비스를 몇 개씩 가지고 있다. 유지보수의 일들은 다양하다. 버그 수정, 장애 대응, 자잘한 기능의 추가 등이 있다. 품은 많이 들지만 티가 나는 일은 아니다.
서비스에 버그가 발견되거나 장애가 발생하면 문제가 있는 부분을 찾아 수정을 해야 하는데, 이때 프로젝트를 떠난 개발자들이 짠 소스코드를 들여다봐야 한다. 문제가 발생한 곳이 대전쯤일 거라고 예상되면 먼저 그 근방의 소스코드를 뒤지는데, 보통은 예상한 곳 근방에서 수정해야 할 부분을 찾는다. 그 소스코드를 짠 개발자가 부산을 출발해 대구를 지나 대전을 찍고 수원을 거쳐 서울로 왔다면 말이다.
하지만 개발자들은 정말 별의별 사람들이 있다. 부산에서 서울을 오는데 굳이 목포나 속초에 들르는 개발자도 있고, 서울이 코앞인데 왜인지 방향을 틀어 다시 여수나 포항을 가는 개발자도 있다. 그들의 소스코드를 들여다본다는 건 그들이 서울까지 오는 과정을 훑는다는 의미이다. 밤샘을 각오해야 할 일이다. 이곳저곳을 거쳐 돌아온 길이라도 그들이 지나 온 경로가 읽힌다면 그나마 괜찮다. 시간이야 좀 걸리겠지만 천천히 더듬어 따라가다 보면 문제가 발생한 곳에 닿을 수 있으니 말이다.
시처럼 소스코드를 짜는 개발자가 있다. 그들은 밤을 새 가며 시를 쓴다. 기능을 구현하기 위해 평범한 개발자들이 1,000 줄의 소스코드를 짠다면, 그들은 200~300줄 만으로 같은 기능을 구현한다. 논스톱 비행기를 타고 온 듯한 소스코드이다. 짧은데도 제 기능을 다 하는 소스코드를 보고 있으면 아름답다고도 느낀다. 천재인가 하는 생각도 든다. 하지만 그 소스코드에 문제가 발견되고 수정을 해야 하는 사람이 나라면 이야기는 달라진다. 대전에서 수정을 해야 하는데, 더듬어 대전에 갈 방법이 없다. 비행기를 타고 왔으니 그럴 수밖에 없다. 어찌어찌 대전에 갔다 하더라도 수정을 위해 칼을 들이대면 다른 곳에서 문제가 발생한다. 단어 하나만 바꾸어도 전체의 의미가 틀어져버리는 시처럼 말이다. 그런 소스코드는 시작부터 끝까지 완전히 이해하고 내가 짠 소스코드처럼 느껴지고 나서야 수정이 가능하다. 수정을 하는 일도 만만한 일은 아니다. 시어를 고르듯 신중을 기해야 한다. 짜증 나는 일이다.
개발자들은 남이 짠 소스코드를 보는 걸 싫어한다. 이해되지 않는 경로를 더듬어 나가는 일도, 뜬금없이 시를 써야 하는 일도 피곤하기 때문이다. 잘 읽히지 않는 텍스트를 밤새 붙들고 의미를 파헤치면서 한 달을 보내면 월급이 들어온다. 텍스트와 싸운 대가이다. 그렇게 20년을 살았다. 20년을 개발자로 살면서 철칙 같은 게 세워졌다. '텍스트는 무조건 쉽게, 잘 읽혀야 한다.' 그게 소설이든, 시든, 소스코드든.
개발자를 그만둔 지금은 남이 짠 소스코드 대신 남이 쓴 글을 읽는다. 그러면서 서울에 가는 여러 가지 길들을 본다. 최적의 길이 아니더라도, 굳이 목포를, 포항을, 여수를, 속초를 거쳐 서울에 가더라도 그 여정을 함께 한다. 예전엔 한숨부터 나왔는데 이제는 이러는 이유가 있겠지 하며 따라가 본다. 넓은 강도 건너고 거친 산도 넘다 보면 글에 정이 든다. 글은 소스코드와는 달리 최적의 길로만 가면 매력이 없다. 시간의 여유가 생기면서 텍스트에 조금은 관대해졌다.
난해하게만 느껴져 꺼리던 시도 읽는다. 수많은 의미가 꾹꾹 눌러 담겨 있는 문장을 읽고 천천히 그 뜻을 찾는다. 시를 쓰는 시인의 밤도 상상해본다. 어떨 땐, 이 사람 천재인가, 놀라기도 하면서 비행기에서 창 밖으로 풍경을 내려다보듯 느리게 읽는다. 이해하면 이해 한대로, 아니면 아닌 대로 둔다. 시를 읽고 도착하는 곳이 서울이 아니면 또 어떤가. 잘 읽히지 않는 텍스트는 어쩌면 춘천이나 통영도 멋진 곳이니 한번 가보라는 시인의 배려일지도 모른다. 그 마음 받아준다. 시간은 많으니 이곳저곳 들러 본다. 그러다 보면 언젠가는, 모로 가도 서울에 도착하겠지.
Image by Pixabay
4인 4색, 결 다른 사람들이 글쓰기 위해 모였습니다.
제대로 한번 써보자는 모의이며, 함께 생각을 나누며 어울려 살자는 시도입니다.
격주 목요일 매거진에 글로 작당 모의할 예정이니 지켜봐 주시길 바랍니다.
자, 그럼 수작(手作) 들어갑니다~, 큐!