최고의 도구는 사용자가 그 존재를 의식하지 않고 작업에만 집중할 수 있도록 돕는 도구입니다. 도구 제작자의 궁극적인 목표 역시 도구가 배경으로 사라져 사용자가 자신의 일에 온전히 몰입하게 만드는 것이어야 합니다. 도구의 부족한 점을 '재미있는 퍼즐'로 포장하거나, 복잡한 설정과 가파른 학습 곡선을 미덕으로 여기는 태도는 실제 생산성으로 이어지기보다 영리해 보이는 착각을 줄 수 있습니다.
예를 들어, 텍스트 편집기인 Vim(빔)이나 Emacs(이맥스) 사용자 중 일부는 도구의 단점을 해결하는 과정을 '재미있는 퍼즐'처럼 즐기기도 합니다. 일회성 텍스트 리팩터링(refactoring)을 위해 매크로(macro)를 만드는 데 시간을 들이는 것이 좋은 경험으로 여겨지기도 합니다. 그러나 Sublime Text(서브라임 텍스트)의 다중 커서(multi-cursor) 기능이나 간단한 스크립트(script)로 1분 안에 같은 작업을 처리할 수 있다면, 매크로 작업은 실제 생산성 측면에서 비효율적일 수 있습니다. 도구 선택이 개인의 워크플로(workflow)에 중요하지만, 특정 도구를 '해커 분위기'의 상징처럼 여기며 결함마저 정체성의 일부로 방어하는 태도는 도구의 장단점을 객관적으로 평가하기 어렵게 만듭니다. 또한, 터미널 사용자 인터페이스(TUI)와 그래픽 사용자 인터페이스(GUI) 논쟁에서도 현재 구현의 부족함을 범주 자체의 본질적인 한계로 오해해서는 안 됩니다. 많은 문제는 좋은 구현이 없어서 생기는 경우가 많습니다.
좋은 기본값(default)은 사용자의 시간을 아끼는 중요한 설계 원칙입니다. 도구 제작자는 설정, 조정, 학습의 부담을 사용자에게 전가하기보다, 합리적인 기본값을 제공하여 대다수 사용자가 바로 도구를 활용할 수 있도록 해야 합니다. 높은 설정 가능성이나 가파른 학습 곡선은 실제 생산성으로 보상될 때만 감수할 가치가 있는 비용이지, 그 자체가 미덕이 될 수는 없습니다. 도구가 사용자의 정체성 일부가 되면, 도구의 결함을 인정하는 것이 마치 자신을 부정하는 것처럼 느껴져 결함을 방어하고 자랑하게 되는 역효과를 낳습니다. 최고의 도구는 사용자가 자신이 쓰고 있다는 사실조차 잊게 만들며, 오직 작업 결과에만 집중할 수 있게 하는 도구여야 합니다.