C. 바이브코딩은 자판기 음료 뽑기가 아니라 탁구게임

"이거 해줘" 했더니 한 번에 뚝딱? 삐빅- 그건 환상입니다.

by TrueBlue
"AI한테 이렇게 말했는데 안 되는데요?"


바이브 코딩 클래스 실습 과정에서 가장 많이 듣는 질문 중 하나다. 많은 사람들은 프롬프트를 입력하고, 머릿속에 그려둔 결과가 곧바로 화면에 나타나길 기대한다


하지만 막상 결과를 보면 "왜 이게 안 되지?" 싶은 순간이 자주 온다. 내가 직접 겪고, 옆에서 수강생분들을 지켜본 결과 이런 답답함은 특히 디자인 영역 작업에서 많이 나타난다.


"한 번 더 말해보세요"

그럴 때 나는 이렇게 말한다.


“프롬프트를 조금 더 디테일하게 써볼까요?”
“음, 방금 프롬프트보다 위치를 좀 더 구체적으로 말해볼까요?”
“이게 왜 안 되는지, 왜 다른지 물어보세요.”

AI에게 내가 원하는 걸 한 번에 전달하려 하기보다, 계속해서 말을 걸어보는 작업에 가깝다.


프롬프트를 넣는다 → 결과를 본다 → 피드백을 다시 프롬프트를 넣는다 → 또 결과를 본다 → 또 피드백을 준다.


핑퐁.
핑퐁.
핑퐁.


AI와 내가 원하는 것이 무엇인지 chat을 주고받다 보면, 어느새 원하는 기능이 작동하고 디자인도 나의 의도에 가까워진다.


왜 처음엔 안 되다가 몇 번 만에 되는지는 나도 잘 모른다. 왜 수강생분이 혼자 할 땐 안 되다가 내가 옆에 가자마자 되는지도 정확히 설명하긴 어렵다.

(내가 가도 몇 번을 더 해야 할 때도 있다 ㅎㅎ)


하지만 확실한 건 하나다.

특히 바이브 코딩으로 프런트엔드 디자인 작업에 들어간 순간부터 한 번에 뚝딱 완성되지 않는 경우가 많다.




AI와의 페어 프로그래밍


어느 날 클로드에게 물었다.

"내가 어떻게 너를 쓰고 있는 거 같아?"

"페어 프로그래밍을 하고 있는 것 같아요."


페어 프로그래밍(Pair Programming)

두 명의 개발자가 한 화면을 보며 함께 코드를 짜는 방식이다. 한 명은 실제로 코드를 타이핑하고, 다른 한 명은 방향을 제시하고 문제를 짚어낸다.


가만 생각해 보니 바이브 코딩이 바로 그렇다.

AI는 코드를 짜지만, 사람은 의도와 피드백을 끊임없이 전달한다. 이건 원하는 음료를 한 번에 뽑는 자판기가 아니라 핑퐁핑퐁 공을 주고받는 탁구 게임에 가깝다.


내가 의도한 결과가 나올 때까지 포기하지 않고

공을 주고받는 과정

그게 내가 경험한 바이브 코딩이다.






바이브 코딩에 대한 가장 큰 환상


얼마 전, 우리 회사를 통해 전사 AI세션을 진행한 한 대표님이 페이스북에 이런 글을 올렸다.

"바이브 코딩을 시도했다가 몇 번 만에 안 되어서 '아직 실제 적용은 무리인가' 고민했다. 그런데 Replit을 붙잡고 반복적으로 '원하는 걸 해줘' 하면서 12시간을 버텼다. AI가 꼼수 쓰는 걸 막고, 포기하려는 걸 설득하고, 어르고 달래고... 새벽 3시까지. 그리고 드디어 원하는 결과물을 얻었다."


이 글에 우리 대표님이 댓글을 달았다.

"맞아, 은근 시간이 많이 걸려. 그래서 엔지니어링을 좀 이해할 필요는 있어."


바이브 코딩을 둘러싼 사람들이 가장 큰 환상이 여기 있다. AI에게 "이거 만들어줘" 하면 금세 뚝딱 만들어져 있을 거라는 기대. 하지만 현실은 12시간의 탁구 게임이다.


그래서 바이브 코딩은 느린가?


그렇지 않다.

바이브 코딩을 통해 예전엔 몇 주 걸리던 작업을 며칠 만에 끝내기도 하고, 하루에 열 개가 넘는 기능을 수정·개선하는 것도 가능해졌다. 다만 전제는 분명하다. 재미 삼아 만든 엉성한 결과물이 아니라 실제 사람들이 쓸 웹과 앱을 만든다는 기준에서는 분명 시간이 필요하다.


정리하면 이렇다.


바이브 코딩으로 원하는 걸 만들 수 있다 → YES

한 번의 프롬프트로 완성할 수 있다 → NO

원하는 퀄리티까지 가려면 시간이 필요하다 → YES





자판기라는 환상만 깨면


나 역시 지금도 프런트엔드 디자인을 고치고, 기능을 고도화하면서 수없이 핑퐁을 친다.

화면을 캡처해서 "여기가 이렇게 안 돼"라고 보내고, 수정된 화면을 보고 "아니, 이게 아니라 이렇게…" 다시 보내고, 또 확인한다.


가끔은 같은 문제로 루프에 빠지기도 한다.

그럴 땐 다른 LLM을 열어 이렇게 묻는다.

"클로드가 계속 이해를 못 하는데 내가 원하는 건 이거야. 뭐라고 프롬프트를 써야 할까?"

그러면 AI가 AI를 설득하기 위한 프롬프트를 대신 써준다. 그걸 복사해 붙여 넣으면 막혀 있던 작업이 풀리기도 한다.


AI가 써준 프롬프트를 보면 비슷한듯해도 내가 놓쳤던 디자인 용어가 추가되어 있기도 하고, 개발 용어가 추가되어 있기도 하다. 단순히 어떤 문장이 나와 다른지 보는 것만으로도 나에게는 공부가 된다.



핑퐁을 즐길 수 있다면


가끔 수강생분들이 말한다.

"아깐 안 되더니, 왜 갑자기 되죠?"

솔직히 말하면, 나도 정확한 이유를 모를 때가 많다.


나 역시 그렇게 바이브 코딩을 해왔고, 지금도 모든 걸 한 번에 자판기처럼 뽑아내지는 못한다. (이간 개발자가 해도 마찬가지다.)

그렇지만 확실한 건, 내가 반복적으로 주고받으면서 프롬프팅 스킬이 늘었다는 것이다.

그리고 포기하지 않고 계속 공을 주고받다 보면 어느 순간, 내가 원했던 결과가 화면에 떠 있다.


왜 그렇지 않은가 현실에서도

가끔 자판기에서 포카리스웨트를 눌렀는데 2% 부족할 때가 나오거나 솔의눈이 튀어나오는 일.


바이브 코딩은 자판기보다 자주 그럴 때가 있는데, 그래도 빠르게 개선되어 갈 것이라고 생각한다. 2022년 말 우리가 마주했던 아무 응답에나 세종대왕을 붙여 거짓말쟁이로 조롱받던 chatGPT와 지금의 chatGPT를 생각해 보면 말이다.


한 번에 원하는 결과를 주지 않는다고 실망하기엔,

엔지니어링을 한 번도 배우지 않은 많은 사람들이 몇 번의 수업만으로 자신에게 필요한 기능을 만들어내고 있다. 그리고 즐거워한다.


만약 비개발자 출신라면 한두 번에 안 된다고 답답해하기엔, 전에는 아예 불가능했던 일을 해내고 있다는 사실을 생각해 보자! 전문적인 4년의 컴공 학사과정, 6개월 이상의 부트캠프 없이 해내고 있다는 것 자체가 사실은 어마어마한 일이다.


자판기라는 환상만 내려놓으면,

바이브 코딩은 훨씬 더 재미있어진다.


핑퐁 핑퐁 탁구공을 주고받으며

나에게 필요한 것, 우리 팀에 필요한 것,

사람들에게 필요한 것을 만들어가는 과정.

그게 내가 경험한 바이브 코딩이다.


핑퐁

Gemini_Generated_Image_t6ycskt6ycskt6yc.png


keyword
작가의 이전글그러니까 전엔 개발자들이 이걸 하나하나 다 바꿨다고요?