저는 새로운 기술 조류를 마케팅 용어로 포장하는 것에 대해 나쁘게 생각하지 않습니다. 특정 시대를 살아가는 세대 끼리 통하는 맥락을 공유하면서, 대화를 이어 갈 수 있기 때문인데요. 불과 한 달 만에 만들어진 따끈따끈한 용어인 ‘바이브 코딩(Vibe Coding)‘ 역시 최근 논란의 중심에 섰습니다.
뉴스 기사에 회자되는 내용만 보자면, 대규모 언어 모델(LLM)을 통한 생성형 AI의 도움을 받아 자유로운 느낌에 따라 코딩을 하는 활동을 지칭하는 것이라고 합니다만… 실제로 Andrej Karpathy가 처음 그 용어를 사용한 맥락은 다음과 같습니다.
제가 “바이브 코딩”이라고 부르는 새로운 종류의 코딩 방식이 있는데, 느낌에 따라서 만든 엄청나게 많은 코드를 받아들이고, 실제로 코드가 존재한다는 사실조차 잊어버리는 것입니다. LLM(예: Cursor Composer w Sonnet)이 너무 좋아지고 있기 때문에 가능합니다. 또한 SuperWhisper로 Composer와 대화하기 때문에 키보드를 거의 건드리지 않습니다.
Andrej Karpathy가 말한 원문에서 말하는 바이브 코딩은 새로운 아이디어를 구현하거나 실험하기 위해 LLM을 이용해서 좀 더 빠르게 프로토타이핑을 하기 위한 방안의 하나로 LLM을 사용하는 것입니다. AI가 생성한 코드를 직접 읽어보거나, 코드 리뷰를 하지도 않고, 그냥 다 수락하면서, 원래 원했던 기능 구현에만 중점을 둡니다. 오류가 생겨도 그냥 LLM에게 수정하라고 명령만 내리고, 어떤 코드가 어떻게 수정됐는지에 상관없이 다음 기능 개발로 나아가는 것이죠. 원래 맥락으로 보자면, 한마디로 바이브코딩은 AI가 해주는 대로 하는 사실상 무대뽀 개발 방식입니다.