Earlier quoted context omitted.
This quote is so misunderstood and so abused all the time. The point of the statement is to not micro-optimize this and that corner of the program without having any data to guide you on what you should optimize and how. It's not a rallying call to forgo all concerns about application performance and efficiency. The mis-application of this quote is the root of all evil in modern software IMO. It's why a chat program…
> 1. Make it work correctly and efficiently (to a reasonable degree) Unfortunately, this took your team 6 months and the people that launched their app 4 months ago (having opted for "make it work") now have 90% of your market and you've all just been made redundant because the customers do not care whether your app is "more correct" and "more efficient" because they just plain damn couldn't use it. There's a reason…
First market is not often the winner. Facebook came very late to the social media scene but it dominated.
Google came very late to the search engine scene, and people don't even remember this but there was a time when there were a ton of search engines and anyone at the time would probably think that the search engine market is saturated and there's no space for a new product.
All evidence actually points to better products dominating the market even if they come late.
If your competitors released their app 4 months ahead of you but it was full of bugs and always hangs up, and then you release your product which actually works and performs well, people will see your product as a breath of fresh air.
Another example is the Chrome browser, which came at a time when Firefox and IE were competing fiercely for market share, and Chrome completely dominated them on the simple basis that it was _really fast_.
For most products it doesn't even cost 6 months to make it fast. If you have that as a goal from the very start, there will never be a stage of "omg it's really slow let's try to make it a bit faster". It will always just be fast.