DEV Community

Discussion on: Standards Are Boring

Collapse
 
dwd profile image
Dave Cridland

Thanks for the enormous comment - I feel I owe an equally enormous response.

You've made at least three main points here, and I'll try to answer them separately. Apologies if you feel I've not answered some key point; feel free to nag me.

Firstly, you've suggested that XMPP is a failed standard that nobody uses. Honestly, it never ceases to amaze me how much it is used. Nevertheless, about the only place it's not widely used has been in the one place it was aimed at: general Instant Messaging.

But it is used in some astonishing places, from Finance (trading shares? You're doing it with help from XMPP) to Telcos (Depending on your mobile provider, you might have an XMPP account already) to video games (League of Legends, for example) to the military (have a Google for NATO Joint Tactical Chat sometime).

You're right that the likes of Google are not interested in federated interoperability - just watch what Google is doing to email to make federated email a second-class citizen - and XMPP was getting in the way of that. But while that was a very public slap in the face for standards, it has, perhaps surprisingly, not made as much impact as you'd think.

You're right that XML is hardly a trendy thing these days - I've joked that if we told people XMPP is a React-like syntax on the wire we'd get much more developer interest - but if you show the average XMPP developer some SOAP-style XML they'll react in the same way you would.

Next, the IETF isn't alone in being a standards organisation that works best when taking an experimental, but working specification and polishing it for standardisation. This is a good approach, but the risk is that a large company with a controlling monopoly can usurp that practise - this has been happening, and the bad feeling within the IETF toward Google in particular is very high.

But the IETF can work very well when it's not being coerced into rubber-stamping Google's specifications as standards. An example would be in the early days of the web, when HTTP/1.0 was effectively rejected by the IETF as a standard, despite widespread deployment. Instead, a huge amount of work went into fixing it in the form of HTTP/1.1, which supported the web for years (and still, largely, does).

Finally, the W3C is an odd fish in modern standards work. Most standards organisations, particularly Internet ones, have moved toward opening as much as possible, but the W3C has, if anything, moved in the opposite direction. While this makes the actions of the incumbent organisations in forming WHATWG understandable, the result has been an equally closed clique which now believes it has the only opinion worth considering - as a result, there are now two subtly conflicting URL specifications, for example.

In general, seeing that a solution to a particular problem isn't working is fine, and deciding to replace that with a new model is also fine - but WHATWG failed to learn from existing standards work, and has settled down to repeat a great many mistakes that have otherwise long-since been solved.

Collapse
 
jillesvangurp profile image
Jilles van Gurp

WhatWG succeeded in unifying what was a horrible mess of intentionally and unintentionally incompatible implementations of the same standards in W3C and IETF. It fixed that by introducing rigor, tests, and clear language and by involving those actually trying to implement it on a basis of meritocracy while getting rid of the politics that prevented the W3C from doing anything productive on this front for well over a decade.

I've seen the mobile industry from the inside and knew several people in Nokia who were full time active in various standard bodies (including W3C). A lot of this activity was not motivated by wanting to improve standards or building stuff that implemented these standards but to ensure access to, and control over relevant IP and ensuring certain patents that Nokia had stayed relevant or making sure it had new patents covering key stuff being standardized that competitors might want or need. I know of several standards that Nokia was involved with that it never had any serious intention of implementing or supporting.

My understanding is that people from Apple, Google, Opera and Mozilla working on browser technology were very successful collaborating within WhatWG after they figured out that W3C was the wrong place for that. Even while their companies were competing very aggressively. These days it is common for complex web designs to just work across different browsers. WhatWG transformed a broken by design and obsolete standard that was being pulled in all sorts of directions by companies not involved with actually implementing it into something that actually works. That's no small achievement; so I think you are being a bit harsh on WhatWG.

Http is an interesting example because Http 2 only happended after Google pushed out Spdy and was adopted quite rapidly. IETF then did what it was supposed to do and rapidly developed HTTP 2 to replace spdy by something better that met the needs of people in the industry.