By John Gruber
Turn your developer product into a movement. Get your DX Checkup.
What could possibly go wrong.
I’ll save you a link hover — “wrong” links to Wikipedia’s entry on IE 6.
The comments on Holwerda’s piece are interesting, insofar as they convey the frustration of those who resent Apple’s position.
It has nagged me ever since the “Safari Is the New IE” debate erupted a few months ago that there’s a simple, succinct, counterargument. I just couldn’t put my finger on it. Reading Holwerda’s post yesterday, it popped into my head. The difference is that IE 6, at its peak, wasn’t just so popular that it allowed Microsoft to unduly influence the direction of the web — IE 6 was so popular that it allowed Microsoft to define the web. It was as though IE 6 was the web. When banking sites required ActiveX plugins, they were making websites that only worked in Internet Explorer, only on Windows. In the eyes of many web developers and publishers, it was the one and only browser that mattered.
The web today is nothing like that. No single browser (or rendering engine) has an overwhelmingly dominant position. Four browsers/rendering engines share the world: Microsoft’s IE/Trident (and now the modernized Windows 10 browser, Edge), Mozilla’s Gecko, Apple’s Safari/WebKit, and Google’s Chrome/Blink. In a world where one rendering engine does not rule the entire web, conflicts between the various popular engines are inevitable.
There are a lot of nerds — and I use that term affectionately, not pejoratively — for whom politics of any sort are just anathema. Government, office, standards body — any sort of politics. Politics are often illogical, and often unfair. Nerds crave logic and fairness. Because of this willful political blindness, my main point regarding Apple’s veto power over web browser technologies is missed by some. It isn’t whether it is right or wrong, fair or unfair, that they have this power. Nor is it whether Apple’s strategy is the correct one. It’s simply to point out that they have this veto power. And so do Google, Microsoft, and Mozilla — Apple isn’t any more powerful than the others. (Except Mozilla, which I’d argue is the least powerful of the big four rendering engine makers — see below.) What makes Apple and Safari stand out isn’t that they have more influence. It’s that Apple’s interests have diverged from those of a certain segment of the web development community — the segment interested in making mobile web apps more like native apps.
WebKit’s contrary priorities are not the result of disinterest in the web; they are the result of differing interest in the web.
As for how Apple can simply do what it wants, consider the permanent members of the U.N. Security Council: the United States, United Kingdom, France, China, and Russia. They each have veto power over any resolution. Critics complain that this veto power is undemocratic. Of course it is! These are the countries that won World War II and are officially recognized as nuclear-weapon states. Democratically, it isn’t fair that each member gets veto power. But a nuclear weapon arsenal gives each country geopolitical influence that cannot be denied or ignored. Might makes right. Whether that is how it ought to be doesn’t matter. That’s how it is.
There is no official “Web Standards Security Council”, but web browsing market share creates a de facto one. Apple (or Google, or Microsoft, or Mozilla) can’t single-handedly veto a new API from becoming an official W3C standard, but if any one of them decides not to implement it, it can’t be relied upon by web developers. The real web is not that which is defined by the W3C as a standard,1 but that which is implemented in a consistent manner across WebKit, Blink, Trident, and Gecko. The secret to the web’s wonderful success is that it’s a (nearly) universal meta-platform; that which is not implemented on a major platform, like, say, iOS, is by definition not universal.
The web community cannot compel any of these browser engine makers to implement a standard. Nothing the community does will make Apple, Microsoft, or Google act against their own self interests. Mozilla is a little different — they are of the web community. They control no popular device platform on which Mozilla is the factory-installed default browser. But in that same way, the other companies could not force Mozilla to accept the patent-encumbered H.264 standard for HTML 5 video. Mozilla stood its ground, on principle — effectively exercising its own de facto veto power. Years later they changed their mind in the face of overwhelming demand and the failure of WebM to catch on. (They should have seen supporting H.264 as inevitable as far back as 2010, but it was their prerogative to remain blinded by political high-mindedness in the name of “openness”.) The same will happen with any web technologies that Apple is slow to adopt. If such standards become popular in Chrome, IE, and Mozilla — popular in such a way that it becomes obvious that iOS users are missing on something everyone else is enjoying — Apple will be forced to relent, because it will be obvious that it’s in their own self-interest to do so. And if these web technologies don’t catch on, and pressure from real-world widespread usage doesn’t weigh upon Apple, there’s nothing the web developer community can do about it.
I’m not saying that’s good or bad. It just is how it is.