Microsoft has unveiled an online sandbox where developers can experiment with unfinished web standards you won't find in its Internet Explorer browser.
After years of cold shouldering the web standards movement, Redmond has taken a very different approach with Internet Explorer 9, now available in beta. And with the introduction of its new sandbox, the company hopes to convince you that its promotion of web standards is more prudent than the approach favored by its rivals.
On Tuesday, Redmond introduced an "HTML5 Labs" site where the company offers prototypes of still-gestating web specifications from the W3C, IETF, ECMA, and other standards bodies. "These prototypes will help us have informed discussions with developer communities, and give implementation experience with the draft specifications that will generate feedback to improve the eventual standards," reads a blog post from Microsoft general manager of interoperability strategy Jean Paoli.
"It also lets us give the community some visibility on those specifications we consider interesting from a scenario point of view, but which are still not at the stage where we can consider them ready for official product support."
The site's first two prototypes cover the WebSockets spec, designed to simplify bi-directional, full-duplex communication between client and server over TCP, and the IndexedDB spec, for storing hefty amounts of structured data in the browser. Yes, Microsoft's new HTML5 Labs site tackles HTML5 in broadest sense. In other words, it's not limited to HTML5. We have Google, Apple, and countless others to thank for this rather ridiculous nomenclature.
The first two prototypes were chosen, Microsoft says, because they're "potentially very useful but currently unstable." But it's hardly a coincidence that problems with WebSockets recently forced some backtracking from two of Microsof rivals.
Google, Mozilla, Opera, and Apple have all rolled WebSockets into various versions of their web browsers, but earlier this month, Mozilla and Opera put their WebSockets plans on hold after a security flaw was found in the unfinished spec. "The recent browser technology kerfuffle around WebSockets offers a clear example of the problem that developers and consumers will face again and again over support for emerging standards," IE head honcho Dean Hachamovitch said in another blog post.
"With many HTML5 technologies still under active development, our approach is to give developers better choices and avoid false dichotomies around standards support. The IE9 browser has site-ready HTML5 support that developers and consumers can depend on. We will also offer developers 'HTML5 Labs' for more experimental technologies still under development. By clearly separating prototype implementations from mainstream browser product ones, we can avoid many negative consequences."
As Microsoft is increasing fond of doing, Hachamovitch does indeed spend a fair amount of time trying to pick apart the competition. At one point, he quotes a Google employee working on WebSockets as saying "the best strategy is to just keep breaking people."
So, Microsoft's new site is a PR exercise. But clearly, it reflects Redmond's long-standing desire to ensure that Internet Explorer is a completely stable platform that will work they way developers expect it to work. And Redmond is using the site to gather feedback from developers. "Please experiment with these prototypes and tell us and other working group participants whether the APIs are usable. We are making them available to help improve the final specifications," Paoli's post reads.
Obviously, Microsoft isn't averse to rolling unfinished specs into Internet Explorer. Many unfinished standards are already supported by the Internet Explorer 9 beta. But these are more mature than APIs like WebSockets. "In developing IE9, we considered how different specifications are still evolving at different rates. IE9 supports technologies that, while not always finished, are developed enough to avoid the problems that WebSockets illustrate today," Hachamovitch says.
"IE9 offers support for the most relevant, real-world web patterns that developers are using today as well as the HTML5 patterns we expect to become more mainstream. By relevant and real-world, we mean the technologies with the broadest impact for browser users." Internet Explorer 9 handles CSS, for instance, but not MathML.
Hachamovitch also reiterates that in embracing such standards, Microsoft wants to ensure that developers can use the same markup across third-party browsers. "By support, we mean providing developers a consistent programming model that enables the same mark-up. The goal is supporting great new capabilities, ideally in a way that interoperates or will interoperate soon across browsers."
Yes, that's Microsoft talking. Over the past several months, the company's approach to web standards has changed so much, it's even quoting from the most unexpected of sources. "[Our web standards] approach (along with its supporting points, like test suites and 'same markup' as a goal) has garnered strong support from developers," Hachamovitch says. "It’s also resulted in some surprising headlines over the last year, like 'Only Microsoft gets web standards' according to 'Mozilla man [who] blasts Apple and Google for HTML5 abuse.'"
That would be a headline from The Register. He even cites us. By name. ®