4 min read
Shipping is Winning … or is it?

You may have heard phrases like “Ship first. Perfect later” or “Shipping is Winning”. This focus is on getting something out there as quickly as possible rather than spending years perfecting it - a notion that also sits at the heart of the lean startup movement. I’m a big fan of this.
Why?
Because PPTs don’t convince customers, products do.
When thinking about the chances of success of something, you can very easily run into analysis paralysis - sitting on your ass debating unpredictable and improbable consequences with the incomplete and biased information at your disposal - not getting smarter at all. Theoretical exercises like market sizing are useful for estimating how big your business could be - but how is it going to get that big? If the consultants could figure all that shit out themselves, McKinsey  and BCG would be inventing shit and building businesses rather than “helping” others do the same. The proof is in the pudding not in the fancily presented recipe.
And someone has to make that pudding.  Coming back to software and shipping.
What’s the point of shipping early and often?
The point is to take risks.
The point is to have momentum.
The point is to take make small mistakes The underlying philosophy being
Take risks - Don’t debate, do
Learn - Decode why it didn’t work or why it did?
Improve - Use learnings to the future less hazy and actions more justifiable  Lean redux anyone? However, when Shipping fast/often can be counterproductive?

“Make load of mistakes, but always survive to make the next mistake” Like a powerful tool, what’s great in the right hands becomes greatly destructive in the wrong hands. When is shipping fast bad?
Shipping for shipping sakes
If you don’t have good continuous integration/delivery infrastructure in place and are releasing stuff all the time just because Quora deploys 50 times a day, you have different problems to solve When Shipping puts your reputation on the line
You can move fast and break things; but if all you’re doing is breaking shit and causing outages all the time, that’s a really fast route to losing customer trust and destroying the reputation of your business. When hardware doesn’t support your velocity
You ship 100s of times/day if you’re a website/web application. Less quickly if you’re mobile app where users have to download every new update of yours . There might even be no chance to update if you’re writing firmware for a disconnected device.

When context doesn’t support your velocity
Facebook can make hordes of changes to its interfaces - nobody dies if see fewer likes on the photo but you wouldn’t want your Heart Monitor to skip a few beats and pronounce you dead when you aren’t. I work for a payments company and even a single failed payment might mean a small business losing a deal they’ve been chasing for months or a delayed payment can mean someone facing cashflow problems.
In both cases, people would be happier if sacrificed some speed for more reliability.