2025년 2월 2일, 컴퓨터 과학자이자 오픈AI 공동 창립자 안드레이 카르파티가 트위터에 올린 가벼운 농담 하나가 인터넷 전체의 집단 의식에 새로운 표현을 각인시켰다. 카르파티는 AI의 도움을 받아 프로그래밍하면서 “이제는 완전히 바이브에 몸을 맡겼다”라고 트윗했다.
There's a new kind of coding I call "vibe coding", where you fully give in to the vibes, embrace exponentials, and forget that the code even exists. It's possible because the LLMs (e.g. Cursor Composer w Sonnet) are getting too good. Also I just talk to Composer with SuperWhisper…
— Andrej Karpathy (@karpathy) February 2, 2025
물론 해당 트윗은 격한 논쟁을 촉발했다. 현재 X(구 트위터)에서는 흔히 있는 일이다. 그러나 필자는 깊은 공감을 느꼈다. AI와 함께 코딩하는 필자의 방식을 정확히 표현했기 때문이다.
필자는 항상 컴퓨터에 관심이 있었기에 자연스럽게 프로그래밍에도 흥미를 느꼈다. 10대 시절에는 HTML로 웹사이트를 만들었고 이후로도 파이썬을 가끔씩 만지작거려 왔다.
그러나 어느 프로젝트도 오래 가지는 못했다. 초기 HTML 웹사이트를 제외하면, 쓸모 있는 결과물은 하나도 없었다. 대부분은 비슷한 과정을 반복했다. 오라일리 책이나 온라인 강의 같은 특정 자료에 매달려 열정적으로 시작하지만, 유용한 무언가를 만들기까지 수개월, 수년이 걸릴 거라는 현실을 인지한 순간 포기했다.
클로드 AI를 활용해 간단한 주사위 굴림 웹앱을 빠르게 만들 수 있었다.Matt Smith |
상황이 바뀐 것은 2024년 말이었다. 당시 개인 웹사이트를 운영하던 워드프레스에 대한 불만이 극에 달했다. 순간의 충동으로 웹사이트 내용과 스크린샷을 클로드 3.5 소넷에 던져 넣고, HTML, CSS, 자바스크립트로 복제해달라고 요청했다. 놀랍게도, 클로드 3.5는 작동 가능한 웹사이트를 생성했다. 완벽하지는 않았지만, 몇 시간 동안 클로드와 작업한 결과가 기존의 워드프레스 사이트보다 더 마음에 들었다.
내 접근 방식은 정확히 카르파티가 말한 그 방식이었다. 나는 코드를 읽지도 않았고, 이해하려고도 하지 않았다. (물론 기사 캐러셀 작동 방식은 좀 고민하긴 했다.) 대신, 클로드에게 지시하고, 결과를 복사해 VSCode에 붙여넣고, 파일을 저장한 후 브라우저를 새로고침하는 방식이었다. 그리고 그게 통했다.
Pico-8용 퍼즐 게임 개발 중간 화면과 바이브 코딩으로 작성한 소스코드Matt Smith |
하지만 가장 중요한 점은 재미있었다는 것이다. 그 덕분에 여러 코딩 프로젝트에 도전하게 됐다. 테이블탑 롤플레잉 게임에서 이니셔티브를 추적하고 주사위를 굴리는 온라인 도구, 배틀테크 주사위 도구, 그리고 현재는 Pico-8 가상 콘솔용 퍼즐 게임을 개발 중이다. 또, 세팅이 까다로운 오픈AI의 음성 인식 모델 위스퍼(Whisper)를 설정하는 데에도 AI 도움을 받았다.
흥미로운 점은 세 프로젝트가 각각 HTML/자바스크립트, 파이썬, 루아 등 서로 다른 언어로 구성돼 있다는 것이다. 필자가 이 언어에 능숙한 것도 아니다. 퍼즐 게임은 처음엔 C#으로 유니티(Unity)에서 만들다가, 너무 복잡하다고 판단해 Pico-8으로 전환했다. 테이블탑 도구를 윈도우 앱으로 만드는 것도 고려했지만, 실익이 없어 중단했다.
바이브 코딩의 위험과 함정
그래서 지금 필자는 진심으로 ‘바이빙’ 중이다. 하지만 모든 것이 좋은 바이브일까? 아니면 블로그, 포럼, 이미지, 영상, 음악 분야에서 벌어지는 생성형 AI 콘텐츠 범람을 소프트웨어 세계에서도 재현된다는 징조일까? 비평가의 가장 큰 우려는 바로 이것이다.
카르파티가 말한 ‘바이브 코딩’은 빠르고, 재미있고, 접근성이 뛰어나다. 그러나 세밀하거나 신중한 작업은 아니다. AI가 작성한 코드는 동작은 하지만, 즉시 드러나지 않는 결함이 포함될 수 있다. 그렇다면, 프로그래밍 지식이 거의 없는 사용자가 이런 오류나 보안 문제를 어떻게 발견할 수 있을까?
간단히 말하자면… 발견하는 것은 불가능하다.
예를 들어보자. 레오넬 아세베도(온라인에서 ‘레오’로 알려짐)는 바이브 코딩으로 SaaS 스타트업을 만들었다가 API 키 보안 누락 같은 심각한 문제를 겪었다. 아세베도의 사례는 수백 개의 영상과 SNS 콘텐츠에서 조롱의 대상이 됐다.
guys, i'm under attack
ever since I started to share how I built my SaaS using Cursor
random thing are happening, maxed out usage on api keys, people bypassing the subscription, creating random shit on db
as you know, I'm not technical so this is taking me longer that usual to…
— leo (@leojr94_) March 17, 2025
아세베도는 소셜미디어에서 자신의 사업을 참여 유도형 게시물로 홍보했다. 그래서 딱히 동정을 느끼지는 않는다. 때로는 영웅, 때로는 악당이 되는 게 SNS 세계다. (예상대로 아세베도는 이미 “30일 안에 SaaS 재건”이라는 콘텐츠를 올리고 있다.)
그러나 그 실패가 무엇을 입증하려는 것인지 의문이 든다. 바이브 코딩으로 SaaS를 만들어 바로 실서비스에 투입하는 것은 무모하다. 하지만 모든 사람이 바이브 코딩으로 SaaS 신생업체를 만들어 광고에서처럼 바로 공개하지는 않는다.
현실은 훨씬 더 실용적이다. 필자 같은 사람은 바이브 코딩을 통해 이전에는 시도조차 어려웠던 소규모 프로젝트를 즐겁게 구현할 수 있게 됐다. 어떤 소프트웨어 엔지니어는 이를 통해 프로토타입을 만들거나 개념을 증명하고, 심지어 배우기도 한다.
코드 세계의 블로그 혁명
이상하게 들리겠지만, 필자는 바이브 코딩이 수십 년 전 내가 테크 저널리스트가 된 경위와 닮아 있다고 느낀다.
필자는 미국 중서부의 작은 마을에서 자랐다. 고등학교에는 교내 신문조차 없었다. 대학교에 진학해 언론이나 커뮤니케이션 전공이 아니라 영문학을 전공했다. 대학 신문 활동도 하지 않았다. 졸업할 때에도 언론사 관련 인맥이나 경험이 전무했다.
하지만 운이 좋았다. 블로그와 소셜미디어가 폭발하던 시점에 졸업했기 때문이다. 그때부터는 정식 자격이나 학위 없이도 글을 쓸 수 있었고, 결국 매체에서 원고료를 지급받기 시작했다. 지금은 기술 기사를 쓰는 일을 17년째 하고 있다.
그런 필자에게 바이브 코딩은, 미래의 소프트웨어 엔지니어와 프로그래밍 세계에 유사한 기회를 줄 수 있는 새로운 혁명처럼 보인다.
형식적인 교육은 잊어도 좋다. 프로그래밍에 관심만 있다면 AI의 도움을 받으면 되고, 비공식 교육조차 필요하지 않다. 노트북만 있다면 챗GPT에 필요한 도구와 설치 방법, 실행 방식, 코드 생성까지 전부 물어볼 수 있고, 프로젝트 초기 버전을 스스로 완성할 수 있다.
물론 실수는 어쩔 수 없이 벌어질 것이다. 생성된 코드 대다수가 비효율적이거나 깔끔하지 않을 것이다. 버그를 해결하지 못해 프로젝트를 포기하는 경우도 많을 것이다. 필자의 프로젝트에 쓰인 AI 생성 코드도 아마 숙련된 엔지니어의 눈에는 고문 수준일지 모른다.
그러나, 오라일리 책 한 권을 6개월 동안 붙들고 있을 인내심이 없는 사람에게 코딩을 개방해준다는 점에서는 분명한 진전이자 가능성이다.
dl-itworldkorea@foundryco.com
Matthew S. Smith editor@itworld.co.kr
저작권자 Foundry & ITWorld, 무단 전재 및 재배포 금지
