Skip to content

Instantly share code, notes, and snippets.

@twinstae
Last active April 18, 2024 04:23
Show Gist options
  • Save twinstae/3180eb5909e8472c705acf156e4e2a29 to your computer and use it in GitHub Desktop.
Save twinstae/3180eb5909e8472c705acf156e4e2a29 to your computer and use it in GitHub Desktop.
코딩은 재미 있나요?

안녕하세요. 탐토입니다. 오늘은 코딩이 어떻게 하면 재미있어질 수 있는지에 대해 이야기해보려 해요.

요약

  • 자전거 배달부로 아기를 돌보는 분들에게 기저귀와 분유 배달하는 것도 보람찬 일이었다.
  • 코딩으로 가치있는 문제를 해결하는 것도 힘들지만 즐거웠으며, 보람찬 일을 하는 건 노동자의 권리다.
  • 천재 슈퍼 개발자가 아니면 무시 받아 마땅하고 해고와 연봉 삭감의 사유라는 것은 자본가들의 가스라이팅일 뿐이다.
  • 누구나 자기의 속도로 하나 둘 해나가면 성장하고 성취하고 즐거움을 찾을 수 있다.
  • 쓸모 없지만 재미있는 일을 하다보면 쓸모도 생기는 것이지. 쓸모에 집착하면 우울해집니다.

저는 부럽다는 말을 많이 듣습니다. 물론 잘 알지도 못하면서 아는 척 한다고 욕도 먹습니다만. 부럽다는 레파토리 중에 하나는 "토끼 님은 코딩이 재미있어 보인다"는 것입니다.

음악인 분들이 "너는 그래도 좋아하는 일을 하잖아"라는 말을 친구들에게 듣는 것에 대한 서러움을 토로하는 게 떠오르기도 하는데요. 성공한 음악인 분들도 무명 시절이 있으셨던 것처럼, 저도 가난했던 시절이 그리 오래 전도 아닙니다. 1년 동안 번 돈이 모두 합쳐 500만원이었던 게 3년 전이지요. 하지만 또 결국 성공한 음악인 분들이 할 말이 없는 것처럼, 지금은 밥 벌어 먹고 살고 가까운 사람들을 도와줄 정도의 여유도 있어요. 그게 사실이죠. 그러니 다시 원래 질문으로 돌아옵니다.

"코딩이 재미있나요?"

어떻게 코딩이 재미있을 수 있는가

제가 코딩을 즐기는 편인 건 사실입니다. 저는 문제를 해결하고 사람들을 도와주는 게 좋거든요. 세상의 모든 직업은 누군가의 문제를 해결해주고 돈을 버는 것이니. 아마 저는 어떤 일을 해도 즐거웠을 것 입니다.

그 무슨 일을 해도 즐거웠을 것이라는 말을 좀 더 구체적으로 해봐야겠습니다.

배달부의 고난과 행복

제가 예전에 배민 커넥트로 자전거 배달을 하던 때의 기억입니다. 배달은 여러모로 힘들었지만 여러모로 보람찬 일이었습니다. 배민 커넥트 수기 같은 걸 잠시 몇 문단 정도 적어보려 합니다.

산 위에서 물건을 시킨 분에게 배달을 가려고, 자전거를 타고 산을 오르기도 하고요. (물론 오르막 할증 같은 건 없었습니다) 눈이 오면 돈을 더 주는데 배달을 나갔다가, 도로 한복판에 미끄러져서 상처가 나도 배달 음식이 멀쩡한지부터 확인하기도 했습니다. 너무 추우니까 배터리 37프로 남은 핸드폰이 죽었는데... 길을 잃고 몇 시간 째 헤매다가 겨우 배달을 하고 죄송합니다 사과했던 날도 있었어요.

배달 교육에서는 이런 상황에 어떻게 대처해야 하는지 알려주지 않았는데, 사수도 없었지요. 매일 배달을 하고 나면 그날 있었던 문제와 대책을 메모장에 적어보고, 인터넷에 다른 배달부 분들 후기 같은 걸 검색해봤습니다.

그래도 배달은 보람찬 일이었습니다. 세상을 연결해주는 직업이니까요. 평생 가본 적 없는 다양한 식당 주인이며 직원 분들을 만나고요. 개중에는 음료수를 주시는 분도 있고, 저를 걱정해주시는 분도 있었습니다. 배달을 시키는 분들도 다양합니다. 그 중에는 배달이 정말 필요한 분들도 있었어요. 아기를 기르는 분들은 벨을 누르지 말아달라 하시고, 기저귀나 생필품을 B마트로 시키시곤 합니다. 부모님은 어디 가셨는지 아이들만 있는 집에서 저녁 밥을 시키기도 하고요. 그렇게 매일매일의 배달 하나하나가 저에게는 가치 있는 일이었습니다.

돈도 적게 벌진 않았습니다. 시간 당 12000원 넘게 벌었거든요. 그렇게 번 돈은 참 소중했습니다.

배달부를 그만둔 건 재미 없어서는 아니었고, 이러다 어느 날 또 넘어지거나 차에 치여 죽겠다는 생각이 들어서였습니다. 오랜 시간 하기에는 체력도 부족했고요. 배달부는 예나 지금이나 고된 직업이고, 플랫폼에 종속되어 있지만 고용된 노동자가 아닙니다. 플랫폼은 항상 중개자에 불과함을 주장하죠. 배달업을 시작하는 분들은 형식적인 안전 교육 밖에 받지 못하고 있고요. 이 이야기가 이 글의 주제는 아니니 궁금하신 분은 배달의 민족은 배달하지 않는다를 읽어보시길 바랍니다.

다시 코딩 이야기를 해봅시다.

가치 있는 문제를 해결하는 노동자

저는 군대에서 엑셀로 자동화를 하며 코딩으로 밥 벌어먹고 살아야지 생각했습니다. 긴 글을 쓴 적도 있어요. 사람들의 야근을 없애주는 건 참 멋진 일이었습니다.

프로그래머는 일자리를 빼앗는 직종이라고도 합니다만. 꼭 그렇지만은 않습니다. 새로운 직업을 만들어내기도 하고, 사람들이 힘들어 하는 단순 노동을 쉽게 만들기도 합니다. 기술은 가치 중립적이라는 순진한 이야기를 하려는 것은 아니고요. 기술자는 책임감을 가지고 기술이 어떻게 쓰일지 고민해봐야 한다는 것입니다. 앞에서 배민의 사례를 이야기한 이유이기도 합니다.

"모든 시스템은 목적을 가지고 구축된다. 모든 행동에는 의도한 결과와 의도하지 않은 결과가 모두 있다. 시스템의 목적이 단순히 돈 벌기일 수 있겠지만 그 결과가 세상에 미치는 영향은 원래 목적을 뛰어넘기도 한다. 시스템을 구축하는 엔지니어는 이 결과를 신중하게 생각해서 의식적으로 어떤 세상에 살고 싶은지 결정할 책임이 있다." "나는 소프트웨어 엔지니어가 오로지 기술에만 집중하고 그 영향을 무시하는 것만으로는 충분하지 않다고 생각한다. 소프트웨어 엔지니어도 윤리적 책임을 져야 한다"

[데이터 중심 애플리케이션 설계] 마틴 클레프만, 위키북스, 정재부 김영준 이도영 옮김

저는 지금은 엔터 테크 회사에서 일을 합니다. 케이팝 팬들을 위한 채팅이며 스토어며, SNS를 만들고 있어요. 회사는 돈을 벌려 하기 때문에, 케이팝 팬들에게는 늘 욕을 먹습니다. 저도 케이팝 팬 중에 한 명으로서 이 산업이 소비를 조장하는 건 분명 알고 있죠.

하지만 한편으로는 꼭 그런 이유로 욕을 먹는 건 아닙니다. 앨범 좀 사려 했는데 결제가 안 되고 버그가 나면 불쾌하죠. 해외의 인터넷이 느린 분들에게는 30초 넘게 로딩을 기다려야 하는 게 고통스럽습니다. 시각 장애인을 비롯해 다양한 환경에 놓인 분들에게 접근하기 어려운 서비스를 제공하는 것도 문제고요.

이런 때 저는 지금까지 공부해온 지식과 노력으로 문제를 해결할 수 있습니다. 프론트엔드 테스트 문화를 만들어서 에러를 10배 이상 줄이기도 하고요. 폰트, 이미지, 번들 사이즈 등을 최적화해서 사이트의 초기 로드 시간을 줄일 수도 있습니다. 아이콘이 있는 버튼에 라벨을 달아야 한다고 코드 리뷰를 할 수도 있습니다.

그 과정은 그리 재미있지는 않습니다. 사람들을 설득하기도 해야 하고, "접근성 같은 걸 왜 신경 써야 해요?"라고 묻는 분이 많아요. 그게 아니라도 공부할 건 얼마나 많고, 매번 삽질할 때마다 답답한 건 누구나 마찬가지일 겁니다. 그렇게 노력한다고 고객 분들이 칭찬해주시는 것도 아니지요.

일은 돈을 벌기 위해 하는 것일 뿐이고, 가치는 추구하면 안 된다는 분들도 있습니다. 틀린 말은 아닙니다. 너무 비현실적인 이상을 꿈꾸게 되면 초라한 현실 앞에 고통스러워지고 우울해지기도 하니까요. 내가 이런저런 노력을 해도 이상주의적이고 현실을 모른다며 어린애 취급을 받기 쉽습니다. 저에게 회사는 돈을 벌기 위한 곳이라고 칠판에 크게 써서 가르치신 분도 있었어요.

그래도 이런 노력들은 성공으로 이어지기도 합니다. 버그를 줄이고 성능을 높이는 건 높은 전환율과, 회사에게도 이익으로 돌아옵니다. 접근성을 신경 쓰다보면 테스트가 편해지거나, 검색엔진 최적화에 도움이 되기도 하며, 모든 사용자들의 경험을 개선해주기도 합니다.

물론 테스트에 전혀 도움이 안 되는 접근성도 있지만, 그런 것도 은근슬쩍 끼워팔면서 "당연한" 것처럼 만들 수도 있어요.

제가 존경하는 "나에게 주어진 길을 걸어"오신 분들이 그렇듯. 하나 둘 문제를 해결해나가는 것에는 즐거움과 자부심이 있습니다. 하나 둘 지식이 쌓이고 기반이 갖춰져가고요. 변화시킵니다. 뒤를 돌아보면 내가 지금까지 해온 노력들이 하나 둘 보이기도 합니다. 아직도 부족하고 실패한 것들도 보이고요.

당연히 이런 노력은 노동자들끼리만 해서 되는 건 아닙니다. 우리는 경영진을 설득하고 맞서 싸우는 한편으로, 목소리를 내고 포기하지 말아야 한다고 생각합니다. 내가 자부심을 느낄 수 있는 일을 하게 해달라고. 그것도 노동자의 권리니까요.

한편 정 아니다 싶으면 떠나는 것도 방법입니다.

천재와 능력주의 신화에 대하여

아, 물론 저는 다른 면으로도 특이한 사람입니다. 보통 코딩을 좋아한다고 하면 "모나드 너무 멋있지 않니?" 같은 식으로 코딩을 좋아하는 천재 오타쿠나 너드를 생각하고는 합니다. 공교롭게도 저도 그 스테레오타입에 들어맞는 사람으로 반쯤 오해 받기도 합니다만. 아니땐 굴뚝에 연기가 나겠냐고. 정말 제가 그런 사람인 면이 있는 것도 사실입니다.

하지만 유능함이란 상대적인 것이고. 사람들은 누구나 연습을 하면 나름대로 성취를 해낼 수 있어요. 능력이 부족하기에 무시 받아 마땅하다는 것은 능력주의일 뿐만 아니라. 자본가와 관리자들의 가스라이팅일 뿐입니다.

사람들은 적성을 타고난다는 식의 신화를 좋아합니다. 어떤 사람은 음악에 재능이 있고, 어떤 사람은 수학에 재능이 있다는 식으로 말이죠. 하지만 재능에 대한 연구를 보면... IQ가 높은 사람은 모든 걸 잘 합니다. 영어도 잘 하고 수학도 잘 합니다.

내적 동기에 대한 이론을 보면 사람은 자기가 잘 하는 걸 좋아한다고 합니다. 그러면 IQ 높은 천재들은 아마 뭘 해도 재미있지 않을까요?

음 그런데 현실은 그렇지 않습니다. 왜냐면 잘 한다는 건 상대적인 거라. 어떤 천재도 진짜? 천재와 비교하면 주눅들 방법은 많아요.

예를 들어 저는 아직도 카테고리 이론과 모나드나 Kleisli가 뭔지 잘 모릅니다. 하스켈도 할 줄 몰라요. RxJs도 쓸 줄 모르고요. GraphQL도 여전히 잘 모릅니다. 서울대나 카이스트를 나오지도 않았어요.. 제가 모르는 것들에 대해서도 긴 글을 쓰기도 했습니다. 앞에서도 말했지만 잘 알지도 못하면서 아는 척하면서 떠든다고 욕을 먹기도 해서. 제 메인 트윗을 걸어놓은 것이기도 해요.

"위키에선 질문을 하는 것보다 아는 만큼이라도 답을 적는 게 낫다. 그러면 그걸 읽는 누구든 당신이 아는 만큼을 배우고 더 아는 사람은 답을 더 풍부하게 해 줄것이다." - 워드 커닝험

비교는 사람을 갉아먹고 재수 없게 만듭니다. 중학교 2학년 때 제 영어 점수는 30점이었고요. 학원은 다녀 본 적이 없고 과외도 받아본 적이 없습니다. 저는 과학고를 가지 못하고 일반고에 가서 베개에 얼굴을 묻고 엉엉 울었던 기억이 있어요. 고등학교 1학년 때 옆자리 애가 일반물리학을 푸는 걸 보고, 나는 뒤쳐졌구나 생각하기도 했습니다.

하지만 세상에 천재들이 있다는 사실과, 나는 그런 재능이 없으니 무시 받아 마땅하고 비참해야 한다는 당위 사이에는 137억 광년 정도의 차이가 있습니다.

사람은 속도의 차이만 있을 뿐이지. 올바르고 효과적인 방법으로 꾸준히 배워나간다면... 성장하고 성취하기 마련입니다. 그러면서 즐거움도 찾고요. 누군가는 고등학교 1학년 때 일반물리학을 보겠죠. 그래서요? 누군가는 대학가서 볼 수도 있고, 누군가는 40대에 취미로 시작할 수도 있습니다. 누군가는 밤새우며 공부할 수도 있고, 누구는 퇴근하고 나서도 공부하긴 싫을 수도 있죠.

내 성취는 보잘 것 없고 뒤쳐졌다고 깎아내리지만 않으면, 누구나 즐거움에 이르게 될 겁니다.

자꾸 밤을 새워서 열심히 하지 않으면 도태되고 뒤쳐지는 게 현실이라며. 천천히 가도 괜찮다는 사람들은 현실을 모르는 무책임한 조언을 한다는 분들이 계신데. 세상에는 이미 그런 헛소리가 넘쳐납니다. 난장이가 쏘아올린 작은 공을 저렇게 되지 않으려면 더 열심히 공부해야지라는 자극 충전으로 쓰는 학생도 있고. 동기부여를 위해서라면서 독설하는 강사들 영상도 넘쳐나는 시대입니다. 적어도 한국에서는 지나치게 많아요.

하물며 그게 정말 현실이라면 시위를 하고 노동 운동을 하셔야합니다. 아니면 차라리 과학적이고 효과적인 학습법을 공유하거나요. 따끔한 인생 조언은 아무런 도움도 되지 않고, 심지어 동기를 깎아먹어서 성취에 싹을 자릅니다.

사실 우울한 사람들이 아니면 남과 비교하면서 자신을 깎아내리고. 평생 천재들을 질투하면서 헛소리에 휘둘려 인생을 낭비하진 않습니다만. 그래도 세상이 헛소리를 지속적으로 주입하면 조금씩 타격을 입는 건 어쩔 수 없어요. 심지어 생계를 쥐고 흔든다면 더욱 그렇죠. 오히려 그런 말들 때문에 우울한 사람이 늘어나는 게 아닐까요?

한국의 기이한 능력주의를 비판하는 책과 뉴스가 아무리 나와도 똑같은 말이 반복됩니다. "좋은 대학에 못 가면 인생 망한다"는 것처럼. 기업들은 수퍼~ 개발자만을 원하고. 능력 없는 사람은 도태되어 마땅하다는 식의 왜곡된 사고방식을 강요하는 분들도 많거든요. 그 사람들은 주니어 개발자를 후려치고, 능력 부족을 해고와 연봉 삭감의 근거라며 내세웁니다.

하지만 세상에는 탁월한 개발 실력을 가지고 이곳저곳 발표를 할 정도로 천재인데도 후려쳐진 연봉을 받는 사람도 많습니다. 연봉은 능력의 지표가 아니라 운이 좋았다는 걸 알려주는 지표가 아닐까 싶을 정도에요. 사람이 해고 당하는 것은 능력이 부족해서가 아니라, 회사가 노동자의 권리를 존중하지 않기 때문이고요. 해고에는 상당한 사유가 필요합니다. 회사는 사직서에 사인을 강요하고, 노동자들이 저항하지 못하게 만들려고 너는 능력이 부족하다고 가스라이팅을 하는 것일 뿐이에요.

여러분은 잘 하고 있습니다. 조금만 더 천천히 간다고 해도 너무 늦는 건 아닙니다. 더 효과적인 방법을 찾는 건 좋지만. 나를 후려치진 마세요. 인간 존중은 성취의 보상이 아니라, 기반입니다. 헛소리에 저항하고 서로의 자존감을 지탱할 동료를 찾읍시다.

부와 영광에 집착하면 재미가 없다

이제 헛소리들은 치워버렸으니. 정말 즐거움에 대하여 이야기할 수 있겠습니다.

사실 세상에 가치 있고 쓸모 있는 문제를 풀지 않더라도. 코딩이나 수학이나 물리학 같은 건 정말 즐거운 일이 될 수도 있습니다. 오히려 쓸모가 없어야 재미가 있을지도 모릅니다.

아니 뒤로가기를 누르시기 전에. 한 번만 들어보세요. 제가 물리학이 좋아서 물리학과를 간 사람이라 이런 이야기를 하는 게 아닙니다.

앞서 이야기한 것처럼 심리학자들은 사람의 내적동기에 대해 많은 연구를 했습니다. 사람은 누구나 남이 시켜서 하는 일을 싫어하고, 자기가 직접 결정해서 하는 일을 좋아합니다. 이러한 '자율성'은 내적동기의 중요한 요소에요. 거꾸로 말하면 외적 동기는 때로는 내적동기를 갉아먹기도 합니다. 좋아서 하는 일도 돈 받고 하기 시작하면 재미 없어진다는 것이죠.

여기에 역설이 있습니다. 돈 잘 벌고 성공하려고 뭔가를 배우려 하면... 재미가 없습니다. 취미를 생산적으로 하려 하면 재미가 사라지는 겁니다!

예를 들어 노래를 좋아서 하는 사람이 있다고 해봅시다. 회사를 다니면서 부족한 시간을 쪼개서 어떻게든 노래 연습을 하던 사람 말이죠. 노래가 늘 잘 되는 것도 아니고, 연습도 쉽진 않습니다만. 조금씩 성장하고 친구나 지인들에게 인정을 받는 것도 즐거웠지요. 그런데 어느 날 어느 공연장에서 와서 공연을 해주면 10만원을 주겠다고 합니다. 오. 처음에는 기뻐서 가요. 노래도 하고 돈도 버네?

그런데 어느 날부터 "어차피 재미로 하는 거잖아?"하며 열정페이로 공연비를 깎기 시작합니다. 10만원이 8만원이 되고, 6만원이 되다가. 가끔은 공짜로 공연을 해달라는 곳도 나옵니다. 그러면 좀 억울해지겠죠? 이제 이 사람은 즐겁게 코딩을... 아니 노래를 못하게 될 거에요.

이 이야기는 실제 심리학 실험을 각색한 것인데요. 원래 실험에서는 아이들에게 놀이기구를 타게 하거나, 장난감을 만들거나, 어른들에게 재미있는 게임을 시킵니다. 이런 실험은 수도 없이 많고, 내적동기와 귀인의 복잡함을 잘 보여주는 사례로 소개되고 있습니다. 더 궁금하신 분들은 대니얼 핑크가 쓴 드라이브를 읽어보세요.

쓸모 없는 수학과 과학은 어쩌다 재미 없어졌나

수학이나 물리도 비슷합니다. 옛날에 유튜브도 인스타도 없던 시절에는 말이죠. 방랑 과학자들이 있었습니다. 음유시인 마냥 마을을 돌면서 신기한 정전기 병 같은 거 보여주고 돈 받는 사람들이 있었어요. 귀족들은 유명 과학자가 하는 강연 티켓을 콘서트표 마냥 사서 보고요. 귀족들에게 수학은 재미있는 취미였습니다. 원래 돈 안 되고 쓸모 없는 일은 취미였어요. 그런 연구 속에서 어느 날 계산기도 나오고 컴퓨터도 나오고... 어쩌다보니 코딩이라는 직업도 생긴 겁니다. 코딩은 원래 군사용이었는데, 이제 사람들은 게임도 만들고 콘서트 예매 사이트도 만들고 하게 되었어요.

뉴턴이 콘서트 예매 사이트를 만들려고 미적분을 개발하진 않았는데요! 쓸모 없는 걸 하다보니 예상치 못한 쓸모를 찾게 된 것이죠.

수학이 돈이 되기 시작했습니다. 이제 사람들이 수학과 과학을 잘 해야 좋은 대학 가고, 돈 잘 번다고 강요를 받고 살고 있습니다. 열심히 수학 공부를 해서 의대를 가지요. 그러니 수포자가 생기고 다들 수학과 과학을 싫어하게 되었어요.

야근이 없고 유럽 어느 나라처럼 하루 6시간 근무가 당연했으면 한국인도 취미를 좀 즐겼을지 모릅니다. EBS 30일 수학을 취미로 푸시는 분들도 있죠.

하지만 우리는 다들 여유가 없고 쓸모 있게 갓생을 살려 합니다. 제 아버지도 IMF이후로 사업이 망했고요. 저는 컨테이너에 산다고? 왕따 당하는 가난한 어린 시절을 거쳐 개발자가 되었는데. 설 연휴에도 회사에 나가고 팀원 분 PR을 보면서 코드리뷰를 하며 살게 되었습니다. 물리가 좋아서 물리학과를 나왔지만 물리 공부를 마지막으로 한 게 언제인지도 모르겠고, 밥 벌어 먹고 살려고 코딩을 하기로 했죠. 제가 좋아하는 일을 하면서 살아서 좋겠다는 분들은, 제가 물리로 밥 벌어 먹고 살지 못하는 걸 어떻게 생각하실지 궁금해요.

점을 이어가기

"미래를 상상하면서 점을 연결할 수 없다. 오직 살아온 경험들을 연결하는 것만 가능하다. 그러니 점들(나의 모든 경험)이 미래에는 어떻게든 이어질 것이라고 믿어야 한다. 배짱, 운명, 인생, 카르마 등 무엇이든지 믿음을 갖고 해라. 이러한 접근은 나를 절망하지 않게 했고, 내 인생의 모든 변화를 가져다줬다." - Steve Jobs

그래서 저는 코딩으로 밥 벌어 먹고 살기로 다짐한 뒤로. 꼼수를 찾기로 했습니다. 저는 취직이 불안해서 물리 공부는 다시 못하겠는데... 그래도 코딩도 좋은 취미이지 않을까 싶었어요. 내 인생 1막은 물리였지만, 2막은 코딩일 수도 있지 않겠습니까. 그래서 저는 타협안으로 쓸모 없는 코딩을 하기로 했습니다.

예를 들어 함수형은 당장 취업에 도움이 되는 지식은 아니었습니다. 제가 처음 배운 함수형 언어는 스칼라였고, 엘릭서, 클로저, 줄리아, 루아 같은 언어들도 다 마이너였지요. 이런 언어를 쓰는 회사는 지금도 손에 꼽고요. 함수형이 내가 답답하게 여기는 객체지향 디자인 패턴들을 단순하고 예쁘게 만들어준다는 걸 보면서 만족감을 느꼈습니다. 물론 채식주의자처럼 내 앞길이 좁아지는 것도 느꼈습니다. 제가 처음 들어간 회사 CTO는 객체지향이나 함수형은 학자들이나 떠드는 것이지, 실무랑은 무관하다고 그랬어요.

그런데 수학과 과학이 걸어온 역사가 그랬던 것처럼요. 쓸모 없는 걸 하다보면 어느샌가 쓸모가 생기고 인정을 받기도 합니다.

프론트엔드의 현재 주류는 리액트인데, 리액트는 여러모로 함수형 개념을 가져다 쓰고 있습니다. 저는 함수형보다 리액트를 나중에 배웠는데요. 저에게는 익숙한 불변이나 순수함수 같은 개념들을 쉽게 이해하고 사용할 수 있었어요. 회사에 들어가니 명령형으로 복잡하고 힘들게 코드를 짜고 있었는데요. 함수형으로 리팩토링하니 이해하기 쉽고 깔끔한 코드가 되기도 했습니다. 제가 배운 함수형 지식의 90%는 쓸모가 없었지만, 10%만 가지고도 큰 도움이 되었습니다.

이 내용은 제가 함수형 컨퍼런스에서 동료를 당황시키지 않는 순수 함수 적정 기술이라는 이름으로 발표하기도 했어요.

그러면 이제 사람들은 질투를 하고 대단하다고 합니다. "어떻게 그런 깊이 있는 지식을 얻게 되셨냐"고 그러지요. 그리고 코딩을 좋아해서 부럽다고 합니다. 참 역설적인 일이죠. 과연 제가 가난한 시민운동가로 열심히 깊이 있는 책을 써도 그런 말을 들을까 싶습니다.

앞서 말한 것처럼 프로그래머라고 취미로 코딩을 할 필요는 없습니다. 오히려 그러면 재미가 없을 거에요. 차라리 암벽등반이나 헬스를 하시거나. 수학이나 철학 공부를 하시는 건 좋습니다. 망해가는 게임을 하시거나 장송의 프리렌을 정주행하거나, 판다 푸바오를 보시는 것도 좋습니다. 그런 취미들도 역설적으로 예상치 못한 쓸모가 있을지 누가 알겠어요?

연구들은 수학을 공부한다고 문제 해결 능력이 향상된다는 증거를 찾진 못했습니다만. 다양한 배경을 가진 사람들이 협력할 때 문제를 더 해결하기 쉽다는 건 밝혀냈습니다.

저 역시 고등학교 때 공부는 안 하고 선생님께 혼나면서 읽었던 정치철학과 과학철학 책들이 제 삶의 가치와 방향을 정해줬고요. 배달부로 일했던 경험이 서버나 비동기 같은 개념을 이해하는데 좀 도움이 되었어요. 교사가 되려고 배웠던 심리학과 학습과학 덕분에 코치로 먹고 살았고요. 통신병으로 배웠던 수리의 기술도 디버깅을 잘 하게 해주었습니다. 카드게임이나 TRPG를 했던 것도 이상하게 도움이 됩니다. 아이즈원을 위해 만들었던 앱으로 프론트엔드 개발자가 되었고. 푸바오도 언젠가 도움이 될지 모릅니다.

물론 다 농담입니다. 미래에 도움이 되겠지 하고 즐거운 취미를 만들 수는 없어요. 그저 과거에 했던 일이 어쩌다보니 연결이 되더라일 수도 있고. 아니면 이미 배워온 것들을 어떻게든 쓸모 있게 만드는 것일지도 모르겠습니다만. 제가 나중에 취업에 도움이 될 거라 생각하거나 사람들에게 똑똑하다 칭찬을 받으려고 난장이가 쏘아올린 작은 공과 롤즈의 정의론을 읽고, 대장장이 아들로 초등학교 밖에 나오지 못한 과학자에 대한 과학사 책을 읽었던 건 아닙니다.

그러니 일단 팍팍한 삶 속에 작은 취미들을 심어보세요. 자본가와 투쟁하고 보람있는 노동자의 삶과 쓸모 없을 권리를 쟁취합시다. 그게 쉽지 않다는 건 저도 알고 여러분도 아시겠지만. 평생 우울해하며 남과 비교하면서만 살 수는 없잖아요?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment