
강의 중에 ‘내가 얼마나 오래 떠들까’를 예측하는 시장을 실시간으로 열었다. AI로 급히 만든 게임은 지루할 뻔한 강의를 재미있는 행사로 바꿨다. 코드는 엉망이었고 버그도 많았지만, 그 시간 안에 손으로 만들 수는 없었다.
이 글은 AI를 활용한 코딩이 생산적일 수는 있어도 직접 코드를 쓰는 즐거움과는 다르다는 개인적 주장이다. AI가 없었다면 만들지 않았을 도구를 빠르게 만들 수 있다는 점은 인정하면서도, AI가 결과를 앞당기는 과정에서 배움과 성취감이 줄어든다고 본다.
무엇이 코딩의 즐거움을 나누나?
작은 파이썬 스크래퍼 두 개를 직접 만들어 오랫동안 원했던 일을 해결했을 때, 몇 년 만에 가장 즐겁게 프로그래밍했다. 그 뒤 AI가 등장했고, AI 보조 코딩을 조심스럽게 시험했다. 이제 AI가 어리석다거나 생산성을 높이지 못한다고 쉽게 치부할 단계는 지났지만, AI 코딩은 덜 즐겁다는 생각이 든다.
아이디어를 떠올리는 기쁨, 아이디어를 실제로 만드는 기쁨, 애써 얻은 성취감, 일을 잘 마쳤다는 만족감, 배우는 즐거움, 내 문제를 해결하는 것을 만드는 만족감은 서로 다른 기쁨이다. AI 코딩은 대체로 아이디어를 떠올리고 실현하는 기쁨, 문제를 해결하는 만족감을 줄 수 있다. 하지만 노력해 얻는 성취감과 일을 잘 마친 만족감, 배움이 저절로 따라오지는 않는다.
아이디어가 있으면 적은 노력으로 작동하는 시제품을 빠르게 만들 수 있다. 코딩 경험이 없는 사람도 앱을 만들어 작동시킬 수 있다. 그 순간의 쾌감은 크지만, 즐거움이 프로젝트와 경력의 초반에 몰린다는 게 내 생각이다. 일을 다 하기 전에 보수를 받거나, 빚을 지거나, 오늘 남이 내 일을 해주는 대신 내일 내가 그 사람의 일을 하는 것처럼 즐거움을 앞당기는 방식은 좋아하지 않는다.
AI로 만들었기에 가능했던 것은?
그렇다고 AI 코딩의 쓸모를 부정하지는 않는다. AI가 없었다면 만들 수 없었거나 만들지 않았을 것을 만들기도 했다. 손으로 몇 주 동안 만들 가치는 없지만, 몇 분이나 며칠 만에 만들 수 있다면 해볼 만한 경우다.
해커뉴스에 이미 제출된 링크인지 확인하는 북마클릿을 한 번에 만들었다. 테일러 트로시(Taylor Troesh)의 ‘Discuss on HN’ 코드 조각을 바탕으로 했다. 이 도구는 내가 겪던 문제를 해결했고, 만족감도 줬다. 지금도 Wallabag의 즐겨찾기 페이지에서 자주 쓴다.
앞서 소개한 Party Market도 짧은 시간에 만들었다. 예측 시장을 주제로 한 짧은 강의에 곁들이는 파티 게임이었다. 강의 도중 실제로 ‘내가 얼마나 오래 떠들까’를 놓고 시장을 열었다. 지루할 수 있었던 강의는 매우 재미있는 행사가 됐다. 코드는 엉망이고 버그도 많았지만, 같은 시간 안에 손으로 만들 수는 없었다. AI를 쓰느냐 손으로 만드느냐의 선택이 아니라, AI를 쓰느냐 아예 만들지 않느냐의 선택이었다.
알고 지내는 소방서장이 어떤 ‘AI 기기’에 지나치게 많은 돈을 투자하려 했다. 그 기기는 엔비디아 그래픽 카드가 무엇인지, 제온 프로세서의 모델과 세대가 무엇인지조차 밝히지 않았다. 무료 요금제의 Lumo를 이용해 두 번의 오후 작업으로 Pyronear 기반 산불 조기 경보 시스템을 만들었다. 노트북에서 실시간 영상 피드를 처리했고, 제공한 발화 영상에서는 연기가 처음 나타나는 장면을 감지할 수 있었다.
SQLite를 모르는 사람도 책과 주석을 새 기기로 옮길 수 있도록 브라우저 기반 Kobo 데이터베이스 이전 도우미를 만들었다. 보컬 코치와의 노래 수업이 취소됐을 때는, 거의 10년 동안 만들고 싶다고 생각했던 실시간 음정 훈련 앱도 만들었다.
왜 손으로 코드를 짤 때와 다를까?
이런 결과물 대부분은 무척 만족스러웠지만, 만드는 과정은 작은 스크래퍼를 직접 짤 때처럼 즐겁지 않았다. 손으로 소프트웨어를 만드는 과정이 늘 즐거운 것도 아니다. 첫 Go 프로젝트는 마감에 쫓기며 상당한 시간 동안 정말 재미없었다. Rust 코드를 스무 줄쯤 처음 쓰려 했을 때 컴파일러와 씨름하는 일도 그랬다. 그래도 돌이켜보면, 결국 해냈다는 성취감을 준 ‘나중에 즐거운’ 경험이었다. 다음에는 더 쉬워질 거라는 감각도 있었다.
로컬 모델을 llama-server에서 돌리는 방식부터 가입 없이 쓸 수 있는 무료 서비스(Phind, Lumo)에서 답을 복사해 일회성 스크립트를 만드는 방식, 사용자 지정 자동 승인 훅을 붙인 원격 서버의 Clod Masterpiece 200™ 무제한 요금제로 알고리즘 매매 모델을 개발하는 방식까지 여러 가지를 시도했다. 자동 승인 훅은 --dangerously-skip-permissions에 위험할 정도로 가까웠다. 모두 생산적이기는 했지만, 이런 방식이 주는 기분과 결과물의 품질이 마음에 들지 않았다. 스스로를 멍청하고 쓸모없게 느끼게 하고, 때로는 쓰기만 해도 찜찜하게 만들면서도 결과물이 존중할 만하다는 느낌은 주지 않았다.
AI 코딩은 현실과 나 사이에 층을 하나 더 놓는 것 같기도 하다. 나는 대체로 현실을 직접 경험할 때 더 재미있다고 생각한다. AI 코딩은 통제가 잘 안 되는 대기업의 임원이 된 것과 비슷하다. 무슨 일이 벌어지는지 제대로 알 수 없고, 누군가 방해하거나 빈둥거리는 건 아닌지 의심하게 된다. 결과물은 완성된 형태로 나오지만 상상했던 것과 조금 다르다. 될 때도 있고 안 될 때도 있는데, 더 많은 돈을 쏟아붓고 더 크게 요구하는 것 말고는 할 수 있는 일이 없다.
‘도파민’이라는 말을 떠올리면 AI 코딩은 연속된 첫 데이트나 하룻밤 만남에 가깝다. 프로젝트와 관계를 쌓지 못하고, 애착에서 오는 따뜻한 기분도 얻지 못한다. 쾌감만 좇는 생활에서는 반복할수록 짜릿함이 무뎌진다.
어릴 때는 발명가가 되고 싶었다. 만들기와 발견을 함께하는 일이기 때문이다. 글쓰기와 작곡도 내가 주로 하는 활동인데, 소프트웨어처럼 물리적 현실이나 다른 사람과 마주치는 일이 비교적 적은 만들기다.
이 글은 촛불 아래 파란 잉크로 개요를 썼다. AI는 오타도 고치지 못하게 했다. 오타를 즐겨 주길 바란다.
각주 1: 만들기가 주는 기쁨은 오래전부터 어느 정도 알고 있었다. 하지만 최근 취미로 만든 작은 소프트웨어 프로젝트 두 개를 하면서 그 사실을 실감했다.
각주 2: 그전까지는 대부분 셸 스크립트를 썼다. Bash는 재미있는 언어로 알려져 있지 않다.
글은 AI 코딩이 만든 결과물의 품질이나 프로젝트별 제작 시간을 수치로 비교하지 않는다. 손으로 코드를 쓸 때와 AI를 활용할 때의 즐거움에 대한 개인적 경험과 판단을 제시한다.
댓글 (0)
로그인하면 이 기사에 내 생각을 남길 수 있어요