초급개념
디버깅
Debugging
소프트웨어의 오류(버그)를 찾고, 원인을 분석하고, 수정하는 과정이다. 'Bug'이라는 용어는 1947년 Grace Hopper가 하버드 Mark II 컴퓨터에서 실제 나방(bug)이 회로에 끼어 오작동을 일으킨 사건에서 유래했다고 전해진다(역사적 정확성은 논쟁이 있음). 바이브 코딩 시대에 디버깅 패턴이 근본적으로 변화했다. 전통적 디버깅: 에러 메시지 확인 → 코드를 직접 읽고 분석 → 브레이크포인트 설정 → 단계별 실행 → 원인 파악 → 수정. 바이브 코딩 디버깅: 에러 스택 트레이스를 AI 채팅에 복사·붙여넣기 → '이 에러를 수정해줘' → AI가 원인을 분석하고 수정 코드를 생성. 이 패턴은 극도로 효율적이지만, 개발자가 코드의 근본적 구조를 이해하지 못한 상태에서 AI의 '임시 처방'을 반복적으로 적용하면, 한 버그를 수정할 때마다 새로운 버그가 발생하는 '두더지 잡기(whack-a-mole)' 패턴에 빠질 수 있다. 이를 방지하려면 AI에게 수정만 요청하는 것이 아니라, 에러의 근본 원인(root cause)을 설명해달라고 함께 요청하는 것이 좋다.