Weeknotes no.16 – the work in between the work

one of my favorite ever blog posts is by dave stewart. i know nothing about him other than this blog post.

TL;DR: the overall premise: projects always overrun because estimates only cover the visible “actual work,” which is often ~20% of the effort—admin, scoping, setup, iteration, scope creep, surprises, and support make up the rest—so treat “double it, then double it again” as a sanity check and audit past projects for those invisible categories before you quote.

i really like his visualizations that show the breakdown of the individual components of a project, and how the “actual work” is only a small fraction of the total effort.

obviously he tells this from the perspective of a freelancer, but even within a company, the same applies. maybe even more so, because you have to account for the overhead of meetings, alignment, and other people’s work and blockers.

given the recent changes to the job of software development, i think this is even more relevant. the actual work part has shrunk significantly with the addition of ai code completion, or even more agentic tools and systems.
but the remaining part of aligments, meetings, and waiting for others to clear blockers hasn’t. it’s a weird mix of speeds between spitting out a bunch of pull requests and then waiting for a couple of days or weeks for anything to move along.