실제 개발자의 하루를 보면 코드를 새로 쓰는 시간보다 기존 코드를 고치는 시간이 더 길다.
그런데 입문 강의는 대부분 새 코드 작성에만 집중한다. 오류 메시지 읽는 법, 스택 트레이스 해석하는 법, print문으로 변수 상태를 추적하는 법 같은 내용은 고급 과정으로 미뤄진다. 이 순서가 입문자를 가장 오래 막히게 만드는 구조다.
디버깅 먼저 익히는 실용적 방법
의도적으로 오류를 만들어보는 연습이 효과적이다. 작동하는 코드를 가져다가 일부러 변수 이름을 바꾸거나 콜론을 지워보면서 어떤 오류 메시지가 나오는지 확인하는 것이다. 이 과정에서 오류 메시지가 무섭지 않게 된다.
Python의 경우 오류 메시지 마지막 줄에 핵심 정보가 담겨 있다. TypeError, NameError, IndexError 각각이 어떤 상황에서 발생하는지 패턴으로 익히면, 나중에 오류를 마주쳤을 때 어디를 봐야 할지 바로 안다. 바쁜 사람에게 가장 시간을 아껴주는 기술이 바로 이것이다.