This is a classic piece of programmer lore that goes a long way to describing why the software industry is the way it is today i.e. why everything sucks so much. My only criticism I have of it is that he mischaracterizes the-right-thing as being monolithically designed and slow performing (towards the end of the page). The-right-thing to me is always functionally and computationally superior, it just takes longer to make.
The <article|movie|book> itself is merely the title's host organism.
That describes so many things.Not to mention it's quite short and to the point, this is not some academic or over-indulgent blah-blah.
As for the use of the word "worse" it makes perfect sense, and the context is very easy to pick up.
I can't even fathom how one could say it "wanders".
My first impression was that author basically recommends quickly releasing ‘minimal viable products’ and expands on what should be considered ‘minimally viable’ for some specific kinds of software.
‘Worse is better’ is an interesting way to put it, though. I think it can be applied widely.
One way to avoid perfectionism is to constantly remind ourselves what's important, what's in MVP. Sure, there are a lot of things that are important for good product, but some are more important and we should focus on them first.
On the other hand, we can just remember that ‘worse is better’. No need to make yourself focus on what's important—it will come naturally once you label everything else ‘worse’.
It's hard to explain and I may have missed author's point, but that was one of takeaways for me.
The article even has its own Wikipedia page. Apart from whatever merits it might or might not have in itself, I think it's a worthwhile read because it made an impression on a lot of people back in 1989. It's one of the first explicit attempts to discuss the "Unix philosophy."
Turns out that brain dead code distribution was the most important thing. Similarly, brain dead web app deployment is what makes PHP so popular. Seems that when the web was born, "is available in some browsers" was better than "soon to be available in some browsers" and so JavaScript took off like a rocket. JavaScript doesn't get code distribution anywhere close to "the right thing", but it does it and it's ubiquitous, which is what's important if you want to reach people. After that, it's just a virtuous/vicious cycle.
This is because it was not competently designed and implemented.
It's possible, and I'm hoping it's true, that "worse is better" is a property of the current phase of growth of the computer industry, not a general principle of software. I'm hoping we can reach the finished product stage in my lifetime.
This is totally similar to the lean startup methodology in use today. Making something "worse" reduce the length of the feedback loop, allowing more flexibility, thus being better positioned to survive.
Javascript is a good example as the REPL (read eval print loop) allow beginners to start and see results right away which is very encouraging and easier to assimilate.