코딩 한 줄 모르던 내가 하루 만에 앱을 만들고 4천 조회수를 찍은 이야기
김솔
종이 위에 체스판을 그리는 손이 멈췄다.
아내와 넷플릭스 '데블스 플랜 시즌2'를 보던 어느 저녁이었다.
화면 속 참가자들이 '기사의 여행' 퍼즐에 몰두하는 모습에 우리도 덩달아 빠져들었다. 체스의 나이트가 보드의 모든 칸을 한 번씩만 방문하는 이 게임이 생각보다 중독성이 있었다.
"이거 우리도 한번 해보자!"
A4 용지를 꺼내 5x5 격자를 그리기 시작했다. 한 판, 두 판... 어느새 책상 위는 실패한 체스판 그림들로 가득했다. 매번 새로 그리는 것도 일이었고, 지우개로 지우다 종이가 찢어지기도 했다.
열 번째 종이를 구기며 한숨을 쉬던 그 순간.
"이거... 그냥 웹으로 만들면 안 되나?"
아내의 한마디였다.
그런데 문제가 있었다. 나는 코딩을 할 줄 몰랐다.
그날 밤, 잠들기 전 스마트폰으로 뭔가 방법이 없을까 검색하다가 흥미로운 유튜브를 발견했다.
'바이브 코딩(Vibe Coding)' https://www.youtube.com/watch?v=yaVa_flkSNU
처음 듣는 단어였다. 키보드로 타닥타닥 코드를 치는 게 아니라, AI에게 일상 언어로 부탁하면 코드가 나온다는 거였다. 반신반의하며 gemini를 열었다.
"체스 나이트가 모든 칸을 한 번씩 방문하는 게임 만들어줘. 5x5 보드로. 되돌리기 기능도 있으면 좋겠어."
마치 친구에게 부탁하듯 썼다. 엔터를 눌렀다.
화면에 뭔가가 쏟아져 내렸다. HTML, CSS, JavaScript... 이름만 들어본 암호 같은 문자들. 떨리는 손으로 복사해서 메모장에 붙여넣었다. 파일 이름 끝에 .html이라고 쓰고 저장. 더블클릭.
체스판이 나타났다.
클릭하니 나이트가 움직였다. 내가 종이에 그리던 바로 그 게임이 화면에 살아있었다.
심장이 빨리 뛰었다. 마치 마법을 부린 기분이었다.
다음 날 아침.
딸아이가 어린이집에 가고, 아내가 출근한 후. 본격적으로 시작했다.
먼저 종이에 그림을 그렸다. 코딩과는 상관없는, 내가 할 수 있는 일부터. 어떤 모습이면 좋을까? 누가 쓸까? 막혔을 때 어떤 도움을 줄까?
스케치북이 아이디어로 가득 찼다. 5x5는 입문용, 8x8은 데블스 플랜 결승전 버전. 힌트 기능도 있으면 좋겠다. 단순히 "여기로 가세요"가 아니라, 왜 그곳이 최선인지 알려주는.
검색해보니 '워스도프 규칙'이라는 게 있었다. 200년 전에 발견된 방법이란다.
"음... 이거 어떻게 설명하지?"
gemini에게 다시 물었다.
"체스 나이트가 다음에 갈 곳을 고를 때, 선택지가 제일 적은 곳부터 가는 게 좋다던데. 이거 게임에 넣을 수 있어?"
"네, 그게 워스도프 규칙이에요. 막다른 길을 먼저 처리하는 전략이죠. 미로에서 빠져나갈 때 막힌 곳부터 확인하는 것처럼요."
아, 이렇게 쉽게 설명할 수 있구나.
점심도 거른 채 gemini와 대화를 이어갔다. 손가락이 아플 정도로 타이핑했다. "이 버튼을 누르면 다시 시작하게 해줘", "색깔을 좀 더 예쁘게", "스마트폰에서도 잘 보이게".
그때마다 코드가 쏟아졌고, 복사해서 붙여넣으면 게임이 조금씩 변했다.
오후가 되자 뭔가 그럴듯한 게임이 완성됐다.
하지만 뭔가 아쉬웠다. 친구들에게 자랑하고 싶은데, 매번 주소를 보내야 하나?
"이거 앱처럼 만들 수 있어? 스마트폰 홈 화면에 아이콘 놓는 거 있잖아."
"PWA라는 걸 만들면 됩니다. 웹사이트인데 앱처럼 작동해요."
또 처음 듣는 단어. 하지만 이제는 겁나지 않았다. gemini가 옆에 있으니까.
저녁 무렵, 카카오톡 공유 버튼까지 달았다.
밤 8시. 깃허브라는 곳에 올렸다. 처음으로 만든 내 작품이 인터넷에 떴다.
물론 완벽하진 않았다.
색상을 바꿨다가 "이거 눈 아파요"라는 아내의 한마디에 되돌렸다. 기능을 한꺼번에 넣으려다 코드가 꼬여서, 아예 처음부터 다시 시작한 적도 있다.
친구들에게 공유하고 피드백을 받았다.
직접 사용자의 피드백을 받아 개선하니 게임이 점점 더 완성되는 기분이 들었다.
하지만 가장 답답했던 건 수정해도 반영이 안 되는 거였다.
분명 고쳤는데 왜 옛날 버전이 계속 나오지?
"캐시 문제예요. 브라우저가 옛날 버전을 기억하고 있어서 그래요."
"그럼 어떻게 해?"
"버전 번호를 바꿔주면 됩니다. 마치 v1, v2, v3처럼 이름표를 바꿔주는 거예요."
9번이나 버전을 바꿨다. 그래도 포기하지 않았다.
왜냐면 재미있었으니까. 내 손으로 뭔가를 만든다는 게 이렇게 신날 줄 몰랐다.
블로그에 올린 지 20일.
조회수 4천. 댓글 37개.
"아이와 함께 했더니 너무 재밌어요"
"워스도프 규칙 처음 알았는데 신기하네요"
"덕분에 데블스 플랜 기분 낼 수 있었어요"
그중 가장 기억에 남는 댓글.
"데블스 플랜 보면서 직접 해보고 싶었는데, 만들어 주셔서 감사합니다!"
내가 만든 게임이 누군가에게 도움을 줬다니. 종이에 체스판 그리던 그날 밤엔 상상도 못 했던 일이었다.
이후로도 계속 바이브 코딩으로 새로운것을 만들었다.
딸아이가 주인공인 AI 그림책도 만들어봤다.
원래 Gemini Storybook이란 걸 자주 보여줬는데,
실제 아이 사진으로 그림책을 만들면 더 좋아할 것 같아서.
완성도는 떨어졌다.
솔직히 딸이 생각보다 시큰둥해서 의욕이 좀 꺾였다.
그래도 괜찮다. 만드는 과정이 즐거웠으니까.
처음엔 도구 선택도 막막했다.
마트에서 라면 고르듯, 일단 제일 유명한 걸 골랐다.
Cursor라는 거였다.
써보니 내 스타일이 아니었다.
너무 많은 선택지가 오히려 부담스러웠다.
그래서 이번엔 Claude Code를 써봤다.
단순했다.
Claude 하나만 쓸 수 있지만, 그게 오히려 편했다.
고민할 게 없으니까.
지금은 상황에 따라 골라 쓴다.
가볍게 뭔가 시도할 땐 Google AI Studio,
본격적으로 만들 땐 Claude Code.
도구는 중요하지 않다는 걸 깨달았다.
중요한 건 "무엇을 만들고 싶은가"다.
아이디어가 명확하면, 도구는 그저 도와줄 뿐이다.
이 경험으로 배운 가장 큰 교훈.
"작게 시작하되, 빨리 시작하라."
처음부터 완벽할 필요 없다.
일단 작동하는 뭔가를 만들고, 조금씩 개선하면 된다.
나도 체스판 하나로 시작해서 하루 만에 배포까지 했다.
200년 된 워스도프 규칙이 아직도 쓰인다는 것도 신기했다. 최신 기술만 찾을 게 아니라, 오래된 지혜도 살펴볼 가치가 있다.
바이브 코딩이 만능은 아니다.
복잡한 문제를 풀 땐 여전히 전문 지식이 필요하다. AI가 만든 코드를 이해하려면 기본기도 필요하다.
그래도 확실한 건, 이제 "코딩 못 하니까"라는 핑계는 못 쓴다는 거다.
매일 아침, 딸아이와 시리얼을 먹으며 묻는다.
"오늘은 뭐 만들까?"
"아빠, 선잇기 게임!"
"그래, 한번 해보자!"
종이에 체스판을 그리던 그날 밤, 아내의 한마디가 나를 새로운 세계로 이끌었다.
코딩을 한 줄도 몰랐던 내가, 이제는 아이의 상상을 현실로 만드는 아빠가 되었다.
바이브 코딩 시대.
만드는 사람과 그렇지 않은 사람의 차이는 실력이 아니다.
용기다.
당신도 오늘 시작해보면 어떨까.
내일 아침엔 당신도 누군가에게 자랑할 뭔가를 갖게 될지도 모른다.
P.S. 기사의 여행 게임은 지금도 플레이할 수 있다. 8x8 보드를 힌트 없이 클리어하면, 당신도 데블스 플랜 결승 진출감이다. 도전해보시라.
관련 링크
이 글이 도움이 되었나요?
관련 글

"의사가 코딩을 왜 배워요?" 파이썬 까막눈이 장관상을 받기까지
9개월 전 "나도 저렇게 되면 좋겠다"고 적었던 목표가 현실이 됐다. 하지만 진짜 얻은 것은 상장이 아니었다.

Day 5: 런칭, 그리고 5일간의 여정에서 배운 것들
206개의 커밋, 66개의 PR, 60시간의 몰입. 6개월 전 가이드가 안 맞고, 마지막 순간에 타입 에러가 터지고, 그래도 결국 런칭 버튼을 눌렀다

Day 3-4: 디테일이 만든 차이 - 48시간의 삽질 기록
Claude가 제안한 개선점들을 구현하다 만난 예상치 못한 벽들. Lightbox 재클릭 버그로 새벽 3시까지 삽질하고, macOS PATH 문제로 5시간을 날린 이야기