Practicing Finishing


Rapid, “full slice” releases are my preferred way to ship a product. In Spelunky (Boss Fight Books, 2016), Derek Yu emphasizes that being able to finish a project is a skill every bit as important as the creative work that comes before it—and a skill you can only develop by actually doing it:

Most creative people are familiar with the first part of making something, and it’s easy to mistakenly assume that the rest is just more of the same. It’s akin to repeatedly climbing the first quarter of a mountain and thinking that you’re getting the experience you need to summit. Or running a few miles and thinking that you can run a marathon. In truth, the only way to learn how to summit mountains, run marathons, and finish making games is to actually do those things.

Yu’s point is that it’s tempting to keep prototyping new ideas forever, but if you want to improve, you have to practice pushing projects all the way through. He writes "remember that the last 10% is the last 90%. You’re never as close to being finished as you think you are".

People seem to intuitively understand this and tend to agree with it, but I've been on teams where the muscle for "finishing" has atrophied. In my line of work this looks like a long period of development without regular user-facing changes. When the time comes to ship the product to users, the team has lost the ability to create a high-quality release: user ergonomics can be poor, documentation may not be integrated well with (or replace) existing documentation, sales enablement may be missing, marketing pages may not get updates, support site answers may be missing, etc. Often the team "forgets" to do these things, or doesn't do them well because it hasn't been a skill they've practiced for months or even years.

It sometimes feels weird to insist on all of the last mile stuff for small, iterative features, but that's the only way to practice the finishing skill. The tradeoff of course is that you have to stay with a project for a few more sprints, but if the features are well scoped enough these costs should be able to be integrated into a roadmap.