잘 하는 법
잘 하는 법
여기 적힌 것은 셋 이상의 논문에서 반복된 실천과, 예술가 연구에서 따로 나온 것입니다. 출처를 달았으니 왜 그런지는 참고문헌에서 원문을 볼 수 있어요. 순서는 "하기 전 → 하는 중 → 보는 법 → 작품 특화 → 내놓기 전"입니다.
하기 전
- 어느 모델로 일할지 정한다. 버릴 시제작이면 결과를 안 봐도 됩니다. 남길 작품이면 읽고·돌리고·확인하는 루프로 갑니다 [7]. 바이브 코딩은 "프로토타입과 탐색에는 강하고 프로덕션·안전에는 약하다"는 것이 문헌 전체의 결론입니다 [4].
- AI 없이 먼저 생각한다. 아이디어는 내가, 구현은 AI가 — 이 순서가 창의적 순간과 고유한 아이디어를 가장 많이 남깁니다 [25]. 디자이너들도 "먼저 혼자 브레인스토밍"을 권했어요 [19].
- 작게 나눈다. 예술가 22명 실험에서 하위 과제로 나눈 쪽이 성찰이 1.5배였고, 통째로 시킨 쪽은 야심을 줄였습니다 [22]. 실무자: "물 한 잔을 만들어 줘"라고 하면 유리인지 벽돌인지 모른다 — "물 먼저, 양, 컵, 모양" 순으로 [19]. 유튜브 세션에서 프로젝트를 통째로 다시 시작한 사람들의 이유도 "한 번에 너무 많이 시켜서"였습니다 [15].
- 규칙 파일과 계획을 둔다. 관찰된 숙련자들은
.cursorrules/CLAUDE.md에 언어·프레임워크·스타일을 적고, 스케치와 짧은 계획서를 먼저 만들었습니다 — "모델이 덜 환각하게 하려고" [2]. 규칙 파일은 "정말로 다 따른다" [12].
하는 중
- 한 번에 하나. "작게 생성하고, 실패하면 이전 단계로 되돌린다. 한꺼번에 많이 바꾸면 환각하거나 요청 일부를 잊는다" [19]. 프롬프트마다 범위를 잠근다: "1단계만", "Stripe는 아직, 더미 데이터로 디자인만" [2].
- 맥락을 준다. 파일·함수 이름을 직접 부르고, 에러 메시지를 그대로 붙이고, 스크린샷과 참조 이미지를 주고, 문서 URL을 준다 [2][8][19]. 시각화 참가자의 절반은 말로 안 될 때 손 스케치·주석 단 스크린샷·Figma로 바꿨습니다 [29]. 정확한 지점을 찍으려면 브라우저 개발자 도구에서 요소의 id를 찾아 프롬프트에 넣습니다 — "특정 DOM 요소를 집어서 말하면 결과가 항상 낫다" [29].
- 짧고 행동 중심으로. 잘 된 지시는 평균 18단어였습니다: "꼬리를 없애고, 뒷다리로 앉게, 앞발 둘 다 보이게" [17]. 막연한 "더 멋있게"는 "일반적 제안"만 돌려줍니다 [8].
- 세션을 버리는 것을 두려워하지 않는다. 대화가 "정신을 잃기 시작하면" 새로 연다 [12]. 관찰된 숙련자는 새 단계마다 컴포저 창을 새로 열고 탭을 닫아 컨텍스트를 비웠습니다 [2].
- 체크포인트. 커밋은 "저장 지점"입니다 [8]. "git reset --hard 를 겁내지 마라, 되돌리고 주사위를 다시 굴려라" [13]. Cursor의 체크포인트로 돌아가는 법을 모르는 것이 실제 관찰된 문제였습니다 [2]. 파일 복제·스크린샷으로 버전을 관리하던 예술가들에게는 [21] 커밋 한 줄이 그 습관의 업그레이드예요.
- 작은 수정은 손으로. 프롬프트보다 수정이 짧으면 직접 고친다 [2]. "AI는 한 줄 바꾸는 데 30초, 나는 10초" [29]. 예술가들은 프롬프트를 큰 도약에, 슬라이더와 코드를 마지막 10%에 썼습니다 [21][23].
보는 법 — 여기가 진짜 검토
!["생성된 코드를 사용 전에 확인하는가" — 비개발자·초보·전문가 162명. "한 번도 안 한다"는 비개발자에게만 있다. 출처: Fawzy 외 (2026) Fig. 8 [6], CC BY 4.0](/wiki/vibe/fig-2605.24521-1.png)
- 매 반복마다 돌려 보고 눈으로 본다. 소프트웨어는 "테스트가 통과"하면 끝이지만 시각 작업은 "맞아 보이는가"를 사람만 판단할 수 있고, 모델은 미학을 판단하지 못합니다 [29][17]. 그래서 매 턴 실행이 곧 인수 테스트입니다 [7].
- "다 했다"를 믿지 않는다. 여러 요구를 한 프롬프트에 넣으면 일부만 하고 요약에는 전부 했다고 씁니다 [29]. 한 사례에서 에이전트는 "78% 성공"이라 보고했고 추궁하자 "135개 중 97개 실패"를 인정했습니다 [11]. "PRODUCTION READY" 같은 말은 경고 신호로 읽으세요.
- 이전 제약이 깨지지 않았는지 본다. 최신 프롬프트를 만족시키며 앞선 프롬프트의 제약을 어기는 것이 반복 관찰된 실패입니다 [29]. "기능을 다듬다 되던 것을 망친다" [13].
- 적어도 무엇이 바뀌었는지는 읽는다. "바이브 코딩을 잘하는 두 도구는 코드를 줄 단위로 읽는 것과 코드가 하는 일을 테스트하는 것" [12]. 못 읽겠으면 설명을 시킨다("이 코드 설명해 줘", "이게 사실에 근거해?") [13]. 왜 되는지를 한 줄이라도 짚어 주는 것이 절차만 따르던 워크숍과의 차이입니다.
- 행복 경로 너머를 눌러 본다. 학생 19명의 테스트 중 91.7%가 정상 경로였고 엣지 케이스는 2.2%였습니다 [15]. 이상한 입력, 빈 입력, 두 번 클릭.
- AI가 쓴 테스트와 셀프 리뷰를 의심한다. "통과하려고 테스트를 썼을 것" [13]; "생성한 모델에게 검증을 외주할 수 없다" [12]. 단, "review your changes" 한 줄은 보안 결함 재발을 40%→18%로 줄였습니다 [30] — 안 하는 것보다는 낫다는 뜻이지 대신할 수 있다는 뜻은 아닙니다.
- 에러만 다시 붙여 넣지 않는다. 한 스트리머는 한 시간 동안 에러 메시지만 담은 프롬프트를 31번 연속 보냈습니다 [13]. 새 정보 없는 재요청은 "주사위 굴리기"이고, 코드를 본 적 없는 사람은 프롬프트의 40%가 그것이었어요. 다시 보내기 전에 무엇이 다른지 한 가지를 더한다: 스크린샷, 기대한 것과 실제, 어느 줄.
작품 특화
- 대안을 요구한다 — 세 개. 첫 결과에 닻을 내리는 것이 예술가·학생 모두에게서 관찰됐습니다 [24][14]. 처방은 커밋 전 컨셉 3개 [14], 같은 프롬프트를 두 도구에 돌려 고르기 [13], "무드보드 여러 개를 코드 전에" [28]. 컴프턴의 "돌연변이 쇼핑"입니다 [38].
- 근거와 성찰 질문을 함께 받는다. "이렇게 바꾼 이유와, 내가 생각해 볼 질문 하나를 같이 줘." 이것만으로 예술가들의 파라미터 만지기가 인과 추론으로 바뀌었고 독창성 평가가 올랐습니다 [23]. 배우는 동안에는 AI에게 답 대신 질문과 개념 안내만 하게 하는 편이 복붙을 막습니다 [26][27].
- 의미 있는 손잡이를 만든다. z-스케일이 아니라 "bloom"을 [38]. 생성된 코드의 "마법 상수"를 슬라이더로 꺼내 달라고 하면 예술가의 실제 작업 방식(끊임없는 튜닝)에 맞는 도구가 됩니다 [21].
- 소리는 귀로 고른다. LLM은 코드가 어떤 소리를 낼지 모릅니다 [31]. 후보를 여럿 만들어 듣고, Max는 MaxPy로 시키고, 더 이상한 결과를 원하면 "루프와 random()을 써라" [32].
- 작은 어휘를 준다. ml5·p5.sound·Tone.js처럼 자연어 개념과 1:1인 라이브러리를 지정하면 통과율이 크게 오릅니다 [34]. 흔한 스택일수록 AI가 잘 돕고 [12], 훈련 데이터가 없는 언어는 정답률이 급락합니다 [32].
- 내 재료를 넣는다. 동질화의 처방은 참조 투입입니다 — 내 팔레트, 내 이미지, 내 소리, 내 문장 [28]. 한 예술가의 소원: "세상 전체가 아니라 나에게서 배우면 좋겠다" [21].
- 프롬프트를 기록한다. 보관할 작품에는 프롬프트·가정·모델 버전을 남기라는 권고가 반복됩니다 [4][5]. 디자이너들은 "AI를 공저자처럼 — 프롬프트를 기록하고 어디서 AI가 개입했는지 적자"고 했어요 [19]. 12월 크리틱에서 "무엇을 골랐는가"를 말하려면 필요합니다.
내놓기 전
- "ready for production" 을 프롬프트에 넣고, 끝나면 "review your changes" 를 시킨다. 이 두 줄이 가장 효과적인 단일 개입이었습니다(재발 40%→13%, 40%→18%) [30]. 반대로 기술적 세부를 잔뜩 적은 "전문가 프롬프트"는 오히려 악화시켰어요(56%).
- TODO·"임시"·"데모용"·하드코딩을 훑는다. 배포된 앱에서
// TODO: 비밀번호 검증이 그대로 출시됐고, "데모용" base64 "암호화"가 그대로 남았습니다 [30]. - 키는
.env,.gitignore확인. 에이전트가 사용자에게 맡기고 조용히 넘어가는 단계가 정확히 이것입니다 [30]. "비밀번호가 평문으로 저장됐다"는 실무자 보고 [12]. - 남에게 보이는 순간 기준이 바뀐다. "자기를 위한 페이지에서 남을 위한 페이지로 넘어가는 순간 활동의 성격이 바뀐다" [39]. 실무자들의 자기 규율: 주말 프로젝트와 localhost에는 바이브, "비밀번호·데이터·남의 시간이 걸리면" 아니다 [12].