Post

FOMO 극복을 위한 첫 바이브 코딩

바이브 코딩에 뒤처질지 모른다는 불안에서 시작해 개인용 URL 단축기를 만든 이야기

FOMO 극복을 위한 첫 바이브 코딩

작동하는 프로토타입은 3분 만에 나왔다. 핵심 기능을 완성하는 데는 30분이 걸렸고, 내가 매일 사용할 만한 제품으로 다듬는 데는 3시간이 더 필요했다.

바이브 코딩에 뒤처지고 있다는 불안 때문에 시작한 작업은 AI 시대에도 사람이 해야 할 일이 무엇인지 확인하는 경험이 되었다.

바이브 코딩 FOMO

기획, 디자인, 개발을 모두 할 수 있다는 것이 나의 강점이었다. 그런데 AI가 이 모든 일을 빠르게 해내기 시작하면서 내 강점이 사라질 수도 있겠다는 걱정이 들었다.

그런 와중에 육아휴직 중이라 하루의 대부분을 육아에 쓰고 있었다. 다른 사람들이 바이브 코딩으로 무언가를 만들고 공유하는 것을 보며 나만 뒤처지는 것 같았다. FOMO가 찾아오기 시작한 것이다.

최근 육아 시스템이 완성되고 아이의 생활 패턴이 안정되면서 하루 중 일정 시간 작업을 할 수 있게 되었다. 그렇게 첫 바이브 코딩을 시작하게 되었다.

실제로 사용할 것을 만들자

바이브 코딩 자체를 경험하는 것이 목적이었지만, 아무 의미 없는 프로젝트를 만들고 싶지는 않았다. 작더라도 내가 실제로 사용할 도구를 만들고 싶었다.

고민 끝에 bit.ly와 같은 URL 단축기를 개인용으로 만들기로 했다.

나는 개인 일감은 Jira로 관리하고 문서는 Obsidian으로 작성한다. 이때 가장 불편한 점은 Jira의 본문에서 obsidian:// 주소가 링크로 만들어지지 않는다는 점이다. 일감과 관련된 Obsidian 문서를 연결할 때마다 주소를 복사해 별도로 열어야 하는 번거로움이 있었다.

obsidian:// 주소를 https:// 단축 주소로 바꿔 Jira에 연결하면 이 문제를 해결할 수 있을 것 같았다. 지극히 개인적인 문제였지만, 작업의 동기부여가 되기에는 충분했다.

Jira에서 Obsidian 링크를 연결할 때의 문제

3분 만에 나온 프로토타입

내가 원하는 기능을 Codex에게 전달했다. 첫 바이브 코딩이라 내가 결과를 직접 검토할 수 있도록 익숙한 기술 스택을 사용해달라고 요청했다.

첫 바이브 코딩을 시작한 프롬프트

프롬프트를 입력한 지 3분 만에 작동하는 프로토타입이 나왔다. 심지어 디자인도 어느 정도 완성된 상태였다.

물론 내가 원하던 기능이 처음부터 모두 제대로 작동한 것은 아니었다. 서비스는 보안을 이유로 obsidian:// 주소를 거부했다. Allowlist 대신 Denylist 방식으로 수정하여 보안에 치명적인 프로토콜이 아니면 허용하도록 했다.

AI도 삽질한다

작업 과정에서 AI 때문에 시간을 허비하기도 했다.

Codex가 기존 Flask 서버를 종료하지 않은 채 새로운 서버를 계속 실행하는 일이 있었다. Codex는 수정한 내용이 반영되지 않는 이유를 코드 버그라고 생각하며 계속 코드만 수정했다. 내가 프로세스 문제가 아니냐며 지적하자 그제서야 원인을 올바르게 찾았다.

이후 문제 해결을 위해 불필요하게 추가한 코드를 찾아 제거해야 했다. 여기에만 20분 정도를 사용했다. 첫 프로토타입은 3분 만에 나왔지만, 이 삽질 때문에 핵심 기능을 완성하는 데 총 30분이 걸리게 되었다.

(내 토큰 돌려줘….)

AI의 삽질

딸깍 이후의 세 시간

매일 사용할 도구였기에 쓰기 편하고 보기도 좋게 만들고 싶었다.

생성된 주소를 클립보드로 바로 복사할 수 있게 만들고, 같은 주소를 여러 번 등록했을 때의 처리 방식도 정했다. 휴대폰에서도 쉽게 사용할 수 있도록 레이아웃을 정리하고, 다크 모드도 추가했다. 정보와 버튼의 위치를 바꾸고, UI 사이의 간격과 라운딩도 일관성 있게 조정했다. 버튼의 텍스트를 아이콘으로 교체하여 화면 공간도 확보했다. UX를 하나하나 개선하다보니 세 시간이 더 지나갔다.

첫 프로토타입을 만드는 데는 3분이 걸렸고, 기능이 의도대로 작동하는데는 30분이 걸렸지만, 내가 실제로 사용하기 편한 제품으로 완성하는 데는 3시간이 필요했다.

서비스는 개인 서버에 배포하여 실제로 잘 쓰게 되었다.

완성한 개인용 URL 단축기 Shortly

첫 바이브 코딩에 대한 소감

직접 해보니 바이브 코딩은 완전히 새로운 작업 방식이라기 보다 협업의 대상이 AI로 바뀐 것에 가까웠다.

기획자 입장에서는 다른 기획자, 디자이너, 프로그래머와 늘 하던 협업을 단지 AI와 하게 된 것뿐이다. 무엇을 만들지 정하고, 결과가 의도대로 작동하는지 확인하고, 사람이 사용하기 편한지 판단하는 것은 여전히 사람의 몫이다.

누구나 제품을 빠르게 만들 수 있게 된 만큼 무엇을 만들 것인지 결정하는 능력은 더 중요해졌다. 만드는 비용은 낮아졌지만, 기존에 없던 가치를 발견하고 좋은 제품으로 완성하는 일까지 쉬워진 것은 아니다.

바이브 코딩을 단순히 딸깍이라고 표현하는 것은 시작 이후의 과정을 생략한다. 딸깍 한 번으로 시작은 할 수 있지만, 결과물을 직접 사용하고 문제를 발견하며 끝까지 다듬는 과정은 여전히 긴 여정이기 때문이다.

덧붙임: Jira 팁

프로젝트를 완성한 뒤 알게 된 사실이 있다. Jira 이슈에 별도 필드를 만들면 https:// 이외의 프로토콜도 자동으로 링크가 걸린다는 것이다.

이 문제만 놓고 보면 이 프로젝트는 필요하지 않았을 수도 있겠다. 하지만 FOMO 극복을 위한 첫 바이브 코딩의 주제로는 역할을 충분히 했다고 생각한다.

Jira의 Obsidian 링크 필드

This post is licensed under CC BY 4.0 by the author.