Like just about any language on computers there are specifications and standards. Standards are there so that you may have some expectation of behavior, capabilities, age, relative compatibility with its neighbors and ecosystem, syntax, etc. There are many good reasons. I would not drive on a bridge if I was told there were no specifications for the design, for how the footings were made, for the steel in the bridge, for the concrete strength, for dealing with flex and weather and weight.
Additionally these specifications have some form of versioning unless you live in a magical land where we figure out very complex problems perfectly the first time and the world around those problems never changes.
HTML is subject to these very same realities.
HTML has certainly gone through its growing pains. I’ve used HTML 2.0, HTML 3.2, HTML 4.01, XHTML 1.0, and so forth. Next up to bat is HTML 5 and it has not been easy. And you know what happens when the going gets rough - you roll up your sleeves and get out the snake oil. Wait, what?
Essentially what this means is that a “standards body” is giving up on the idea of standards and how standards benefit developers and businesses by streamlining development, making it sane, and making it take less time, less money and be fraught with fewer headaches and bugs.
We’re back to targeting browsers and not standards and specifications. Welcome to 1999.
To the layperson, here’s how this plays out.
If Standards are king : a handful Browser makers work toward implementing standards compliance, saving thousands upon thousands of developers from making up for the myriad of conflicting or missing features. The developer figures out what baseline standard he is targeting based on audience and ecosystem expectations and then writes up what’s necessary with few caveats and It Just Works. The happy relay team of Standards Body, Browser Maker, and Developer have handed the User the baton and everything is happy.
I know I’m dreaming, but for a while there things were actually moving in that direction and where they weren’t, the Standards Body was working with Browser Makers to get there and advocates of all stripes were pushing where they could as well.
If Standards are a version-less Non-Standard intended as a marketing message : the Browser Makers go off on their own as they are wont to do and try to make things cool for themselves as a point of marketing. Developers are left targeting specific browsers and versions of browsers (those still suffering with Internet Explorer 6 support, I feel for you) and using mounds of libraries to try to smooth over the differences between the browsers and their features. This takes time, it dumps the burden of consistency and implementation onto the thousands of front-line developers instead of consolidating in the hands of very few Browser Makers. This costs companies time, money and features. It also encourages the glacial movement forward to better things as companies become entrenched in proprietary features. We’ve seen this before. Internet Explorer 6 was released TEN YEARS ago and we are still suffering its boat anchor effect.
To be fair, we are currently in the middle of these two opposites. It’s not all hell and it’s not all roses. The major concern is the direction the ship is heading. The WHATWG seems to be bent on steering the ship into chaos and division and happy feel-good marketing crap. Heck, they don’t even have an actual standard even close to being ratified.
The writing is on the wall though – if you’re a Developer, get ready for a nightmare. Educating clients is mostly a losing proposition and you’re getting no support on the other side from the Standards Bodies.