프로그래밍을 즐겨도 여전히 괜찮아요

It's still ok to enjoy programming

chriskiehl.com ▲ 432 댓글 407 goostavos

요약

AI가 코드를 대신 짜는 시대에도 프로그래밍을 그 자체로 즐기는 것은 괜찮습니다.

자바 프로그래밍 책을 쓴 개발자 크리스 킬의 글입니다. 해커뉴스의 비관적인 글들을 읽다가 프로그래밍을 즐기면 안 될 것 같은 분위기에 반박하고 싶어 썼다고 밝혔습니다.

왜 중요한가

  • AI 때문에 손으로 짜는 코드의 쓸모를 의심하는 개발자에게 일과 취미를 따로 보자고 권합니다.
  • 결과물이 아니라 어려운 것을 이해하는 과정이 보상이라는 관점을 다시 꺼냈습니다.

핵심 내용

  • 업무에서는 코드가 사업 가치를 내야 하므로 손으로 짜는 코드의 경제성이 바뀐 점은 인정했습니다.
  • 그래도 일이 삶의 전부는 아니며, 무언가를 즐기는 데 경제적 이유는 필요 없다고 했습니다.
  • 주말에는 충돌 판정이 엉성한 벽돌 깨기 게임을 만들며, AI가 한 번에 만들 수 있어도 씨름하는 과정이 목적이라고 했습니다.
  • 의존 타입 언어(값을 타입에 담아 오류를 미리 잡는 언어)의 발상을 자바에 옮겨 보는 등 쓸모가 불분명한 공부도 즐긴다고 했습니다.
  • 비관적인 글을 많이 볼수록 압박이 커지지만 거리를 두면 사라진다고 했고, 자신도 바이브 코딩(AI에게 맡겨 코드를 짜는 방식)을 즐긴다고 덧붙였습니다.

HN 반응

  • 취미로 만든 도구와 같은 도구가 AI로 몇 시간 만에 나와 의욕이 꺾였다는 경험담에, 배움이 목적이면 남의 속도는 상관없다는 반론이 맞섰습니다.
  • 일에서 잃은 즐거움을 무급 취미로 되찾으라는 제안은 공허하다는 지적과 함께, 프로 축구 선수에게 로봇 관리를 시키는 격이라는 비유도 나왔습니다.

댓글

30개 표시 · 전체 407개
  1. etra0 HN

    일이 곧 삶은 아니라고 해도, 취미로 하는 프로그래밍도 영향을 받았습니다.

    몇 년 전에 어떤 게임을 리버스 엔지니어링해서 아주 특수한 도구를 만드느라 공을 많이 들였습니다. 최근 그 게임이 업데이트되어서, 커뮤니티에 무료로 기여하려고 짬을 내서 작업했습니다. 그런데 몇 시간 뒤에 똑같은 일을 하는 도구가 올라왔는데, 전부 바이브 코딩으로 만든 것이었습니다.

    도구를 어떻게 만들었는지 신경 쓰는 사람이 커뮤니티에 일부 있긴 해도, 대부분은 신경 쓰지 않습니다. 그냥 목적만 이루면 되니까요.

    이제 제 취미 프로그래밍마저 AI에 따라잡혔습니다. 좋아서 했고 보상 따위는 바라지도 않았던 일인데, 솔직히 우울하다는 말밖에 안 나옵니다.

  2. shoobiedoo HN

    저는 요리나 제빵에 빗대어 보려고 했습니다. 저도 꽤 괜찮은 크루아상을 구울 수 있습니다. 반죽 시터기와 수제 발효 버터를 갖춘 사람이 만든 것만큼은 못 되겠지만, 친구들과 가족은 불평 한마디 하지 않을 겁니다.

    문제는 뭔가를 구워서 나누면 사람들이 한자리에 모인다는 점입니다. 잡담도 하고, 근황도 나누고, 사람 사는 이야기가 오가죠. 결국 그게 요점이기도 하고요.

    쓰신 글처럼 프로그래밍은 대부분 목표를 달성하는 쪽이 이기는 경주입니다. 데모씬이나 레트로 프로그래밍은 예외일 것 같고요. 저는 리스프 구현체를 만들어 보려고 ARM 어셈블리를 배우기 시작했습니다. 쓸모도 없고 쓸 사람도 없을 거고, AI라면 몇 분 만에 뚝딱 만들 겁니다. 그래도 저 같은 취미 프로그래머의 목표는 그렇게 여러 방식으로 이해하려고 애쓰며 버티는 데 있는 것 같습니다.

  3. AdieuToLogic HN

    문제는 뭔가를 구워서 나누면 사람들이 한자리에 모인다는 점입니다 ...

    솔직히 저는 그게 왜 문제인지 모르겠습니다.

    결국 그게 요점이기도 하고요.

    맞습니다.

    쓰신 글처럼 프로그래밍은 대부분 목표를 달성하는 쪽이 이기는 경주입니다 ...

    프로그래밍이 무엇이든, 그 즐거움이 가는 길 자체에 있는 사람이라면 그렇지 않습니다.

    저는 리스프 구현체를 만들어 보려고 ARM 어셈블리를 배우기 시작했습니다. 쓸모도 없고 쓸 사람도 없을 거고, AI라면 몇 분 만에 뚝딱 만들 겁니다 ...

    하면서 즐거우면 그만인데, 누가 쓰든 말든, 다른 도구가 같은 걸 대신 만들어 주든 말든 누가 신경 씁니까?

    직접 구운 "꽤 괜찮은 크루아상"과 마찬가지로, 다른 사람이 뭘 만들 수 있느냐는 중요하지 않습니다. 당신은 꽤 괜찮은 크루아상을 굽는 사람입니다.

    행복은 당신의 것입니다. 그 행복을 찾아가는 길을 즐기십시오.

  4. andyferris HN

    맞습니다. 제가 제일 좋아하는 프로그래밍 프로젝트는 가족과 친구 한두 명이 해 본 테트리스 복제판입니다.

    함께 나누는 커뮤니티가 꼭 온라인일 필요는 없습니다. 크루아상을 배달 보내는 건 아니겠지만, 친구들과 가족은 분명 그 크루아상(그리고 당신)을 고마워할 겁니다. 원하신다면 소프트웨어도 똑같이 할 수 있습니다.

  5. snek_case HN

    프로그래밍에는 온라인에서 미술이나 음악을 공유하는 것과 비슷한 창작의 면이 있을 수 있죠. 그런데 안타깝게도 그것도 영향을 받았어요. 저는 제법 완성도 있고 꽤 근사하다고 생각하는 프로젝트를 계속 내놓고 있는데, 이제는 아무도 관심이 없는 것 같아요. 소셜 미디어가 포화 상태예요.

  6. andyferris HN

    하나 여쭙겠습니다. 취미로 하시는 프로그래밍이 도구를 만드는 것 자체입니까, 아니면 만든 도구를 다른 사람들이 즐기도록 배포하고 그 커뮤니티와 함께하는 것입니까?

    제가 보기에 글은 오직 앞의 경우만 다룹니다. LLM 코드 생성이 커뮤니티의 역학이나 어떤 프로젝트가 공개되느냐 같은 것을 크게 바꾸는 건 분명합니다.

  7. itishappy HN

    참 통찰력 있고 간결하네요!

    저는 세 번째 가능성도 짚어 두고 싶어요. 사실 두 번째의 하위 항목인데, 커뮤니티 안에서의 경쟁이에요. 누가 제일 빨리 내놓느냐가 취미인 사람도 있을 수 있잖아요(크래킹 커뮤니티가 그렇죠). 요즘 같은 세상에서는 그게 확실히 흔들릴 것 같아요.

  8. faixon HN

    글쓴이의 요지를 놓치고 계신 것 같습니다. 그가 든 예시는 모두 프로그래밍을 결과물을 내는 일이 아니라 배우는 일로 다룬 것이었습니다. 더 큰 체계(오픈 소스 코드, 커뮤니티 게임 등) 안에서 기여자로서 하는 프로그래밍에 대해서는 아무 말도 하지 않았습니다. 그는 프로그래밍이 외적 목표를 더 효과적으로 충족해서가 아니라 내적 동기를 충족하기 때문에 좋아해도 괜찮다고 주장하는 것입니다.

  9. overtone1000 HN

    저는 부모 댓글의 뜻이, 여정과 목적지를 떼어 놓는 게 현실에서는 쉽지 않다는 것이라고 봅니다. 특히 함께 여정을 걷던 커뮤니티를 빼앗긴 상황이라면 더 그렇고요.

    마라톤을 뛰는데 중간쯤에서 다들 택시를 타고 결승선으로 가 버리면 실망스럽지 않겠습니까.

  10. zabriel_goss HN

    크게 공감합니다. 음악으로 생각해 보면, 혼자 연습하는 데서 즐거움을 얻고, 장인으로서 다른 연주자들과 협업하는 데서 얻고, 청중 앞에서 연주하는 데서도 얻습니다. 이 셋은 서로를 키워 줍니다.

    그러니 청중이 합성 음악으로 옮겨 갔고 연주자들도 그렇게 했다면(이제 비유를 좀 늘려 보는 겁니다!), 순수하게 즐기려고 혼자 계속하는 건 여전히 가능합니다. 하지만 이런 전 세계적인 전환으로 잃은 것이 많습니다.

  11. tonyhart7 HN

    그래도 남들이 하는 방식 때문에 자기 행복이 흔들리게 두면 안 되죠.

    마치 지금 하는 일이 사람들 비위를 맞추려고 하는 일인 것처럼 말씀하시네요.

  12. etra0 HN

    완전히 동의하지는 않습니다.

    프로젝트 전체를 하면서 리버스 엔지니어링 자체, 도구, 정적 분석과 동적 분석의 차이 같은 걸 많이 배웠습니다. 그게 프로젝트에서 가장 재미있는 부분이었고요.

    사람들이 프로젝트를 내놓는 속도는 취미 커뮤니티에서조차 그런 기회를 크게 없애 버립니다. 그게 바로 제 말의 요점 중 하나입니다!

    저는 늘 결과물보다 과정을 즐겼습니다. 그래서 다른 분들보다 이 일이 개인적으로 더 크게 와닿는 것 같습니다. 더 많이 만들어 내는 데서 동기를 얻는 사람도 있지만, 저는 그 뒤에 있는 배움의 과정에서 동기를 얻었습니다. 이 둘은 양립할 수 없어서, 수익이 목적이 아니라 해도 안타깝게도 속도가 경주에서 이기고 있습니다. 제가 좀 비관적인 편이라는 건 인정합니다. 저도 직장에서는 여전히 AI 도구를 쓰지만, 이제는 프로그래밍과 상관없는 취미를 찾아볼 때가 된 것 같습니다.

  13. Xirdus HN

    그런데 다른 사람이 더 빨리 내놓는다고 해서 왜 그걸 배울 기회가 사라지는 건가요? 그냥... 그 사람들이 한 걸 안 보면 되는 거 아닌가요?

  14. munchbunny HN

    하면서 배울 수 있어야 도움이 됩니다. 완성된 결과물이 동기를 주고, 배우는 것은 재미있으니까요.

    게임 모딩 같은 취미 영역에서도 더 빨리 내놓으라는 압박이 있다는 데 저도 동의합니다. 더 허접한 구현이 먼저 자리 잡는 걸 막으려고라도 서둘러야 하니까요. 그런 AI와 압박 때문에 뭔가를 만들 의욕이 나기 어려워졌습니다. 기술적인 퍼즐을 즐기거나 세부를 제대로 다듬을 시간이 없기 때문입니다.

    지나간 시절을 아쉬워하는 건 아닙니다. 다만 취미로 프로그래밍을 하는 느낌이 달라졌고, 재미있던 부분들이 예전만큼 맞아떨어지지 않아서 지금은 덜 하게 됐다는 말입니다.

  15. Xirdus HN

    저는 그 압박이 어디서 오는지 여전히 이해가 안 됩니다. 결국 취미 프로그래머가 만족시켜야 할 독자는 자기 자신뿐입니다. 서두를 이유가 없습니다. 유일한 이해관계자인 나 자신은 유일한 개발자인 나 자신이 하는 일이면 뭐든 괜찮다고 할 테니까요. 스스로 정한 마감 말고는 마감이 없으니, 기술적인 퍼즐을 풀 시간은 얼마든지 있습니다.

    혹시 취미가 프로그래밍 그 자체가 아니라 다른 사람들이 내 소프트웨어를 쓰는 것이라는 뜻이라면 이야기가 다릅니다. 그런 경우라면, 네, 모든 면에서 동시에 AI에게 밀리는 건 괴로운 일이겠습니다.

  16. LoganDark HN

    비슷한 결과물이 이미 있는데도 과정을 즐길 수 있는 사람만 있는 건 아닙니다. 배우는 행위만으로 충분히 만족스러운 사람도 있다는 건 압니다. 하지만 저를 포함해 많은 사람이 뭔가를 만들려고 프로그래밍을 시작했습니다. 그 뭔가가 이미 있다면 더 만들 이유가 없습니다. 저는 아무도 안 쓸 걸 만드는 게 재미없습니다.

  17. jan_m_savage HN

    프로그래밍과 컴퓨터 과학의 아이디어가 그 영역 밖으로 새어 나와서, 전혀 다른 분야의 '현실' 문제를 푸는 힌트를 준 경우가 셀 수 없이 많습니다. 그것만으로도 프로그래밍은 배우고 해 볼 가치가 있습니다.

    저는 AI 회의론자이기도 해서 과대광고에 넘어가지 않습니다. 물론 에이전트 코딩이 요즘 새로 반짝이는 물건이긴 하지만, AI는 이미 몇 년째 있었는데도 AI가 만든 소프트웨어의 결과물은 기대에 못 미치고 사람이 많이 붙들고 손을 봐 줘야 합니다.

  18. searls HN

    AI 코딩 도구에 가장 크게 반대하는 사람들 중 상당수는 프로그래밍을 취미로 해 본 적이 없거나 특별히 재미있다고 여긴 적이 없을 것 같고, 일이 바뀌고 있다고 해서 이제 와 시작하지도 않을 거라고 생각합니다.

    업계 사람 거의 모두가 손으로 코드를 치는 일을 직업으로서 좋아했다고 봅니다. 해 볼 만한 즐거운 기술이었고, 몇십 년 동안 프로그래머는 다른 대부분의 직업에 비해 아주 좋은 대우를 받았으니까요.

    지금은 여러 에이전트를 굴려 가며 원하는 일을 시키고, 결과물을 검증할 방법을 찾고, 문제를 바로잡고, 주의력을 이리저리 쪼개 쓰면서, 갈수록 불안해지는 취업 시장을 불안하게 곁눈질해야 합니다. 많은 사람에게 이건 눈에 띄게 덜 즐겁습니다. 엔지니어링이나 프로덕트 매니저 역할에 훨씬 가깝게 들리고 느껴지는데, 상당수 프로그래머는 절대로 자발적으로 하겠다고 나서지 않았을 일입니다.

    저는 아마 "망했다" 척도로 10점 만점에 8점쯤일 겁니다. iOS 앱 열 개를 돌리고 있고, 1년 넘게 코드를 한 줄도 쓰지도 읽지도 않았으니까요. 그래도 이 사람들이 어디서 출발하는지는 이해합니다. 이 새로운 일에서 잃은 것을 돈 안 되는 새 취미로 되찾으라는 제안은, 그 일에 대한 불만을 내내 목소리 높여 온 사람들에게 공허하게 들릴 겁니다.

  19. happytoexplain HN

    AI 코딩 도구에 가장 크게 반대하는 사람들 중 상당수는 프로그래밍을 취미로 해 본 적이 없거나 특별히 재미있다고 여긴 적이 없을 것 같고, 일이 바뀌고 있다고 해서 이제 와 시작하지도 않을 거라고 생각합니다.

    말이 안 됩니다. 저를 포함해서 제가 아는 사람 중 AI가 가져온 큰 그림을 싫어하는 사람들은 모두 프로그래밍을 엄청나게 좋아하고, 일로도 취미로도 합니다. 우리 회사에서 AI에 가장 긍정적인 사람들은 프로그래밍을 딱히 즐기지 않던 사람들이고요. 오컴의 면도날을 거꾸로 적용하고 계십니다.

  20. 20k HN

    저는 프로그래밍 자체를 딱히 즐긴 적이 없는데도 AI는 별로라고 생각합니다. AI가 가속하는 부분이, 제가 보기에 소프트웨어 프로젝트를 무너뜨리는 쪽으로 이어지는 부분, 즉 코드를 이해하지 못하는 부분이기 때문입니다.

    지난 20년간의 경험으로 보면 그게 프로젝트가 죽는 것과 가장 상관관계가 높은 변수 1순위입니다. 그러니 그걸 더 앞당기고 싶지 않습니다. 프로그래밍이 생긴 이래로 사람들은 실제로 무슨 일이 벌어졌는지 이해하는 어려운 단계를 건너뛸 방법을 계속 찾아 왔고, 그건 언제나 나쁜 생각이었습니다. 프로젝트의 구조를 내 것으로 체화하는 과정이 프로젝트에서 가장 값진 단 하나이기 때문입니다. 사람이 체화할 수 있는 프로젝트 구조를 만들고, 그 일을 해내는 것이 바로 소프트웨어 엔지니어링입니다.

  21. asanineassasin HN

    일리가 있는 말씀이라서, 아키텍처 하네스를 만들어 그 문제를 해결하지 않을까 싶습니다. 예를 들면 저장소 x를 보고 그 코딩 스타일과 아키텍처를 프롬프트로 압축한 다음, 새 모듈을 만들 때마다 그 프롬프트를 기억시키는 식으로요.

    그래도 말씀하시는 취지는 이해합니다.

  22. tonyhart7 HN

    크고 복잡한 산업용 소프트웨어 얘기라면 말씀하신 대로입니다.

    그런데 있잖아요 ???? 대부분의 소프트웨어는 그렇지 않아요.

    팀(Timmy)이 쿠키 스타트업을 온라인으로 팔려고 랜딩 페이지가 어떻게 돌아가는지 알 필요는 없잖아요.

    무슨 말인지 아시겠죠 ???? 당신은 대체되지 않아요.

    AI는 "지저분하고 허접한" 일을 하는 사람들만 대체해요. 제3세계에서 워드프레스 플러그인 고쳐 주는 사람 같은 거라고 생각하시면 돼요.

    당신이 건드린 적도 없고 하고 싶지도 않은 업계의 한 부분이에요.

  23. a57721 HN

    이제 그걸 경영진에게 설명하는 일만 남았네요... 코드를 다루지도 않고, AI는 챗봇으로만 접해 봤으면서 모든 걸 "AI 네이티브"로 하라고 요구하고, 그 결과를 수습할 때는 있지도 않을 사람들에게요.

  24. snohobro HN

    동의합니다. 저는 지난 몇 년간 Ops 엔지니어로 일하면서 프로그래밍과 코딩이 업무의 일부였는데, 그게 제가 가장 좋아하는 부분이었습니다. 그래서 AI 사용에 꽤 강하게 반대해 왔습니다.

    그런데 회사에서 프로그래밍 지식이 거의 없는 다른 분들이 회사에서 쓸 만한, 실제로 돌아가는 솔루션을 만들어 냈습니다. 모두 제 할 일 목록에 있었는데 손을 못 대고 있던 프로젝트였어요.

    그 순간 깨달았습니다. 적응해서 AI 솔루션으로 더 빨리 움직이지 않으면 금방 추월당하겠구나 하고요. 그 뒤로 제 산출물은 꽤 늘었습니다.

    그다지 신나진 않지만, 어느 회사나 그렇듯 여정보다 결과가 훨씬 중요합니다. 돌아가기만 하고 최소한 대체로 유지보수가 가능하다면, 경영진은 어떻게 거기까지 갔는지 별로 신경 쓰지 않습니다.

    하지만 이 모든 건 어쩔 수 없이 떠밀린 겁니다. 기본기가 없는 사람들이 제 장인 정신으로 만든 맞춤 솔루션과 동등한 결과물을 내고 있었으니까요. 벽에 글씨가 쓰여 있었습니다.

  25. jackb4040 HN

    의견을 가질 권리는 있으시지만, 여기에는 서로 다른 축이 두 개 있다는 점을 짚고 싶습니다. 근무 환경에 미치는 LLM의 영향에 불만이시면서도 그게 불가피하다고 인정하시고, 연구소들이 소프트웨어 엔지니어링 시장의 상당한 가치가 대체될 거라는 예측을 적어도 어느 정도는 진심으로 한다고 보십니다.

    답글을 받으신 분이 뒤의 점에 동의한다고는 할 수 없습니다. 그래서 상대방이 보기에 동의하는 척 시작해 놓고, 정작 자신이 불평하는 바로 그 일을 일으킨 회사들을 옹호하는 주장을 하시는 건 달갑지 않을 수 있습니다.

    경영진이 LLM이 만든 결과물을 "유지보수 가능하다"고 생각한다고 말씀하시는 데도 모순이 있다고 봅니다. 그 사람들은 경영대학원을 나왔지, 그게 무슨 뜻인지 모릅니다. 그걸 이해하는 게 일인 사람들이 따라갈 수 있는 속도보다 코드를 빨리 내보내면 어떤 결과가 나오는지 설명하는 건 당신 일입니다.

  26. goosejuice HN

    프로그래밍을 즐기면서도 AI를 환영하는 사람도 많습니다. 프로그래밍한다는 행위가 제품은 아니니까요. 세상에 도움이 되면서도 자금을 구하기 어려운 제품도 있습니다.

  27. rubikscube09 HN

    프로그래밍이 재미있다고 생각한 사람들은 예전 방식으로는 이제 그걸 직업으로 할 수 없다는 사실에 더 화가 나지 않을까요? 지금까지는 일하는 날이 하루도 없었는데 이제 매일 일해야 하는 셈이니까요.

  28. searls HN

    네. 많은 사람이 겪는 일이 이쪽에 훨씬 가깝고, 그래서 글쓴이의 제안인 돈 안 되는 취미로 하라는 말이 그들의 문제를 해결해 주지 못합니다.

  29. ryandrake HN

    십 대 시절 내내 풋볼을 연습하고, 고등학교에서 대표팀으로 뛰고, 대학 수준에서 정말 잘하게 되고, 마침내 NFL 프로 선수로 영입된(꿈이 이뤄졌다!!) 느낌인데, 갑자기 구단주가 이렇게 말하는 거죠. "이제 자네는 풋볼을 못 뛰네. 연봉은 똑같이 줄 테니 풋볼을 하는 로봇들을 관리하게. 받아들이게."

  30. abalashov HN

    그런 비유는 생각해 본 적이 없는데, 딱 들어맞네요.

Hacker News에서 보기 ↗