Deploy often and early
Photo by Adam Winger on Unsplash
Rule 1: Go end-to-end Early.
Go end-to-end as early, and as often as possible. Take this as an axiomatic rule.
What does this mean?
Imagine you’re filming a movie.
If you’ve never done it before: how would you approach the problem:
Choice A:
- Shooting for 20 hours.
- then cut and edit it to 2-3 hours,
- then deploy it,
- then see how an audience reacts to it?
Or
Choice B:
- Make a 1 minute movie. Film for 20 minutes. It seems absurdly short.
I’d go for the second option every time.
Why?
- It’s simpler,
- and you’ll learn a lot fixing problems along the way and doing so cheaply.
- The faster you learn, the better.
- What does learning involve? Everything required to deploy. Convincing people. Marshalling resources. Most importantly: making trade-off decisions: you do not have an infinite amount of time and money.
- Initially, doing a series of short firms allows you to get your skills up, and will de-risk the production of a full feature length movie when you attempt it.
Don’t believe me?
Take it from Tarantino: he lost a couple of years filming. He corrected it only in the last few months of filming - but it was too late. He was financing the operation by working at the video store, and shooting on weekends. He was constrained by trade-off.
The Same Applies to Everything in Life
Building a sky-srapper? Build a gardenshed first. You cannot do the former without having the skills to do the latter.
Are you deploying an application? If you’ve never done it before: de-risk it by deploying a shell, and getting an end-user to use that shell.
Do not do it like a government agency: where you spend 5 years writing a complex application, only to deploy it in the 4th year, on the 364th day - and to then realise that nothing works….good luck trying to fix it at that stage.
I made that mistake, even though I should have known better: there was too long a gap between my releases: and now I am suffering for it.
TL;DR
Deploy early. Deploy quickly. And continuously improve based on the feedback of paying customers.