내가 원하는 코드를 AI가 못 만드는 진짜 이유, 설명이 부족합니다!
"AI가 코드를 잘 못 짜는 걸까요? 아니면 내가 제대로 설명하지 못한 걸까요?"
바이브코딩을 시작한 사람이라면 한 번쯤 "왜 내가 원하는 결과가 안 나오지?"라는 고민을 해봤을 것입니다. 많은 사람은 AI의 성능이나 프롬프트를 문제라고 생각합니다.
하지만 실제로는 설명이 부족해서 AI가 사용자의 의도를 정확히 이해하지 못하는 경우가 훨씬 많습니다. AI는 사람처럼 눈치로 의도를 파악하지 않습니다. 전달받은 정보만으로 판단하기 때문에 설명이 부족하면 그 빈칸을 스스로 추측할 수밖에 없습니다.
결국 원하는 코드가 나오지 않는 가장 큰 이유는 AI보다 사용자의 설명이 모호한 경우가 많습니다.
AI는 코드를 만드는 것이 아니라 설명을 해석합니다
AI는 사람의 머릿속 아이디어를 읽을 수 없습니다.
사용자가 입력한 내용을 바탕으로 가장 적절하다고 판단한 코드를 생성합니다.
예를 들어
"일기 앱 만들어 줘."
라는 요청만 받으면 AI는 수많은 가능성을 생각합니다.
- 로그인 기능이 필요한가?
- 사진도 저장해야 하나?
- 날짜별 검색이 필요한가?
- 휴대전화에서 사용할 예정인가?
이런 정보를 알 수 없기 때문에 일반적인 형태의 코드를 제안하게 됩니다.
AI의 결과는 입력한 설명의 품질을 그대로 따라갑니다.
설명이 부족하면 AI는 추측하기 시작합니다
비전공자가 가장 많이 하는 실수는 자신에게는 당연한 내용을 AI도 알고 있을 것이라고 생각하는 것입니다.
예를 들어
"퀴즈 게임 만들어 줘."
라는 요청에는 중요한 정보가 빠져 있습니다.
- 누가 사용할까요?
- 과목은 무엇인가요?
- 점수는 어떻게 계산하나요?
- 몇 문제를 출제하나요?
- 정답을 맞히면 어떻게 표시하나요?
AI는 이런 빈칸을 스스로 채워 넣습니다.
문제는 그 추측이 사용자가 원하는 방향과 다를 수 있다는 것입니다.
설명이 적을수록 AI의 추측은 많아집니다.
좋은 설명은 '무엇'보다 '왜'를 함께 말합니다
많은 사람은 기능만 설명합니다.
하지만 현직 개발자는 목적도 함께 설명합니다.
좋지 않은 예
"메모 기능 추가해 줘."
좋은 예
"학생들이 수업 중 중요한 내용을 빠르게 기록할 수 있도록 메모 기능을 추가해 줘. 입력한 내용은 새로고침 후에도 유지되어야 하고 날짜순으로 정렬해 줘."
목적이 들어가면 AI는 더 적절한 구조와 기능을 제안할 가능성이 높아집니다.
기능보다 문제를 먼저 설명하는 습관이 좋은 결과를 만듭니다.
AI가 가장 알고 싶어 하는 다섯 가지
원하는 코드를 얻고 싶다면 아래 내용을 함께 설명하는 것이 좋습니다.
1. 누가 사용할까요?
- 학생
- 부모
- 회사 직원
- 개인 사업자
사용자에 따라 화면 구성과 기능이 달라집니다.
2. 무엇을 만들까요?
예를 들어
- 공부 기록장
- 독서 노트
- 가계부
- 일정 관리 앱
프로젝트의 종류를 분명하게 설명합니다.
3. 어떤 기능이 필요할까요?
예를 들면
- 저장
- 수정
- 삭제
- 검색
- 로그인
처음에는 꼭 필요한 기능만 적는 것이 좋습니다.
4. 어디에서 사용할까요?
예를 들어
- 웹사이트
- 모바일
- 태블릿
- 크롬 브라우저
실행 환경을 알려 주면 AI가 더 알맞은 코드를 작성합니다.
5. 언제 완성인가요?
예를 들면
- 새로고침해도 저장된다.
- 모바일에서도 정상적으로 보인다.
- 버튼이 모두 작동한다.
완료 기준이 있으면 AI도 목표를 명확하게 이해합니다.
"안 된다"보다 상황을 설명하세요
오류가 생겼을 때도 같은 원칙이 적용됩니다.
좋지 않은 질문
"계속 안 돼요."
좋은 질문
"저장 버튼을 누르면 목록에는 추가되지만 새로고침하면 사라집니다. localStorage를 사용하고 있으며 콘솔에는 오류가 표시되지 않습니다. 저장 부분만 확인해 주세요."
두 번째 질문은 AI가 원인을 좁혀 분석하기 쉽습니다.
좋은 질문은 문제를 해결하는 시간을 크게 줄여 줍니다.
설명을 한 번에 완벽하게 할 필요는 없습니다
많은 사람이 처음부터 모든 내용을 적어야 한다고 생각합니다.
하지만 프로젝트는 점점 구체적으로 발전하는 과정입니다.
예를 들어
1단계
"공부 기록 웹사이트를 만들어 줘."
2단계
"과목과 시간을 입력할 수 있게 수정해 줘."
3단계
"달력에서 날짜를 선택할 수 있게 해 줘."
이처럼 조금씩 설명을 추가하는 것이 오히려 효율적입니다.
AI도 이전 대화를 참고해 점진적으로 프로젝트를 개선할 수 있습니다.
AI는 설명하지 않은 것은 만들지 않습니다
가끔 사용자는
"당연히 로그인도 있을 줄 알았는데."
"검색 기능도 들어갈 줄 알았는데."
라고 이야기합니다.
하지만 AI는 요청받지 않은 기능을 마음대로 추가하지 않는 경우도 많습니다.
원하는 기능이 있다면 반드시 설명해야 합니다.
반대로 필요 없는 기능도 함께 알려 주면 좋습니다.
예를 들어
"회원가입 기능은 제외해 줘."
"데이터베이스는 사용하지 말아 줘."
처럼 제한 조건까지 전달하면 결과가 더욱 정확해집니다.
설명이 길다고 좋은 것은 아닙니다
좋은 설명은 긴 설명이 아니라 필요한 정보가 빠지지 않은 설명입니다.
다음 순서로 작성하면 훨씬 이해하기 쉽습니다.
- 프로젝트 목적
- 사용자
- 필요한 기능
- 실행 환경
- 제한 조건
- 완료 기준
이 구조만 지켜도 AI는 훨씬 정확한 결과를 제안합니다.
좋은 설명은 분량이 아니라 정보의 품질로 결정됩니다.
AI 시대에는 설명하는 능력이 개발 실력입니다
바이브코딩에서는 코드를 얼마나 많이 직접 작성했는지보다 AI에게 얼마나 명확하게 설명할 수 있는지가 결과를 크게 좌우합니다. 설명이 부족하면 AI는 빈칸을 추측할 수밖에 없고, 그 추측이 원하는 방향과 다르면 계속 수정을 반복하게 됩니다.
AI가 원하는 코드를 만들지 못하는 진짜 이유는 AI의 성능보다 설명의 부족에 있는 경우가 많습니다. 프로젝트를 시작할 때는 사용자, 해결하려는 문제, 필요한 기능, 실행 환경, 완료 기준을 먼저 정리해 보세요.
그리고 오류가 생기면 "안 된다"라고 말하기보다 현재 상황과 기대하는 결과를 구체적으로 설명하는 습관을 들이는 것이 좋습니다.
오늘부터는 프롬프트를 더 길게 쓰려고 하기보다 AI가 이해할 수 있도록 정확하게 설명하는 연습을 시작해 보세요. 그 작은 변화만으로도 바이브코딩의 결과는 훨씬 만족스러워질 것입니다.