티스토리 뷰

세 번째인가 다섯 번째쯤 다시 비명소리 같은 사이렌 소리가 새벽 공기를 찢어버릴 기세로 귓가를 스쳐 지나갔습니다. 두 번째인가 네 번째쯤까지 간신히 유지하고 있었던 집중력이 툭 하고 끊어지는 것을 느낄 수 있었습니다. 제가 물리학에 조예가 깊었다면 도플러 효과를 응용해서 저 사이렌이 어느 방향으로 어느 속도로 움직이는지 계산할 수 있었겠지만 솔직히 저는 저 사이렌 소리의 근원이 경찰차인지 앰뷸런스 인지도 잘 몰랐습니다. 그저 집 앞에 외상치료로는 서부 최고라는 병원이 있었으니 앰뷸런스 소리가 아닐까 추측했을 뿐. 그리고 왜 그 병원이 중증 외상치료 경험이 풍부한지에 대해서는 되도록 추측하지 않으려고 애를 썼습니다.

 

사이렌 소리가 멀어지고 주위는 이내 적막해졌습니다. 그리고는 다시 울음소리 같은 빗소리가 들리기 시작했습니다. 정말이지 이 동네의 날씨는 지독하게 안 좋았습니다. 거의 매일매일 흐린 날씨는 패시브에 소나기는 쿨타임이 짧았고, 폭우는 궁극기처럼 내렸습니다. 원래 일정대로 다음 해 4월에 파견을 왔다면 다들 입을 모아서 칭송하는 아름다운 시애틀의 여름을 경험할 수 있었을까 잠시 후회를 했지만 지나간 일을 되돌릴 수는 없었습니다. 물론 당시에는 내년 4월에 시애틀의 소나기보다 더 지독한 바이러스가 세상에 내릴 것이라는 사실을 몰랐으니까 할 수 있는 생각이었죠.

 

어떻게 생각하고 어떻게 포장하려고 해도 새벽 1시, Go언어, 사이렌 소리, 빗소리의 조합에서 낭만을 찾을 수는 없었습니다. 제가 시애틀에 간다고 했을 때 다수의 어른들이 '시애틀의 잠 못 이루는 밤'을 이야기하면서 그 영화가 얼마나 낭만적인지에 대해서 이야기를 해주셨는데 솔직히 말하면 저는 저 12세 이상 관람가 영화가 개봉했을 때 10살이었기에 저 드립을 치면서 뿌듯해하는 분들에게 어떤 표정을 지어드려야 할지 잘 몰랐습니다. 제 경험상 잠을 이루지 못하는 건 대부분 강한 스트레스에서 기인한 질병의 일종일 때가 많았는데 말이죠. 사실 스트레스가 아니라 코드 때문에 잠을 잘 수 없었던 경험이 인생에 한 손으로 꼽을 수 없을 정도로, 그러니까 32번을 넘길 정도로 많았고 그중에 낭만적인 경험이 없었다고 말하기는 어려웠지만 최소한 지금은 아니었습니다.

 

당시에 저를 괴롭히고 있던 문제는 동적으로 결정되는 파라미터를 정적인 타이밍에 알아내야 하는, 인과관계가 뒤바뀌는 듯한 역설적인 요구사항의 난해함에서 발생한 것이었고, 제가 아는 선에서 이 문제는 리플렉션을 통한 다형성의 구현으로 풀어버릴 수 있었습니다. 문제는 리플렉션이 제가 그동안 배우고 추구했던 모든 것을 부정하는 듯한 느낌을 가진, 너무나 사무적이고 생산적인 해결책이었다는 점이었습니다. 천사채를 씹어먹는 듯한 기분으로 리플렉션을 이용해 파라미터를 어떻게 어떻게 가져오기는 했지만, 여전히 클래스가 없는 언어에서 다형성을 이야기하는 것이 낯설게 느껴졌습니다. 모든 것이 낯설었던 이 도시에서 이 정도의 어색함은 감수해야 했던 것이었을지 모르겠지만, 익숙하지 않은 환경에서 익숙하지 않은 언어로 익숙하지 않은 풀이를 적어나가는 것은 별로 낭만적인 경험이 아니었습니다.

 

익숙했던 것은 오로지 키보드에서 느껴지는 촉감과 소리 뿐이었습니다. 저는 새삼스럽게 이 노트북을 들고 오기를 잘했다는 생각을 했습니다. 원래 가지고 올 생각이 없었거든요. 미니멀한 라이프에 대한 갈망이 강했던 당시의 저는 미국행이 결정되었을 때 짐을 정말 간소하게 가져가야겠다고 결심했습니다. 그래서 노트북은 딱 하나만 가져가야지라고 생각했는고, 그 하나는 성능이 좋은 게이밍 노트북이 되어야지 지금 쓰고 있는 개발용 노트북은 아니라고 생각했습니다.

 

 

출국하기 한 달 전쯤, 숙소가 결정되어서 숙소의 위치와 사진을 미리 받아볼 수 있었습니다. 제가 에이전시에 전달했던 주요 요구사항이었던 빠른 인터넷, 좋은 치안, 택배 보관실은 사진으로 확인하기가 다소 어려웠지만 그 외에는 대체로 만족스러웠습니다. 특히나 만족스러웠던 것은 루프탑 시설의 사진이었습니다. 몇 장의 사진과 구글 검색으로 계산을 마친 저는  이 정도라면 루프탑에서 만들고 싶은 거 재미있어 보이는 거 만들면서 힐링하는 개발자의 낭만을 누리는 게 가능하겠다는 결론을 내렸습니다. 다만 거기에 몇 가지 준비물이 필요했는데, 무제한 데이터 유심, 보조배터리, 맥주가 그것이었습니다.

 

맥주는 현지에서 조달하면 충분하다고 생각해서 따로 준비하지 않았습니다. 실제로 시애틀은 아마존이 지배하고 있는 도시였고, 원하는 것이 있다면 그것이 술이라도 얼마든지 2시간 내에 배달시킬 수 있었습니다. 인터넷의 경우 건물 전체에 무선 인터넷이 제공될 가능성을 버릴 수는 없었지만, 보수적으로 생각해서 루프탑에는 와이파이가 도달하지 못할 것이라고 생각하는 것이 안전했습니다. 그래서 저는 테더링을 통한 인터넷 접속을 생각했는데, 한 달 5GB의 로밍 데이터로는 이를 감당하기 어렵겠다는 생각이 들었습니다. 그래서 저는 미리 무제한 데이터 요금제를 검색하고, 데이터 통신 속도를 확인해보고, 테더링 용량 제한 등을 확인한 뒤 미리 유심카드를 직구함으로써 인터넷 접속에 대한 준비도 마쳤습니다.

 

가장 큰 문제는 배터리였습니다. 아무리 사진을 뒤져봐도 루프탑 지역에는 콘센트가 없는 것처럼 보였기 때문입니다. 제가 가져가기로 결심한 노트북은 게이밍 노트북이어서 코딩을 위한 성능은 차고 넘쳤지만, 배터리는 그리 오래가지 않았습니다. 설령 어딘가에 콘센트가 있다고 해도 800그램이 넘는 무거운 어댑터를 들고 옥상까지 올라가는 것은 별로 낭만적인 그림이 아니었습니다. 그래서 제가 처음 생각했던 것은 안드로이드 태블릿에 리눅스를 올린 뒤, 거기에 개발 도구들을 설치해서 사용하는 것이었습니다. 남들은 넷플릭스 정도나 보는 데 사용하는 태블릿에 리눅스를 깔아서 개발을 한다는 배덕감이 무척이나 프로페셔널해 보였기에 저는 이 계획을 적극적으로 추진했습니다. 하지만 출국 날짜가 다 될 때까지도 제가 사용하는 태블릿 모델의 리눅스 펌웨어는 릴리즈 되지 않았고 저는 제 계획에 단일 실패 지점이 존재한다는 사실이 무척 불편하게 느껴졌습니다. 결국 저는 출국 전날 계획에 없던, 씽크패드 X1 카본 6세대 모델을 캐리어에 구겨 넣을 수밖에 없었습니다.

 

씽크패드를 구입하기 전에 저는 2016년에 나온 맥북 프로를 사용하고 있었습니다. 이 맥북은 터치바를 채용한 첫 번째 모델이었고, 제가 써본 모든 노트북 중 가장 만족도가 떨어지는 모델이었습니다. 키보드가 무척 시끄럽고, 키감도 안 좋았고, 터치바는 둠을 돌리는 것 외에는 존재의 이유를 잘 모르겠고, 무엇보다도 ESC키가 없었습니다. 하지만 당시에는 제가 가진 노트북은 이 맥북 프로가 유일했기에 저는 울며 민트초코를 먹는 심정으로 이 노트북을 계속 들고 다닐 수밖에 없었습니다.

 

2018년에 저는 학위 논문을 쓰기 위해서 도서관과 카페에서 거의 살다시피 했었는데, 제 인생에서 가장 노트북을 많이 쓰던 시기에 제가 가지고 있던 노트북이 만족도가 최악이던 모델이었다는 사실은 저를 무척 우울하게 만들었습니다. 당시에 제가 쓰고 있던 논문은 클라우드 환경에서 쿠버네티스 오토스케일링 성능에 대한 실험을 주제로 했었는데, 실험 내용을 요약하자면 ESC를 무척 자주 치는 실험이었습니다. 그리고 도서관에서 실험 결과가 원하는 대로 나오지 않아서 짜증이 많이 났던 어느 날, 몇 번째인가 ESC키를 헛치면서 설정 파일을 망가뜨리다가 마침내 폭발하여 모든 창을 다 닫고 브라우저를 띄워서 새로운 노트북을 찾아보기 시작했습니다.

 

이러한 상황과 배경을 돌이켜서 생각해보면, 당시에 노트북을 고르던 저에게 자유의지란 없었을지도 모르겠습니다. 애플에서 나온 극히 세련되고 실용성 없는 노트북에 질려버린 제가 인과율에 의해서 선택한 노트북이 씽크패드가 된 것은 필연적인 결과라고 해석할 수 있거든요. 씽크패드는 실용성 외에는 아무것도 고려하지 않은 듯한 클래식한 디자인, USB-A와 C, HDMI, RJ45 포트를 모두 포함한 극강의 확장성, 극히 가벼운 무게에 하루 종일 가는 배터리, 매우 빠른 CPU와 넉넉한 메모리, 14인치 비반사 액정, 마음대로 뜯어서 업그레이드할 수 있는 수리 용이성을 가지고 있었는데, 무엇보다도 마음에 들었던 것은 그 키보드였습니다. 물이나 커피를 쏟아도 상당한 시간을 방어해주는 침수 지연 기능도 좋았지만, 그 키보드의 키감이 너무 좋아서 이 정도 키감이라면 대학원을 한 번 더 다녀도 좋겠다는 생각을 했을 정도였습니다.

 

2016년의 저는 스스로에게 맥북 프로를 구입하는 죄를 지었지만, 2018년의 저는 씽크패드를 구입함으로써 스스로에게 용서받을 수 있었습니다. 덕분에 저는 무사히 졸업할 수도 있었고, 무사히 미국에 도착할 수도 있었고, 여전히 리눅스 구동이 요원했던 태블릿을 가방에 처박아둘 수도 있었습니다. 안타깝게도 루프탑은 바람이 많이 불거나, 춥거나, 비가 내리거나 해서 몇 시간은커녕 몇 분도 앉아있기 힘든 환경이었고 저는 루프탑 개발자가 아닌 식탁 개발자가 되었지만, 그래도 회사에서 다 처리하지 못하고 남은 일들을 처리하는데 여전히 씽크패드와 맥주는 유용했습니다.

 

사실 한국에서 다 처리하지 못하고 남은 우울함을 처리하는데도 여전히 씽크패드와 맥주는 유용했습니다. 집중력을 가지거나, 집중력을 흐트러뜨리거나, 어떤 방향으로든 쓸데없는 생각을 줄이는 데는 탁월한 효과가 있었습니다. 당시에 저는 스트레스와 화가 너무 많아서 가만히 누워서 잠에 드는 것이 너무 어려웠는데, 잠에 들기 위해서 생각을 비우려고 해도 자꾸 부정적인 감정과 생각들이 저를 깨웠던 것입니다. 자아성찰과 반성도 하루 이틀이지 매일 밤마다 3~4시간씩 시달리면 사람이 죽어나가기 마련입니다. 그래서 저는 진짜 엄청 졸릴 때까지 기다렸다가 쓰러지듯이 잠에 드는 것을 선호했는데, 이 과정에서 개발과 맥주가 주는 도움이 무척 컸습니다.

 

 

하지만 당면한 다형성 문제가 너무 어려워서, 저는 이 '개발과 맥주'의 조합이 오히려 '게임과 커피'의 조합처럼 저를 각성시키는 것을 느낄 수 있었습니다. 아무래도 오늘도 쉽게 잠에 들기는 어렵겠다는 생각이 들었습니다. 집중력이 깨지자 다시 쓸데없는 생각들이 이명처럼 밀려들어오기 시작했습니다. 사실 제가 이걸 당장 끝내지 못한다고 해도 그게 큰 문제가 될 것 같지는 않았습니다. 여기 사람들은 저를 체험 학습을 온 인턴 학생 정도로 생각하고 있을 수도 있고, 제가 만들고 있는 이 기능이 어려움에 비해 그렇게 필요하거나 시급하지 않은 기능일 수도 있고, 제가 실패하면 다른 사람이 할 수도 있고. 뭐가 되었든 여기 사람들은 저에게 부담을 주지 않으려고 무척이나 노력하는 게 보였기에, 저는 큰 부담 없이 마감을 연장할 수 있었습니다.

 

하지만 부담감이라는 것이 그렇게 쉽게 마음만 먹는다고 사라지는 것이 아니었습니다. 지난 몇 년간 부담감에 짓눌린 인생을 살았던 저는 당시에는 부담감을 스스로 합성해낼 수 있을 정도로 진화한 상태였습니다. 그래서 아무도 나한테 뭐라고 하지 않을텐데 지레 부담감을 느끼고 일을 시간 내에 완벽하게 해내려고 하는 습성을 도저히 버릴 수가 없었습니다. 어릴 때의 우리는 가상의 관객들을 만들어서 칭찬받는 상상을 많이 한다고는 하는데, 어른이 된 우리는 가상의 관객들로부터 비난받는 상상을 하면서 의기소침해지는 것이 아닐까 싶을 정도로요. 아마도 상상 속에서라도 쓸모없는 사람이라는 평가를 받는 것이 무척이나 싫었나 봅니다.

 

몇 년 전의 일상이 떠올랐습니다. 일이 너무 많아서, 내가 일을 진짜 많이 하면 좀 괜찮아지겠지 하고 일을 진짜 많이 했더니 일이 줄어드는 게 아니라 주변 사람들이 줄어들던 시절. 매일 같이 부담감과 중압감에 짓눌려서 스스로 무너져내리다가 편히 잠에 들지도 못하고 잠에 들어도 악몽에 시달리다가 깨고 한참을 울다가 간신히 잠들어서 두세 시간 정도 자고 다시 출근해야 했던 나날이었습니다. 저는 가끔 일이 엄청나게 많은 것과 엄청나게 적은 것 중 어느 것이 더 우울한 것인지에 대해서 생각해볼 때가 있는데, 제가 내린 결론은 둘 다 싫다는 것이었습니다.

 

사람들이 나를 필요로 하지 않아서 몇 달째 할 일이 아무것도 없는 상황이나, 사람들이 나를 너무 필요로 해서 몇 달치 할 일을 일주일 안에 다 해야 하는 상황이나 거기에서 오는 우울함은 근본적으로 같은 것이라고 생각했습니다. 사람들이 나에게 실망해서 등을 돌리게 되는 것은 아닐까라는 고립감에 대한 두려움이 원인이 아니었을까 해서요. 제가 들었던 이야기로는, 고립감이나 외로움이 사람을 불안하게 만드는 것은 무리 생활을 하지 않으면 살아남을 수 없었던 우리의 먼 과거의 조상 때부터 이어진 생존에 대한 일종의 조기경보 장치에 해당하는 감정이라고 했고, 무리 생활을 하지 않아도 살아남을 수 있는 현대사회에서는 자연스러운 감정이라고 했습니다. 그래서 그것 자체에 우울해하기보다는 괜히 다른 사람들의 평범한 반응이나 태도를 부정적으로 해석하여 더 큰 장벽이 생기고 더 고립되는 것을 경계하는 것이 훨씬 더 중요하다고요.

 

이런 종류의 해석이 가지는 단점은 한결같습니다. 문제는 나에게 있고, 내가 잘해야 해결할 수 있다는 것입니다. 어디에서나 좋은 평가를 받으려면 감정이나 감수성이 없는 사람처럼 행동해야 하는 어려움이 있었는데, 그 어려움을 결국 극복하지 못하고 감정을 드러내면 언제나 '못 견딘 네가 잘못이다'라는 피드백이 사람을 더 감정적으로 만들어줍니다. 안 풀리는 코드와 안 풀렸던 과거가 저를 괴롭히기 시작하자, 왜인지 모르겠지만 여기 식탁 위에 엑설런트 한 박스가 놓여있으면 좋았겠다는 생각이 들었습니다. 그것이 오랜 두뇌활동에 따른 포도당 소모로 인한 당분 부족 현상의 결과이든, 알코올 섭취가 많아지면서 글리코겐 소모가 심해지고 이로 인한 탄수화물 부족이 심해진 것이든, 아니면 그냥 지금 당장 가질 수 없는 것에 대한 갈망이 심해진 결과이든, 원인이 뭐가 되었든 누가 지나가다가 헬기 같은 걸로 엑설런트 한 박스만 떨궈줬으면 좋겠다는 생각이 들었습니다.

 

하지만 귀를 기울여봐도 바깥에서는 빗소리만 들릴 뿐 아무런 변화가 없었습니다. 꺼져있던 노트북을 다시 건드려서 노트북 화면을 열었지만 코드에도 아무런 변화가 없었습니다. 아무것도 하지 않았으니까요. 이것 또한 내가 해결해야 할 문제 중 하나라는 생각이 들었습니다. 여전히 여기에 리플렉션을 쓰는 게 올바른 선택인지는 감도 오지 않았고, 루프탑에서 재미있는 것들을 만들어보면서 힐링하겠다는 계획도 다 어그러졌고, 환경이 아무리 바뀌어도 부담감은 떨쳐버리기가 어려웠고. 가장 가까운 엑설런트까지는 아직 두 달의 거리가 남아있다는 생각에 좌절하여 한동안 키보드에 머리를 박고 엉엉 울었습니다.

 

한참 뒤에 조금 진정이 되어서, 아무래도 리플렉션은 답이 아닌 것 같다는 결론을 내리고는 노트북을 들어서 탈탈 털고 휴지로 물기를 닦은 뒤 화면을 봤습니다. 머리를 박고 있어서인지 코드는 엉망이 되었지만 이 정도는 키보드 몇 번 눌러서 처음 상태로 되돌릴 수 있었습니다. 씽크패드 노트북들 중 상위 라인업 제품들은 사용자가 키보드에 액체를 흘려도 상당한 시간 동안 기판에 수분이 침투하지 못하도록 방어해주면서 어지간한 물기는 외부로 방출해주는 침수 지연 기능이 있는데, 이는 완전한 방수와는 다소 다르지만 키보드에 물기가 들어갔을 때 적절한 사후조치만 취해주면 노트북에 아무런 문제가 되지 않도록 막아주는 역할을 합니다. 그래서 어떤 상황이나 사고에서도 다시 업무로 돌아갈 수 있을 것을 보장해준다는 장점이 있는데, 제가 생각하기에 개발자들이 씽크패드를 써야 하는 이유가 여기에 있지 않나 싶었습니다.

'에세이' 카테고리의 다른 글

우리들의 분리수거는 뭔가 크게 잘못되었다  (0) 2021.02.14
나는 개발왕이 될 거야  (0) 2021.02.12
개발자가 씽크패드를 써야하는 이유  (1) 2021.02.07
일상생활의 러다이트  (0) 2021.01.23
no-param-reassign  (0) 2021.01.19
과학이나 공학이나  (0) 2021.01.12
댓글
댓글쓰기 폼