속 시원하게 말하자면, '바이브 코딩'이라는 용어가 너무 싫다
Off my chest, I hate the term 'vibe coding'
핵심 요약
AI를 활용한 개발은 진지한 작업인데, '바이브 코딩'이라는 용어가 이를 가볍고 장난스럽게 보이게 만든다는 불만.
- 용어의 부적절함 — '바이브 코딩'이라는 명칭이 개발 과정을 지나치게 가볍고 장난스럽게 묘사함.
- AI 개발의 실효성 — AI를 활용한 개발이 실제로는 생산성을 높이고 복잡한 로직을 해결하는 진지한 과정임.
- 용어의 오해 — 많은 사람이 '바이브 코딩'을 AI를 활용한 모든 개발로 오해하거나 비하하는 용도로 사용함.
- 대안의 필요성 — '바이브 코딩' 대신 의미론적 코딩이나 에이전트 기반 개발 등 더 적절한 용어가 필요함.
'바이브 코딩'이라는 용어는 사람들이 이 작업을 진지하게 받아들이지 않게 만든다고 생각한다.
나만 그렇게 느끼는 건지도 모르겠다. 처음 이 용어를 봤을 때는 농담인 줄 알았다.
엔지니어는 아니지만, IT 업계에서 일하며 수년간 프로그래밍을 해왔고 취미로 게임 개발도 하고 있다.
2년 전쯤 프로젝트를 위한 보일러플레이트 코드를 찾다가, 깔끔하고 논리적인 코드를 짜느라 몇 시간씩 낭비하는 대신 원하는 스크립트나 기능을 설명하면 된다는 걸 알게 됐다. 기본 GPT 채팅과 Gemini만으로도 당시엔 얼마나 많은 걸 할 수 있는지조차 몰랐다.
소프트웨어를 얼마나 빠르게 만들 수 있는지 깨닫고 나서는, 매번 복사 붙여넣기 하는 것보다 VS Code 안에서 쓸 수 있는 AI 서비스를 찾기 시작했다.
그러다 'AI로 바이브 코딩하기'라는 문구를 봤는데, 처음엔 Cat GPT 같은 풍자 사이트인 줄 알고 웃었다. 장난스러운 결과물만 나올 줄 알았는데, 클릭해보니 실제로 소프트웨어를 만드는 방법이었다.
'바이브 코딩'을 검색해보니 거의 표준 용어처럼 쓰이고 있었다. 이 서브레딧이나 관련 서비스를 진지하게 다루는 곳들을 찾게 됐다.
솔직히 지금도 이 용어를 진지하게 받아들이진 않지만, 바이브 코딩 커뮤니티를 눈팅하며 관련 서비스를 정기적으로 사용한다. 내 작업 과정이 이 용어 때문에 저평가되는 느낌이다.
나는 바이브 코딩을 시작하기 전보다 훨씬 많은 일을 하고 있다. 새로운 기능을 추가할 때 모든 해결책을 일일이 시도할 필요 없이, 고성능 추론 모델에게 현재 로직을 검토하게 하고 해결책을 제안받을 수 있다. 버그 수정은 이제 나와 AI가 참고할 수 있도록 맥락을 문서화하는 과정이 포함된다. 바이브 코딩 덕분에 SQL이 무엇인지, 어떻게 사용하는지 알게 됐고, 제대로 문서화하는 법도 배웠다. 혼자서 할 수 있는 범위 내의 일이라면 이제 무엇이든 접근할 수 있다. 예전에는 기능을 추가하기 위해 다른 계층을 덧붙이는 걸 피하려고 기능을 쳐냈을 것이다. 이제는 게임에 기능을 추가하는 게 얼마나 어려운지 정확히 파악할 수 있고, 며칠이나 몇 주를 낭비하다가 잘못된 방향임을 깨닫는 대신, 선택하고 실행에 옮길 수 있다.
자동화를 통해 단순 반복 업무를 줄였다고 해서 기술을 잃은 게 아니다. 오히려 더 빠른 속도로 발전하고 있다.
그래서 내가 하는 일을 '바이브 코딩'이라고 부르는 게 이상하게 느껴진다. 모든 코드를 직접 작성하지는 않지만, 그렇다고 모든 로직이 의도적이지 않은 것은 아니다. 코드를 검토하지 않는 사람들에게나 해당되는 말이다. 나는 과정에 손가락을 더 많이 움직이는 것에 신성한 의미가 있다고 생각하지 않는다.
"바이브 코딩으로 성공한 프로젝트가 있나?"라는 질문을 자주 본다. 당연히 있다. 오늘날 프로그래밍하는 사람이라면 누구나 AI를 사용하므로, 성공한 대부분의 새로운 소프트웨어가 '바이브 코딩'의 산물이라고 해도 과언이 아니다. 하지만 모두가 인정하려 하지는 않는다. 사람들은 자동화로 성과를 내면 자신의 능력을 강조하고 싶어 하고, AI가 문제를 해결해 준 세부 사항은 자존심 때문에 숨기기 마련이다.
또한 우리는 새로운 아마추어 개발자들이 요령을 배우는 모습을 보고 있다. 새로운 'Hello World'는 완전히 작동하는 웹 앱이다. 바뀐 건 없고, 단지 더 눈에 띌 뿐이다.
왜 하필 바이브 코딩인가? 의미론적 코딩, 언어를 통한 개발, 에이전트 기반 개발, 자연어 로직, 에이전트 보조 코딩 등 더 좋은 용어가 많은데 말이다. 바이브 코딩은 거의 모욕적으로 느껴진다. 사람들이 쉽게 접근할 수 있도록 하려는 의도겠지만, 그 논리조차 사실이 아니다. 어떤 사람들에겐 그럴지 몰라도, 게으른 개발자는 예전부터 항상 존재했다.

