SECTION 4.1 집중해야 할 요소와 극복해야 할 문제
글을 쓰든 코딩하든 머릿속 생각만으로는 앞으로 나아가는 데 한계가 있다. 개념적으로는 모든 것이 아주 분명하고 흠잡을 데가 없어 보이더라도 현실은 종종 그 고결한 비전에 미치지 못한다. 아이디어를 제대로 점검하고 문제를 해결하려면 일단 노트북을 켜고 화면에 어떤 식으로든 구현해야 한다. 아이디어를 글이나 코드로 옮기는 과정에서 뜻밖의 문제가 드러나기도 하고 때로는 더 나은 새로운 아이디어가 떠오르기도 한다.
글을 쓸 때 겪는 가장 흔한 문제는 어떤 표현도 마음에 들지 않아 한 문장도 적지 못하는 것이다. 반대로 흥미롭지만 아무 상관없는 생각에 푹 빠져서 쓸데없는 메모를 여러 페이지에 걸쳐 적게 될 때도 있다. 아이디어를 코드로 옮길 때도 마찬가지다. 어떤 때는 설계 단계에서 막힌다. 또 어떤 때는 필요 이상으로 범용적이거나 보편적인 코드를 작성하느라 시간을 낭비한다. 아니면 변수 이름 같은 사소한 세부 사항에 지나치게 많은 시간을 허비하기도 한다. 이른바 바이크셰딩1이 일어나는 것이다.