Sowing the Seeds of Failure

Nick
2 min readFeb 2, 2021

Success is a lousy teacher. It seduces smart people into thinking they can’t lose.

Bill Gates, The Road Ahead (1996)

Great work!

You delivered your project on time, including all the promised bells and whistles!

I’m so proud working to be working with such talented people like yourselves.

I’ve planned a big team lunch to celebrate our success.

It’s important to celebrate success.

But it’s just as important to challenge your victories.

We like to believe that we succeeded due to our ability, but luck and trickery are often major factors. Sometimes success had little to do with us at all!

Butchering a quote from a famous starship captain —

It is possible to commit no mistakes and still lose.

And crucially, it’s corollary —

It is possible to commit countless mistakes, and still win.

It’s necessary to run an honest retrospective on successful projects to figure out why your project succeeded, and why could have caused it to fail if you weren’t quite so fortunate.

Without this information, you can’t be sure that your success hasn’t sowed the seeds of future failure.

Here’s some lucky and tricky things that have rescued projects that should have failed due to poor planning or execution.

Things we paid dearly for, later down the track.

Already Implemented

Man, this is going to take longer than I thought to implement.

Oh — it’s already implemented.

Rescued

Helping hands came from another team which finished up their project early, and the project was still delivered just on time.

Lucky Pass

The code doesn’t actually work all the time, but somehow didn’t show up during testing. It’ll frustrate customers later, but at least we met our deliverable.

Ninja Tech Debt

Sneak in some tech debt, a quick hack here and there. If you can’t get past the review committee, smooth-talk them into accepting tech-debt with the promise of later repayment.

It’ll slow us down later, but I just need to get this deliverable over the line.

Lawyering a Requirement

Meet the acceptance criteria knowing that it won’t deliver what the business wants.

Well, I delivered what they asked for, even if it doesn’t achieve anything. Did my part.

The Plausible Deniability Copy-Paste

This code already worked in the other repository so it’s not my fault that it complicates future changes…

There’s certainly countless examples of other things that have swung a project enough to snatch victory from the jaws of defeat — I’d love to hear them!

--

--

Nick

I’m an Australian software developer with over a decade of professional experience, currently building games with Virtual Gaming Worlds in Perth.