회고 — AI와 함께한 사이드 프로젝트, 그리고 그 이후
20편의 여정을 돌아보며
"타로카드를 보는 웹페이지를 만드려고 해." 이 한 문장에서 시작된 프로젝트가 여기까지 왔다. 78장의 카드 데이터를 설계하고, 남색 배경에 금빛 텍스트로 분위기를 잡고, 카드가 숨 쉬듯 떠다니는 애니메이션을 만들고, 모바일에서의 수십 가지 문제를 해결하고. 20편에 걸쳐 그 과정을 기록했다.
이 마지막 편에서는 프로젝트 전체를 거시적으로 돌아보려 한다. AI가 정말로 도움이 됐던 순간과 그렇지 않았던 순간. 이 프로젝트를 통해 정립한 AI 협업 방법론. 그리고 사이드 프로젝트에서 AI 협업이 가지는 본질적 가치에 대해.
전체 프로젝트 타임라인
타로 마스터의 개발 과정을 시간순으로 정리하면 이렇다. 아이디어 구체화와 기술 스택 결정에 하루. 78장 카드 데이터와 해석 텍스트 작성에 이틀. 기본 리딩 기능과 UI 구현에 사흘. 애니메이션과 마이크로 인터랙션에 이틀. AI 실시간 해석과 서버리스 API 구축에 이틀. PWA 전환과 사용자 기능 추가에 사흘. 모바일 최적화와 UI 개편에 나흘.
전부 합치면 약 2주 반이다. 풀타임으로 집중한 게 아니라 퇴근 후와 주말을 활용한 시간이니, 실제 투입 시간은 이보다 적다. AI 없이 같은 결과물을 만들었다면 최소 두 달은 걸렸을 것이다. 이 시간 차이가 사이드 프로젝트의 생사를 결정한다. 두 달짜리 사이드 프로젝트는 완주 확률이 극히 낮지만, 2주 반이면 에너지가 식기 전에 끝낼 수 있다.
AI가 잘한 것 다섯 가지
첫째, 도메인 지식 전달이다. 타로에 대해 거의 몰랐던 내가 78장 카드의 의미, 다양한 스프레드 방식, 정방향과 역방향 해석의 차이를 빠르게 파악할 수 있었던 건 AI 덕분이다. 새로운 분야에 진입하는 초기 학습 곡선을 극적으로 낮춰줬다.
둘째, 대량 콘텐츠 생성이다. 78장 카드 각각에 대한 정방향/역방향 해석 텍스트, 총 156개의 해석을 작성하는 건 사람이 하면 일주일은 걸린다. AI와 함께 이틀 만에 완성했다. 물론 AI가 생성한 텍스트를 그대로 쓴 게 아니라 검토하고 수정하는 과정이 있었지만, 초안이 있다는 것과 백지에서 시작하는 것은 천지 차이다.
셋째, UI 구현 가속이다. 색상 팔레트 추천, CSS 애니메이션 코드, 반응형 레이아웃 패턴. 디자이너 없이 혼자 만드는 사이드 프로젝트에서 AI가 디자인 방향 설정과 구현 코드를 동시에 제공한 건 결정적이었다.
넷째, 문제 해결의 시작점 제공이다. Chrome 모바일 하단 탭 버그, 서비스 워커 캐싱 문제, jspdf 한글 폰트 문제. 이런 구체적인 기술 문제에 대해 AI는 여러 접근 방법을 제안해줬다. 최종 해결은 직접 테스트하면서 해야 했지만, 시작점이 있다는 것과 구글링부터 해야 하는 것의 효율 차이는 크다.
다섯째, SEO 전략이다. 블로그 시리즈의 키워드 설정, 메타 태그 구성, 콘텐츠 구조 설계에서 AI의 도움을 받았다. 기술 콘텐츠의 SEO는 경험 없이는 방향 잡기 어려운 영역인데, AI가 구체적인 가이드라인을 제공해줬다.
AI가 못한 것 네 가지
첫째, 최종 판단이다. "이 기능을 추가할까 말까", "지금 이 버그를 고칠까, 새 기능을 먼저 만들까", "이 디자인이 사용자에게 어떤 인상을 줄까." 프로젝트의 방향을 결정하는 순간마다 AI는 선택지를 제시해줄 수 있지만, 최종 결정의 책임은 오로지 사람에게 있었다. AI는 "A와 B 중 어떤 게 좋을까요?"라고 물으면 각각의 장단점을 말해주지만, "이 프로젝트에서는 A가 맞다"고 확신 있게 말하지는 못한다.
둘째, 감각적 검증이다. "이 애니메이션 속도가 자연스러운가?" "이 색상 조합이 실제로 신비로운 느낌을 주는가?" "이 버튼의 위치가 엄지손가락으로 누르기 편한가?" 이런 감각적 판단은 AI가 할 수 없다. 0.3초와 0.4초의 차이, #0a0a1a와 #0a0a2a의 차이를 화면에서 직접 확인하고 느끼는 건 사람만의 영역이다.
셋째, 실제 환경 테스트다. Chrome 모바일 버그가 대표적인 사례다. AI는 이론적으로 올바른 해결책을 제안하지만, 실제 디바이스에서 동작하는지는 직접 테스트하지 않으면 모른다. 다양한 기기, 다양한 브라우저, 다양한 네트워크 환경에서의 동작을 검증하는 건 AI가 대신할 수 없는 작업이다.
넷째, "왜"를 만들어내는 것이다. 19편에서 자세히 다뤘지만, 프로젝트의 존재 이유와 방향성을 설정하는 건 AI가 할 수 없는 일이다. "타로 웹앱을 왜 만들어야 하는가?"에 대한 답은 내 개인적 관심, 기술적 호기심, 사이드 프로젝트에 대한 열망에서 나온 것이지 AI가 생성해준 것이 아니다.
AI 협업 방법론 다섯 가지
20편의 시리즈를 관통하는 AI 협업 방법론을 다섯 가지로 정리한다.
하나, 모호한 시작도 괜찮다. 완벽한 기획서가 아니라 한 문장의 아이디어로 시작해도 된다. AI가 그 모호함을 구체적인 의사결정 축으로 분해해준다. 시작의 문턱을 낮추는 것이 AI 협업의 첫 번째 가치다.
둘, 구조는 내가 짜고 실행은 AI에게 맡긴다. 아키텍처, 데이터 모델, 컴포넌트 구조 같은 설계는 개발자가 주도한다. 설계가 잡힌 후의 코드 작성은 AI가 빠르게 처리한다. 이 분업이 품질과 속도를 동시에 확보하는 핵심이다.
셋, 이해 없이 넘어가지 않는다. AI가 작성한 코드를 반드시 읽고 이해한다. 모르는 부분은 즉시 물어본다. 이 과정이 느리게 느껴지지만, 나중에 확장과 디버깅에서 열 배의 시간을 아껴준다.
넷, 항상 "왜?"를 물어본다. AI의 첫 번째 제안을 그대로 받아들이지 않는다. 왜 이 방법인지, 대안은 무엇인지, 트레이드오프는 무엇인지를 확인한다. 이 질문이 더 나은 결과물과 더 깊은 이해를 동시에 만든다.
다섯, 감각적 검증은 직접 한다. AI가 만든 결과물을 실제 환경에서 직접 확인한다. 디자인, 애니메이션 타이밍, 터치 반응, 전체적인 사용 흐름. 눈과 손가락으로 느끼는 검증을 생략하지 않는다.
사이드 프로젝트에서 AI 협업의 가장 큰 장점
많은 장점이 있지만 하나만 꼽으라면, "시작의 마찰을 줄인다"는 것이다.
사이드 프로젝트가 죽는 가장 흔한 이유는 시작하지 못해서다. 기획 단계에서 에너지를 소진하거나, 모르는 분야의 벽에 부딪히거나, 기술 스택 선택에서 결정 장애에 빠지거나. AI는 이 모든 초기 마찰을 극적으로 줄여준다.
아이디어가 떠오른 순간의 에너지를 잃지 않고 바로 구체적인 형태로 연결해주는 것. 이것이 AI 협업이 사이드 프로젝트에 주는 가장 본질적인 가치다. 타로 마스터는 이 가치 덕분에 "아이디어" 단계를 넘어 "실제 동작하는 프로덕트"가 될 수 있었다.
속도와 품질의 균형
AI와 함께하면 빠르다. 하지만 빠르다는 것이 항상 좋은 것은 아니다. 속도에 취하면 품질을 놓치기 쉽다. "동작하니까 됐지" 하고 넘어가는 유혹이 매 순간 있었다.
이 균형을 의식적으로 유지하는 것이 중요했다. 빠르게 만들되 꼼꼼하게 검증한다. AI의 제안을 받되 맹목적으로 따르지 않는다. 코드를 복사하되 이해하고 복사한다. 이 긴장감을 유지하는 것 자체가 AI 시대의 개발 역량이라고 느꼈다.
돌이켜보면, 타로 마스터에서 가장 만족스러운 부분은 속도가 빨랐던 기능이 아니라, 시간을 들여 디테일을 챙긴 부분이다. 0.3초로 조정한 화면 전환, 남색 #0a0a1a를 선택하기까지의 색상 테스트, 모바일에서 수십 번 반복한 터치 테스트. AI가 아무리 빠르게 코드를 만들어줘도, 이 디테일의 시간은 줄일 수 없다.
확장 가능성: 아직 남은 이야기들
타로 마스터는 완성이 아니라 시작점에 가깝다. 아직 해보고 싶은 것들이 많다. AI 맞춤형 해석을 더 고도화해서 사용자의 질문 맥락에 따라 해석이 달라지게 하는 것. 켈틱 크로스 외에 더 다양한 스프레드를 추가하는 것. 매일의 리딩을 분석해서 주간, 월간 인사이트를 제공하는 것. 다국어 지원으로 해외 사용자에게도 서비스하는 것.
이 확장 가능성이 사이드 프로젝트를 계속 살아있게 만드는 연료다. 완성이 아니라 다음 단계가 보이는 것. 만들수록 더 만들고 싶은 것이 생기는 것. 타로 마스터는 그런 프로젝트가 됐다.
"함께 만들어가는 것"
20편의 시리즈를 마무리하며 하고 싶은 말은 이것이다. AI가 대신 만들어주는 것이 아니라 함께 만들어가는 것이다.
이 문장이 중요한 건, AI 도구의 발전 속도가 빠를수록 "대신 만들어준다"는 인식이 퍼지기 때문이다. AI에게 던지면 뚝딱 나온다는 이미지. 물론 간단한 것은 정말로 그렇게 된다. 하지만 애정을 가지고 오래 가꾸고 싶은 프로젝트, 사용자에게 의미 있는 경험을 주고 싶은 프로젝트에서는 "대신"이 아니라 "함께"가 맞는 표현이다.
나는 타로 마스터의 모든 결정을 직접 내렸다. 남색 배경을 선택한 것도, 자유 선택 모드를 만들기로 한 것도, Linear 스타일로 UI를 개편하기로 한 것도. AI는 그 결정을 빠르게 실현할 수 있도록 도와줬다. 이 관계가 건강한 AI 협업이라고 생각한다.
코드를 쓰는 시간은 줄었지만, 생각하는 시간은 오히려 늘었다. AI가 실행의 부담을 덜어준 만큼, "무엇을 만들 것인가"와 "왜 만드는가"에 더 집중할 수 있었다. 그리고 이 집중이 타로 마스터를 "그냥 타로 앱"이 아닌 "나만의 타로 앱"으로 만들어줬다.
시리즈를 읽어주신 분들에게
1편부터 20편까지 긴 여정을 함께해주신 분들께 감사드린다. 한 문장의 아이디어에서 시작해서 PWA, 모바일 최적화, AI 실시간 해석까지 도달한 이 과정이 누군가에게는 "나도 해볼까?"라는 작은 용기가 되었으면 한다.
사이드 프로젝트는 결국 시작하는 사람의 것이다. 완벽한 준비가 아니라 불완전한 시작이 프로젝트를 살린다. AI는 그 불완전한 시작을 도와주는 가장 좋은 도구다. 하지만 시작 버튼을 누르는 건 결국 당신이다.
머릿속에 떠도는 아이디어가 있다면, 지금 AI에게 한 문장을 던져보라. 그 한 문장이 20편짜리 이야기가 될 수도 있다.
댓글
댓글 쓰기