Microsoft Blinks on Using Open Source Engine for Spartan Browser
Microsoft's Internet Explorer team explained today why they didn't use an open source rendering engine with the company's new Spartan Web browser, which is currently under development.
The Internet Explorer team rejected using the open source WebKit rendering engine in Spartan for two reasons. First, it was a practical decision, they said. The team thought they could deliver browser improvements faster by just sticking with Microsoft's proprietary Trident engine. Next, Microsoft did not adopt WebKit because "we felt it was important to counter movement towards a monoculture on the Web."
Possibly, the "monoculture" being referred to is the Blink rendering engine, which is used by Google's Chrome browser and Opera Software's Opera browser. Blink is a variant of WebKit, which is used in Apple's Safari browser. All told, three of the top four Web browsers are based on WebKit or its Blink variant.
Blink came to be in the first place because Google found that its Chromium browser architecture was bringing complexity back into the WebKit project, the company has explained. The Opera browser switched to using Blink back in 2013, although it previously had used the proprietary Presto engine. Mozilla's Firefox browser uses a different open source rendering engine called "Gecko."
Microsoft decided to fork the Trident code with the advent of Spartan, the new Web browser planned for release with Windows 10. Microsoft's new operating system also will include Internet Explorer as well, perhaps to address the needs of organizations. Spartan has a new Trident rendering engine, called "EdgeHTML." The EdgeHTML engine drops support for a lot of legacy code that was important to past Internet Explorer browsers. Spartan also will include the old Trident engine, called "MSHTML," which will be retained as a fallback measure to address legacy code concerns.
Even though Microsoft is sticking with its proprietary Trident engine for now, the idea of using an open source engine isn't out of consideration.
"We will continue to look at open source and shared source models where it makes sense and look forward to sharing more details in coming posts," the team wrote.
The team explained a bit more about why it decided to forge new ground with Spartan. Microsoft's past efforts to engineer IE were based on a "don't break the Web" approach, which involved sampling IE's compatibility across the top 9,000 Web sites. That approach tended to ignore user experiences on less visited sites, Microsoft found, which skewed its test results. In addition, Microsoft came to the conclusion that its measures taken to enable IE compatibility, such as document compatibility modes, the compatibility view list and the X-UA-Compatible string, weren't adequate.
Consequently, the team decided to start anew with Spartan. The Trident engine was forked to create a more lightweight browser, while maintaining legacy support.
Part of Microsoft's reason for breaking ground with Spartan was to emphasize its support for Web standards. Microsoft also wanted to disassociate itself from the "quirks" associated with past IE releases that developers have tended to rue over the years, according to explanations by Jacob Rossi, a senior engineer on the Microsoft Web platform team. Spartan will drop support for document modes, X-UA-Compatible strings, VBScript, currentStyle and attachEvent legacy coding and will come with a "new user agent string," he previously explained.
The team previously offered a few tidbits about Spartan. Here's what they described:
- Spartan will have an extensions capability, allowing applets to run with the browser
- Spartan will be constantly updated, perhaps coinciding with Windows 10 as a service deliveries
- Spartan is being developed for Windows 10 and won't be a cross-platform release, but Microsoft will assess demand for it on Windows 7
- Spartan will be the default browser on Windows 10 for consumers, but IE can be enabled if wanted
- Legacy support in Spartan will be enabled by Microsoft's Enterprise Mode technology
The Spartan browser hasn't been released in Microsoft's Windows 10 preview builds yet, but the new Trident rendering engine is still present in the IE browser that's associated with the Windows 10 preview. It can be tested by turning on the experimental Web features in the OS or using Microsoft's RemoteIE browser as a service.
Kurt Mackie is senior news producer for the 1105 Enterprise Computing Group.