「돌아가기만 하면 됐지」에서 「겁 없이 고쳐 움직인다」로: 초보의 한 달 코딩 일기
먼저 한마디 밝혀 둡니다. 저는 소프트웨어 엔지니어가 아니고, 여기서 이야기하는 프로그램 내용은 사실 전부 이른바 Vibe Coding, 감각이 이끄는 대로 진행하는 그런 방식입니다.

최근 일을 조금이라도 매끄럽게 하려고, 저는 계속 제 나름의 작은 도구를 키워 왔습니다. 요 이틀 사이 세 가지를 했습니다. Git으로 백업을 시작한 것, 프로그램 로직의 버그를 몇 개 고친 것, 그리고 새로운 AI 모델을 연결한 것입니다.
가장 어려운 것은 문법이 아니라 “원하는 것을 코드로 만드는 일”
한 달을 해 보니, 가장 큰 소감은 이렇습니다. 프로그램을 짜는 데 가장 어려운 곳은 사실 문법이 아니라, “내가 대체 무엇을 원하는가”를 “구체적인 코드”로 바꾸는 일이라는 것입니다.
예를 들어 “버그를 고친다”는 말은 입으로 하기는 쉽지만, 막상 손을 움직이기 전에 자신에게 잔뜩 물어봐야 합니다.
- 먼저 저장해 둬야 할까?
- 새 브랜치를 따야 할까?
- 언제 테스트하지? 그리고 어떻게 테스트하지?
- 다 고친 뒤에 어떻게 되어야 “다 됐다”고 할 수 있지?
- 겸사겸사 버전 번호도 붙여 둬야 할까?
이것들은 사실 어느 것도 프로그램의 문제가 아니라 “일하는 습관”의 문제입니다. 이 일련의 흐름은 업계에서는 아주 흔한 것일지 모르지만, 프로그램 초보자에게는 그야말로 악몽 그 자체입니다.
배운 몇 가지 작은 것들
이 한 달 동안 저는 몇 가지 작은 것을 배웠습니다. 저와 같은 초보자 여러분께 나눕니다.
- 먼저 방어막을 쳐 두고, 그다음에 마음껏 뜯어고친다. Git으로 버전 관리를 해 두면, 엉망으로 망가뜨려도 30초면 과거로 돌아갈 수 있습니다. 게임의 세이브 데이터처럼 든든합니다.
- 한 번에 한 가지만 한다. 부디 “겸사겸사 한 줄만 더 고쳐 두자”는 하지 마세요. 그건 미래의 자신이 벽에 머리를 찧고 싶어지는 일입니다.
- 느린 것이 정상이다. 작은 기능 하나를 완성하는 데 오후 한나절 통째로? 네, 그게 일상입니다. 그런 속성 튜토리얼은 대개 당신을 속이고 있습니다.
- 미래의 자신에게 메모를 남겨 둔다. 그러지 않으면 다음에 돌아왔을 때, 이건 누군가 다른 사람이 쓴 프로그램이라고 생각하게 됩니다. (뭐, 솔직히 말하면 이 프로그램은 정말로 AI가 쓴 것이지만요.)
“돌아가기만 하면 됐지”에서 “겁 없이 고쳐서 움직인다”로, 그 사이를 가로막고 있는 것은 아마도 바로 이런, 언뜻 대수롭지 않아 보이지만 하나씩 채워 넣어야 하는 일하는 습관들일 것입니다.