~/VibeHandbook
무료 PDF

챕터 12 · 10

복습과 연습

핵심 요점

  • 버그는 기대한 것과 실제로 일어난 것 사이의 간극이다 — AI에게 양쪽 모두와 정확한 재현 단계를 줘라. 절대 "안 돼요"만 던지지 마라.
  • 에러는 글자 그대로 붙여 넣고, 스택 트레이스의 맨 위를 함께 줘라. 당신의 파일을 가리키는 첫 줄이 거의 언제나 출발점이다.
  • 바꾸기 전에 확인하라: 가설을 검증하는 라벨 붙은 로그 한 줄을 추가하고, (코드나 커밋 이력에서) 이등분으로 매 단계 탐색 공간을 절반으로 줄여라.
  • 증상이 아니라 근본 원인을 고쳐라 — 크래시만 막는 가드나 try/catch는 보통 진짜 문제를 덮어버린다.
  • AI가 빙빙 돌면, 맥락을 확실히 아는 것으로 리셋하고, 고치라고 하지 말고 설명하라고 하며, 추측 대신 증거를 더하라.

직접 해보기

다음에 무언가 망가지면, 수정을 요청하기 전에 버그 리포트를 써라. 새 대화에서 AI에게 세 가지를 줘라: 재현 단계, 기대한 것, 그리고 실제로 일어난 것 — 에러는 글자 그대로 복사하고 스택 트레이스 맨 위 프레임을 포함해서. 그런 다음 "고쳐줘"가 아니라 가설과 그것을 싸게 확인할 방법(보통 로그 한 줄)을 요청하라. 그 확인을 실행하고 출력을 다시 붙여 넣은 다음, 그제야 AI가 수정을 제안하게 하라. "안 되는데 도와줘"보다 길이 얼마나 더 곧은지 느껴 보라.

버그가 있어. 수정을 제안하기 전에, 가설 하나와 그것을 싸게 확인할 방법을
(로그 한 줄 같은) 줘 — 아직 코드는 고치지 마.

재현 단계: [무엇을 했는지]
기대: [무엇이 일어나야 했는지]
실제: [무엇이 일어났는지]

전체 에러와 스택 트레이스:
[그대로 붙여넣기]

관련 코드:
[실패한 함수, 그리고 그것이 호출하는 모든 것 붙여넣기]

무엇이 이걸 일으킬 수 있고, 바꾸기 전에 확인하려면 무엇을 로그로 찍어야 할까?

오프라인으로 보고 싶으세요?

책 전체를 PDF나 EPUB으로 무료로 내려받으세요.