Ultimately, it’s true that the result is a compromised, “glued together” platform that by sheer dint of its ubiquity will triumph over “properly engineered” solutions, but that’s nothing new. It’s the superior survival characteristics of “worse-is-better” over the “right thing”. A solution that’s good enough, easy to implement and easy to use will usually beat the “better” solution. UNIX isn’t perfect, but Plan 9 wasn’t superior enough to displace it. C is straightforward to implement, so it’s the most common systems language. Likewise, HTML5 is on every device, and lets our desktop client and web application share the same user interface. So let’s accept its flaws and work on refining the solution. What do you think?