| Worse is better? - Markdown beat Asciidoc - Swagger beat RAML - C++ beat D - more Each of these gained traction over the other, and each had things that made them less perfect than the other. Markdown had vague or missing areas of specification that led to incompatible implementation. Swagger couldn't do everything, or did some things in multiple ways where RAML had a normalized syntax. D theoretically improved on C, and still lives on. Markdown had more users, and more tooling. Swagger had the Swagger UI. C++ had Bjarne Stroustrup and tooling. On the up-side, sometimes these stories come 'round again. Windows beat Mac... But Mac's still here and still gaining traction. Maybe Clojure will be more popular than Go one day. Maybe we'll all chuck YAML for EDN or TOML. It could happen. |
All of the projects that succeed through the worse is better principle is because they were easier to implement, and thus, easier to ship first and early. They have to be just good enough for their intended purpose, with relatively few competing alternatives at the time.
Only after those projects became more popular, do the warts show up, and then newer projects/iterations thought up as a replacement - which, of course don't succeed because the marginal improvements don't cover the costs of replacement.