라떼군 이야기
AI 코딩 도구를 지우고 나서야 개발의 즐거움을 되찾았다: '손코딩'의 가치 재발견
TL;DR 저자는 AI 코딩 도구(Claude-code)가 개발자를 수동적으로 만들고, 문제 해결을 위한 깊은 사고 과정을 방해한다고 지적합니다. 코드를 직접 작성하는 것이야말로 문맥을 파악하고 문제를 온전히 이해하는 필수적인 과정임을 깨닫고, AI를 ‘자동화’가 아닌 ‘보조 도구’로 제한적으로 사용할 때 비로소 일의 통제권과 행복을 되찾았다고 말합니다.
최근 ‘Vibe Coding’이라 불리는 AI 기반 자동 코딩이 대세로 떠오르며, 개발자의 생산성이 비약적으로 높아질 것이라는 기대가 큽니다. 하지만 모든 개발자가 이에 만족하는 것은 아닙니다. 이 글은 AI 도구에 의존하다가 오히려 개발의 즐거움과 깊이를 잃어버린 한 개발자의 경험을 통해, 기술이 우리의 사고 과정을 어떻게 변화시키는지, 그리고 진정한 생산성이란 무엇인지에 대한 중요한 화두를 던집니다.
핵심 내용
저자는 코딩이 단순한 구현이 아니라 문제 공간과 씨름하며 사고하는 과정이라고 강조합니다. AI에게 모든 것을 맡기면 문맥을 내재화할 기회를 잃게 되어, 생성된 코드의 정합성을 검증하기가 직접 짜는 것보다 훨씬 더 어려워집니다. 또한, AI 코딩의 편리함은 도파민을 자극하지만 뇌를 수동적으로 만들고 깊은 사고를 방해하여 결국 무력감을 줍니다. 저자는 해결책으로 AI에게 전체를 맡기는 대신, 필요한 부분만 복사해 붙여넣는 ‘의도적 불편함’을 선택함으로써 코드에 대한 통제권과 몰입감(Flow)을 유지하는 방식을 제안합니다.
기술적 인사이트
소프트웨어 엔지니어링에서 ‘작성’보다 중요한 것은 ‘이해’와 ‘유지보수’입니다. AI가 1,000줄의 코드를 30분 만에 짤 수 있어도, 엔지니어가 그 로직을 뇌에 로딩(internalize)하지 못하면 결국 리뷰와 디버깅이 거대한 병목이 됩니다. 이 글은 ‘Thinking without writing is only thinking you’re thinking(쓰지 않고 생각하는 것은 생각한다고 착각하는 것)‘이라는 통찰을 통해, 코딩 행위 자체가 멘탈 모델을 구축하는 인지적 비계(scaffolding) 역할을 함을 상기시킵니다. 즉, 생산성 지표(속도)와 인지적 깊이(품질/이해) 사이의 트레이드오프를 진지하게 재고해야 합니다.
시사점
개발자들은 AI 도구를 사용할 때 ‘운전대’를 누구에게 맡길지 결정해야 합니다. 단순히 ‘알아서 해줘’ 식의 사용은 단기적 속도는 높일지 몰라도, 장기적으로는 코드 장악력을 떨어뜨리고 직무 만족도(행복)를 저하시킬 수 있습니다. 실무에서는 AI를 코드 생성의 주체가 아닌, 구체적인 지시를 수행하는 똑똑한 인턴처럼 활용하여 개발자가 문맥의 주도권을 잃지 않도록 워크플로우를 설계해야 합니다.
‘인생은 행복을 최적화하지 않기에는 너무 짧다’는 저자의 말처럼, 도구가 우리를 소외시키고 있지는 않은지 돌아볼 때입니다. AI가 주는 편리함 뒤에 숨겨진 ‘생각의 외주화’를 경계하고, 기술을 주체적으로 활용하며 몰입의 즐거움을 지키는 나만의 방식을 고민해 보시기 바랍니다.