
바이브 코딩을 시작한지 72일이 되었습니다. 내일까지 바이브 코딩을 하고 이제 바이브 코딩 생활을 마치고 인간 코딩 생활로 돌아가기 전에 되돌아 보는 글을 남겨봅니다.
지금까지 바이브 코딩으로 작성해서 누군가 쓰고 있는 프로젝트는 모두 4개입니다. loc로 그냥 세어 봤을 때 코드 줄 수는 84152 + 35087 + 1892 + 4320 = 125451 입니다. 앞에 있는 가장 많은 줄을 작성한 프로젝트는 메신저인 '친구친구'입니다. Flutter와 macOS를 위한 Swift, Windows를 위한 C# 코드들이 있어서 크기가 큽니다. 기능도 많고 가장 많은 시간 신경을 쓴 프로젝트입니다. 다음은 vibetable이라는 이름을 붙인 MCP 지원 할 일 관리 웹 애플리케이션입니다. CRDT로 동시 편집도 지원하기 때문에 간단한 프로젝트는 아니었습니다. 이 프로젝트는 모두 월 200 달러의 Claude Code Max 플랜을 사용했습니다. 풀타임으로 사용했지만 토큰이 제한되어서 더 이상 못쓰거나 하는 일은 없었습니다. 물론 저도 모르게 모델이 바뀌었을지도 모르겠네요.
몇 번의 어려움이 있었습니다. 어떤 문제들은 AI가 해결하기 어려워했고 하루나 이틀 정도 걸려서 간신히 해결한 문제가 몇 개 있었습니다. 어려운 문제들은 결국 내가 잘 모르는 부분에서 걸렸습니다. 간혹 어려운 문제를 만나면 대략 어떤 점에서 문제가 될지 예측이 되어 AI와 함께 해결할 수 있었네요. 그 때도 코드를 보거나 하지는 않았습니다. 하지만 아직도 해결하지 못한 문제들이 몇 개 있는데 그런 문제는 제가 모르는 기술이라 어떻게 AI와 해결해야 할지 모르겠네요.
바이브 코딩의 문제점은 잘 알려진 것처럼 개발자가 코드 전체를 이해하고 있지 못하다는 점입니다. 따라서 어떤 보안 취약점이나 치명적인 성능 문제가 발생할지 예측할 수 없고 실제 발생을 해야 알 수 있을 것 같습니다. 물론 그것마저 AI에게 점검하라고 할 수 있지만 한계가 있는 것 같습니다. 개발자가 코드 전체를 이해하지 못하게 되면서 레거시 코드처럼 되어 갑니다. 빠르게 기능 개발을 하지만 그 만큼 빠르게 기술 부채가 쌓여 가는 구조라고 볼 수 있네요. 결국 어느 지점에서 AI마저 유지보수 하지 못하는 지점에 도착하게 되는 것 같습니다.
프로토타입을 만들 때 좋을 것 같습니다. 결국 제품의 느낌을 확인해보기 위해 빠르게 프로토타입을 만들어보는 것은 좋을 것 같습니다. 하지만 바이브 코딩으로 제품을 만들어 사용자에게 제공하는 것은 좋은 생각이 아닌 것 같습니다. 아니면 유지보수를 오래하지 않아도 되는 이벤트 형태의 제품을 만드는 것도 좋을 것 같습니다. 하지만 오랜 기간 유지해야 하는 제품에는 어울리지 않는 것 같습니다.
메신저인 '친구친구'는 한 달 정도 써봤는데, 앞으로도 소수의 사람들과 잘 쓸 것 같다는 생각이 들어 인간 코딩으로 안정적이고 튼튼하게 리팩터링을 할 계획입니다. vibetable은 AI 개발자를 마치 인간과 같은 느낌으로 함께 협업을 하는 컨셉이었지만 아직 무리인 것 같아서 AI 개발자 컨셉을 빼고 다시 정비를 해보려고 합니다.
안녕하세요. 저는 python으로 바이브 코딩을 4개월째 하고 있는데, 문맥을 유지하는데 어려움이 많습니다. 5보 전진 4보 후퇴를 거듭하고 있다고 할까요..
얼마 전부터 prompt를 저장해 놓고 관리해야겠다고 생각하고 VSCode에서 txt 파일로 작성한 후에 복붙하는 방식으로 사용하는데, 디버깅하다 보면 초기 프롬프트가 무용지물이 되어버립니다.
어떤 방식으로 바이브코딩을 진행하면 좋을지 조런을 부탁드립니다.
적당히 잘 쓴다, 라는 옵션도 있을 것 같은데 완전히 내려놓으시는 이유가 궁금합니다