기술적 지식 없이 '바이브 코딩'으로 소프트웨어를 만드는 것의 현실적인 한계
Extent of practicality to vibe code software without extensive technical understanding
핵심 요약
AI 코딩 도구로 복잡한 앱을 만들려다 한계에 부딪힌 사용자가 바이브 코딩의 실효성에 대해 고민하는 내용.
- 바이브 코딩 한계 — AI로 초기 프로토타입은 가능하지만 복잡한 기능 구현과 디버깅에는 전문 지식이 필수적임.
- 기술적 이해 부족 — AI가 생성한 코드의 오류를 파악하고 수정할 능력이 없으면 프로젝트가 결국 멈추게 됨.
- 버전 관리 부재 — 잦은 수정과 디버깅 과정에서 체계적인 버전 관리 없이 채팅 기반으로만 작업하면 관리가 어려워짐.
- 학습의 필요성 — AI를 튜터로 활용하더라도 소프트웨어 공학의 기본 원리와 프레임워크에 대한 최소한의 학습은 피할 수 없음.
이런 종류의 글이 매우 흔하다는 점과 제가 올리는 내용도 그 범주에 속한다는 점을 사과드립니다. 하지만 저는 정말 무엇을 해야 할지 막막한 상태라 조언을 구하고 싶습니다.
며칠 전, 저는 Cursor를 시작했습니다. 첫 프로젝트를 몇 시간 동안 진행한 후, 크레딧을 다 써버렸습니다. Cursor가 얼마나 말도 안 되게 뛰어난지 보고 완전히 충격을 받았기 때문에, 계속하기 위해 구독을 구매했습니다. 완벽했습니다.
Cursor는 얼굴 랜드마크 평가 시스템과 다양한 기능을 갖춘 화상 통화 앱을 완성해 냈습니다. 그 후 저는 더 많은 기능을 다듬고 추가하려고 시도했지만, 결과는 기대에 미치지 못했습니다. 아무것도 제대로 작동하지 않는 것 같아 매우 좌절했고, AI의 초기 '마법'은 사라진 것 같았습니다. 저는 ChatGPT나 Gemini 같은 다른 AI들에게 제가 Cursor에게 무엇을 말해야 하는지 기술적인 용어로 더 자세히 설명하고 프롬프트 엔지니어링을 도와달라고 요청하며 할 수 있는 모든 것을 했습니다. Cursor는 계속해서 작동하지 않는 '수정 사항'만 제공했습니다. 저는 내내 컨텍스트가 부담이 되지 않도록 기능이 수정되거나 문제가 생기면 가능한 한 빨리 새 에이전트를 시작하는 방식을 따랐습니다. 하지만 AI가 제가 원하는 대로 작동하게 만드는 데는 결코 성공하지 못했고, 어디서도 해결책을 찾을 수 없는 수정 불가능한 버그나 기이한 현상들만 남았습니다.
월간 Composer 크레딧의 약 15%를 문제 해결과 몇 시간 동안의 씨름에 쓴 후, 저는 그 프로젝트를 포기했습니다. 저는 journaling 웹사이트라는, 항상 만들고 싶었던 다른 프로젝트를 시작했습니다. 첫 생성물은 제 기대를 뛰어넘었고 정말 아름다워 보였습니다. Vite, React, TypeScript, Tailwind, Three.js를 사용했습니다.
하지만 이번에도 새로운 기능을 구현하려고 하자 모든 것이 무너졌습니다. 이전 프로젝트처럼 저는 몇 시간 동안 디버깅을 하며 다른 AI들과 Cursor를 오가며 문제를 찾아내고 고치려 했습니다. 아무것도 작동하지 않았고, 문제를 해결하느라 할당량을 훨씬 더 많이 소진한 끝에 저는 다시 멈추기로 결정했습니다.
제가 찾아본 바로는, 제가 생각하는 기능들은 바이브 코딩 없이는 최소 1~2년은 집중적으로 공부해야 해당 프레임워크와 언어에 능숙해질 수 있는 수준입니다.
이 시점에서 저는 만약 제가 그 모든 프레임워크와 언어를 이해하는 데 시간과 노력을 들이고 싶지 않다면, 바이브 코딩으로도 제가 원하는 곳에 도달할 수 없을 것이라고 생각합니다. 저는 바이브 코딩의 현재 한계를 이해하지만, 제가 만들려는 것을 작동하게 만들 방법이 있는지 확신이 서지 않습니다.
이것이 제가 생각하는 관점으로는 단순히 불가능해 보이기 때문에 그만둬야 할지 모르겠습니다. 이것들은 제가 꽤 빨리 완성하고 싶은 프로젝트들이라, 오직 이 이유만으로 광범위하게 학습하는 것에는 관심이 없습니다. 하지만 제가 이해한 바로는, 그렇지 않으면 이런 유형의 프로젝트를 만들 수 있을 것이라고 기대하는 것은 현실적이지 않습니다.


