실 배포 2주의 경험담
바이브 코딩 프로젝트 FRAC이 공개된 지 2주가 지났다. 첫 공개 후 1주일 정도는 마이너 한 버그들을 잡으면서 홍보에 열을 올렸다면, 그다음 1주일은 반응을 보는 상황이었다. 브런치와 미디엄에 바이브 코딩을 주제로 연재 글을 올렸지만, 넘치다 못해 홍수 수준의 바이브 코딩 개발기에 파묻혀 아직도 빛을 보지 못하고 있다. 이제 비개발자로 출발한 1인 개발자로 서비스까지 구현한 상황에서 바이브 코딩에 가려져 있는 것을 이야기해보고자 한다.
바이브 코딩의 사례는 분명 넘쳐나지만, 옥석을 가리기는 정말 어렵다. 즉, "해봤다"라는 경험의 공유가 큰 편이지, "제대로 해봤다"라는 사례를 찾기가 어렵기 때문이다. 그럼에도 "해봤다"는 경험에 주목을 많이 하는 이유는 전적으로 특정인이 가지고 있는 인적 네트워크의 힘에서 비롯되지 않았나 싶다.
나는 그러한 네트워크가 전무한 상황에서 "제대로 해봤다"라고 자평하는 결과물로 도전을 하고 있는 상황이다. 물론 그것을 판단하는 것은 대중의 몫이겠지만, 싸늘한 반응에는 나름 답답함이 느껴지는 것도 사실이다. 로컬 서버 컴퓨터든 클라우드든 실제로 서비스를 하는 사람 입장에서 보면, 서비스를 유지하는 것조차 시곗바늘과 비용이 정비례한다는 것에 공감할 것이다. 인적 네트워크가 없는 1인 개발자가 서비스 비용의 손익분기만 유지한다는 것이 얼마나 어려울지는 실제로 경험해 보면 안다.
즉, 바이브 코딩으로 만들어낸 "참신한" 서비스에 의미가 담기길 원한다면, 실제로 배포하는 것은 필수적인 영역이다. 배포하지 않으면 아무것도 아니기 때문이다. 그러나 비개발자에게는 "배포"라는 기술적 장벽도 높고, 설사 넘는다고 해도 운영과 유지라는 숙제에 직면한다. 그래서 더더욱 바이브 코딩은 비개발자와 거리가 매우 멀다고 할 수 있다. 바이브 코딩에 흥분하고 찬양하는 사람들은 마치 비개발자가 뭔가 할 수 있을 것처럼 이야기하지만, 내 개인적인 생각으로는 개발자와 비개발자의 격차는 더욱 벌어진다고 해석한다. 왜냐하면 배포는 정말 비개발자에게 충격 그 자체이기 때문이다.
배포는 기술적 난도와 비용이 기가 막히게 맞아떨어지는 영역이라고 본다. 배포가 쉬우면 쉬울수록 비용은 올라가고, 어려우면 어려울수록 비용은 매우 저렴해진다. 가장 쉬운 배포는 Render와 같은 PasS를 쓰는 것이다. github 소스코드 연동만으로 모든 것이 해결되니 너무나 편하다. 사용자가 몰리면 Render의 클라우드 인스턴스의 스펙을 늘리면 되지만 생각보다 비용이 큰 편이다. 같은 수준의 클라우드 컴퓨터를 쓴다면 훨씬 저렴해지기 때문이다. 적절한 기술적 지원(프로비저닝 데이터베이스 등)은 비용으로 해결하고, 반 정도는 직접 구성한다는 것이 클라우드 컴퓨터를 사용하는 접근이라고 본다. 나도 구글 클라우드 플랫폼에서 구현을 했고, Render에서 벗어나 월 6만 원 수준으로 운영을 하고 있으며, 예상컨대 한 50명 동시접속은 버틸 수 있지 않을까 한다. 더 훌륭한 사람은 아마 로컬에서 웹서버를 운영하겠지만 이건 매니악한 취미이던지 직업의 영역이다.
결국 비개발자에게 배포란 비용이다. 비개발자가 만든 서비스가 나름 차별화된다고 생각한다면 Render든 AWS든 배포를 하기를 강권한다. 그래야만 정글과 같은 실전과 운영의 필요성을 체감할 수 있기 때문이다.
FRAC이라는 웹 퍼즐 게임으로 거창하게 창업까지 한다는 생각은 없지만, 사용자의 반응을 보려면 능동적인 마케팅 전략이 필요하다는 사실을 깨닫게 됐다. 반응이 있어야 개선을 하든, 도저히 답이 없다면 마무리 하든 의사결정을 내릴 수 있기 때문이다.
내가 세웠던 전략은 이렇다. 나는 FRAC에 ChatGPT와 Gemini를 썼으니 각각의 온라인 커뮤니티에 글을 올리고 반응을 보기로 했다. 그런데 처음에 가입하자마자 글을 올리니 바로 필터링되어 글이 삭제된 것을 보고 놀랐었다. 알고 보니 Discourse라고 하는 온라인 커뮤니티 규칙으로 운영을 하고 있었음을 확인했고, 게시글 업로드 조건을 만족시킨 뒤 글을 올려봤는데 참으로 반응이 없었다. 마찬가지로 글로벌 포럼인 Reddit에 업로드를 하려고 보았지만 역시나 카르마라는 일종의 활동 포인트 덕에 글을 업로드하는 것 자체가 또 하나의 일이라는 것을 느꼈다. 결국 브런치나 미디엄 같은 곳에 바이브 코딩 개발 수기를 올리고 반응을 보는 수밖에 없었지만, 내가 그 글을 읽는 사람의 입장을 생각해 본다면 선뜻 웹페이지 진입까지 가는 것이 쉽지 않겠다고 판단했다.
나는 FRAC을 무료와 광고 없음을 내세웠지만, 아이러니하게도 FRAC을 홍보하기 위한 수단으로 구글 애즈(Google Ads)를 사용하는 것을 생각하게 되었다. 이쯤 되면 나도 정말 진심이라는 생각이 들었다. 결국엔 사람의 시선을 이끌어 내 서비스에 진입하게 하고, 경험해 보는 것을 토대로 사용자를 모으는 것이 필요하다고 봤다. 구글 애즈를 경험하면서 정말 신기한 경험을 하게 되었는데, 바로 광고의 과금 체계이다. 구글은 알아서 홍보할 대상을 설정하게끔 지원해 주고, 내 광고를 클릭한 수에 따라서 광고비를 과금한다는 것이다. 광고주 입장에서는 합리적으로 볼 수 있겠으나, 누군가 악의적으로 클릭만 한다면이라는 생각까지 다다르긴 했다. 아무튼 구글 애즈도 경험이 없었기 때문에 ChatGPT와 함께 시안을 잡고 광고 제작을 진행했다.
ChatGPT는 확실히 구글 관련 정보가 빈약해서 그런지, 꽤 옛날 기준으로 광고를 만들라고 제안하여 참으로 삽질을 많이 했다. 일단 뭐든 해보고 반응을 보자는 마음에 빠르게 배너를 만들어 진행해 봤다.
먼저 초안으로 gif를 만들었다. 나는 디자인 도구를 한 번도 활용해 본 적이 없기 때문에 그저 웹페이지를 잘 조정하여 캡처나 녹화를 하는 방법을 택했다. 그런데 웬걸 구글 애즈에 업로드를 하려 하니 첨부 자체가 안 되는 것을 확인했다. 이것저것 알아보니 짧은 YouTube 영상으로 만들어야 된다는 것을 알게 되었고 일단 골치가 아파 영상 광고는 패스했다. 이쯤 되니 내가 광고를 보는 사람의 입장에서 생각을 다시 해보게 되었다. gif가 문제가 아니고 단순하고 직관적인 메시지를 줘야 하지 않을까?
그래서 쉽게 가보기로 하고, 이미지를 간단하게 캡처해서 광고 배너를 만들게 되었다.
등록을 해놓고 보니 반응이 또 영 시원치 않았다. 생각해 보면 이것은 전문가들의 영역이라고 느꼈다. 나는 인트로 페이지를 만들 때 사람들의 시선을 붙잡아야 한다고 생각하여 실제로도 공을 많이 들였었다. 부유하는 입자들이 수축과 팽창을 반복하고, 수축할 때는 모든 정보가 붕괴된다는 설정으로 FRAC이라는 픽셀 로고가 모두 흩어지는 효과도 구현했다. 캐치 프레이즈도 타자기 형태로 나오는 것을 만들어 처음 화면을 보면 그래도 지켜보는 시간이 있지 않을까? 혹은 궁금해하지 않을까?라는 것을 의도했다. (확인해보고 싶으시면 클릭)
그러나 이 페이지로 유도하는 광고는 그것보다 더 임팩트 있게 만들어야 한다는 사실이 상당히 부담스러워졌다. 이미지 편집은 파워포인트에서나 겨우 하는 수준인데 말이다. 차라리 숫자 퍼즐 자체를 배너로 만들면 어떨까 하는 생각이 들기도 했다. 어쨌든 클릭을 안 하면 지출도 없는데 말이다.
이렇게 정보가 흘러넘치고, 재미있고 자극적인 콘텐츠가 많은 세상에서 "생각"을 요구하는 숫자 퍼즐 게임이 설 자리는 많지 않을 것이다. 하물며 전문 개발자도 아닌 비개발자가 만든 결과물이라면 부족함이 있다는 것은 분명한 사실이다. 그렇다고 주눅이 들거나 하는 것은 아니지만, 일단 하는데 까지는 해본다는 입장이다. 다만 그 과정이 생각보다 너무 많은 어려움이 있다는 것이다. FRAC에 애착이 있으니 돈은 아깝지 않다. 그러나 이렇게 묻히는 것도 원차 않기 때문에 해보겠다는 생각이 들기도 한다.
오늘부터 방학이 시작되었다. 그간 FRAC을 만든다고 미뤄놨던 산더미 같은 일들을 해결해야 한다. 그런 일들을 하나씩 해결해 가면서도 FRAC에 자꾸 손길이 가는 것은 어쩔 수 없는 모양이다.
읽어주셔서 감사합니다.