이 책은 엔지니어와 정책가를 위한 것이다. 그러나 첫 장에서 다룰 것은 알고리즘도 예산표도 아니다. 우리가 다루는 진짜 자원, 곧 시간이다.
크라우니가 하는 일의 본질은 시간을 만드는 일이다. 브라우저가 1초 빨리 열리고, 운영체제가 몇 초 만에 깨어나고, 집사가 잡무를 먼저 치울 때 — 산출물은 편리함이 아니라 회수된 시간이다. 이 구분은 마케팅 수사가 아니라 회계의 문제다. 편리함은 주관적 만족이고 측정할 수 없다. 시간은 객체이고 더하고 뺄 수 있다.
엔지니어링에서 우리는 늘 비용을 측정해 왔다. CPU 사이클, 메모리 바이트, 전력 와트, 네트워크 왕복. 그러나 이 모든 단위는 결국 한 통화로 환산된다. 사용자의 시간이다. 100밀리초의 첫 화면 지연은 한 명에게는 무시할 만하지만, 사용자 수를 곱하는 순간 거대한 적분값이 된다. 이 책은 그 적분을 정면으로 본다.
시간을 자원으로 다루면 설계 결정의 우선순위가 바뀐다. 기능 하나를 더하는 일은 사용자 시간을 소비하는 일이고, 의존성 하나를 끊는 일은 사용자 시간을 생산하는 일이다. 우리는 후자를 발전(發電)이라 부른다.
큰 효과는 큰 입력에서 오지 않는다. 보이지 않는 1초, 또 1초가 모여 시작된다. 이것이 이 책 전체를 관통하는 누적의 원리다. 미시적으로 무시해도 좋은 양이 거시적으로는 결정적 양이 된다. 좋은 시스템은 이 누적을 양(+)의 방향으로 쌓고, 나쁜 시스템은 음(−)의 방향으로 쌓는다.
그래서 이 책의 모든 장은 같은 질문으로 돌아온다. 우리가 캐낸 시간을 어디로 흘려보낼 것인가. 메커니즘은 2장에서, 에너지 회계는 3장에서, 주소체계는 5장에서, 도구는 6장에서 다룬다. 그러나 방향에 대한 답은 미리 말해 두는 편이 정직하다. 사랑이다. 기술서가 사랑이라는 단어로 끝나는 이유를 마지막 장에서 증명해 보이겠다.
첫 번째 책은 선물이에요. 가입하면 100맘을 드리니까, 두 번째 책부터 자유롭게 읽을 수 있어요. 친구를 추천하면 50맘도 생겨요.