이 글은 Claude Opus 4.6 을 이용해 번역되었으며, 이후 퇴고를 거쳤습니다.

원문: Dave Thomas, Pragmatic Programmers Newsletter — “Castles in the Air: It’s Still Just as Rewarding”


마지막으로, 이토록 다루기 쉬운 매체에서 일하는 기쁨이 있습니다. 프로그래머는 시인과 마찬가지로, 순수한 사고의 재료에서 겨우 한 발짝 떨어진 곳에서 일합니다. 그는 공중에, 공기로 누각을 짓습니다. 상상력을 발휘하여 창조하는 것입니다. 이처럼 유연하고, 다듬고 고쳐 쓰기 쉬우며, 웅장한 개념적 구조물을 실현하는 데 이토록 적합한 창작 매체는 거의 없습니다.

— Fred Brooks, The Mythical Man Month, 1975

대학 시절 과제로 The Mythical Man Month 를 읽었습니다. 그때까지 저는 코드를 쓰고 싶다는 것은 알았지만, 왜 그런지는 제대로 설명할 수 없었습니다. 위 문단을 읽는 순간, 비로소 이유를 알게 되었습니다.

프로그래밍은 제가 자신을 표현할 수 있는 방법이었습니다. 저는 예술가가 아니었습니다. 제가 노래를 부르면 개들이 짖었습니다. 사람들과 특별히 잘 소통하는 편도 아니었습니다. 그런데 첫 번째 프로그램을 작성했을 때, 생각을 행동으로 바꿀 수 있는 매체를 발견했습니다. 좌절감이라는 벽 뒤에 갇혀 있던 온갖 아이디어들이 드디어 출구를 찾은 것입니다. 그리고 Brooks의 설명이 그 이유를 알려주었습니다.

지난 50년간 거의 매일 코드를 작성해 왔습니다. 그리고 스스로도 놀랍게, 여전히 그 일을 사랑합니다.

편집기도, 도구도, 언어도 아닙니다. 짜릿함은 추상적으로 무언가를 구상하고 그것이 서서히 현실이 되는 것을 지켜보는 데서 옵니다. 거기에 사람들이 그것을 사용하는 모습을 보는 기쁨도 있습니다. 무언가에 기여할 수 있다는 것은 그저 좋은 느낌입니다.

그래서 LLM이 무엇을 할 수 있는지 보기 시작했을 때, 마음이 가라앉았습니다. 프로그래밍에서 찾은 기쁨을 빼앗기는 걸까? AI가 재미있는 일을 다 해버리고, 나는 AI가 실수한 것을 디버깅하는 역할만 남게 되는 걸까?


여전히 프로그래밍입니다#

Claude를 사용하면 싫어하게 될 거라고 예상했습니다. 과정에서 인간미가 사라지고, 재미있는 요소는 모두 빠져나가며, 한때 창조적이었던 일이 기계적인 작업으로 변할 거라고 확신했습니다.

틀렸습니다. AI와 함께 코딩하는 것은 재미있습니다. 사실 한동안 느끼지 못했던 것보다 더 큰 재미를 느끼고 있습니다. 그래서 지난 한 달간 왜 그런지 메모를 해보았습니다. 순서에 상관없이 정리하면 다음과 같습니다.

AI는 지루한 반복 작업을 없애줍니다. 6년 전에 방치한 프로젝트가 더 이상 빌드되지 않나요? “이봐 Claude, 최신 도구와 업데이트된 라이브러리에 맞춰서 이걸 현대화하고, 테스트가 전부 통과하게 해줘.” 5분 후면 다시는 실행되지 않을 거라 생각했던 코드를 가지고 놀고 있습니다.

AI는 피드백 루프를 극적으로 단축합니다. 아이디어를 시도해보고 싶으면 AI와 함께 몇 분 만에 반복 실험할 수 있습니다. 결과가 좋지 않으면 미련 없이 버릴 수 있습니다.

AI는 제 범위를 넓혀줍니다. 제가 처음 시작했을 때는 소프트웨어의 거의 모든 분야에 대해 어느 정도는 알 수 있었습니다. 지금은 주제가 너무 깊고 변화가 너무 빨라서 하나의 분야에서 전문가가 되기도 어렵습니다. 하지만 AI와 함께라면, 진입하는 데 일주일이 걸렸을 영역도 탐색할 수 있습니다. 거기에 나에게 맞는 무언가가 있는지 파악한 다음, 다시 기초 단계로 돌아가 기본을 배울 수 있습니다.

AI는 궁극의 러버덕입니다. Claude가 모든 것을 설명하려는 열정은 좀 줄여놓았습니다. 대신 아이디어와 문제를 AI에게 던져봅니다. 종종 완전히 새로운 방향을 촉발하는 무언가를 돌려받습니다.


프로그래머는 지저분한 현실에 구조를 부여하는 계층입니다. 우리는 종종 코드로 그 일을 합니다. 때로는 사람들이 자신의 일에 대해 생각하는 방식을 바꿈으로써 그렇게 합니다. 그리고 때로는 현실을 조금이라도 덜 지저분하게 만드는 것으로 끝나기도 합니다.

그리고 그 일을 어떤 도구로 하든 상관없습니다. Rust든 Go든, React든 Vue든, AI든 수작업 코딩이든. 결국 전부 프로그래밍일 뿐입니다.

즐기세요…