top | item 9113643

The birth of Microsoft's new web rendering engine

361 points| aaronbrethorst | 11 years ago |blogs.msdn.com

235 comments

order
[+] EdSharkey|11 years ago|reply
YES! 1-2-3-4, I declare a browser war!

Finally. This is the Microsoft I've been waiting for! No more rolling over and no defeatist talk of adopting WebKit or whatever. Microsoft is going to use its muscle and position to make a truly competitive browser.

We need more competition, and we need the default browser in Windows to be just as good as Chrome and Firefox.

Microsoft, I hope you pull every -ms- vendor flaggin', ring-0 kernel hookin', micro-optimizatin', site-specific D3D driver tweakin' trick in the book as you reach for parity. This is going to be so fun to watch.

[+] Throwaway90283|11 years ago|reply
I'd like to see some competition as well, but in my perspective, they're taking the wrong approach.

This entire project seems to be about improving compatibility with older websites, by adding more algorithms and layers to the rendering process. I don't believe everyone is using Firefox and Chrome because they have better compatibility than IE.

I think they should focus on cutting the fat, and making the lightest weight, fastest and standards compliant browser possible, with some popular third-party add-ons available, such as ad block. Or, leave IE11 as the default now for compatibility, and spin off a new browser called IE Lightning.

If people start to switch over, then more sites will be developed to work in IE Lightning.

In short, create a faster browser with a smaller memory footprint and ad block, get users, watch compatibility fix itself, then make this ship as the default browser in 5 years.

[+] melling|11 years ago|reply
We have a already have lot of competition. In fact, it's never been better: Chrome, Firefox, WebKit, Chromium, Opera. You can even get the source code for Firefox and Chrome and contribute. I'm glad Microsoft is making a better go at it, but honestly, Microsoft could have built a more compliant browser any time they wanted too.

https://html5test.com/results/desktop.html

[+] klenwell|11 years ago|reply
I upvoted this for sarcasm. But upon reflection I think maybe I missed the point.

I guess a lot of it hinges on your interpretation of the words "competitive" and "parity".

I'm hoping that it means the expression "IE issue" gradually becomes the exception rather than the norm.

[+] easytiger|11 years ago|reply
> Microsoft, I hope you pull every -ms- vendor flaggin', ring-0 kernel hookin', micro-optimizatin', site-specific D3D driver tweakin' trick in the book as you reach for parity. This is going to be so fun to watch.

Well that's great, but if I'm on Linux and OSX this is just a pain in the ass for devs to support YAWB

[+] engendered|11 years ago|reply
Microsoft is going to use its muscle and position to make a truly competitive browser.

Isn't this the line with each and every release of IE? Why is this different? Each prior version of IE was proclaimed some revolution of some sort.

EDIT: Downvotes? Really? I see the front page is starting to get curiously Microsoft heavy again.

We've heard the "this time it's different" argument with IE7, IE8, IE9, IE10, and now IE11. Each time some shill would declare "finally! This changes everything! Microsoft has the resources and know-how to beat everyone" And the world moved on.

[+] bsimpson|11 years ago|reply
Why the fuck did anyone ever think vendor prefixes are a good idea? If you want to prefix, prefix with versions.

I should be able to type `-beta-mask-image: url()` and any browser that implements that version of the spec can pick it up. There's no good reason to have to type the same exact thing 3 times to target each browser engine.

[+] akrymski|11 years ago|reply
Yes and no - our lives would be much easier if we could just assume that every user runs a WebKit fork. From testing to development, it would be enable devs to push apps to the limit without testing across multiple platforms. And I'm sure adding those vendor-specific extensions to a WebKit fork is also do-able. Since WebKit is open-source, I'd prefer to see companies put in more effort in enhancing its performance instead of developing new proprietary rendering engines (unless they are 10x better of course).
[+] madaxe_again|11 years ago|reply
Yes! Because trident wasn't different to WebKit and they definitely worked hard to make it superior!

Wait, no, this is Microsoft we're talking about, and they'll use their monopoly to force everyone to have the "new IE", and they'll break the web, again.

Honestly, I don't know why you think they'd do anything different. They've managed one release of IE that was actually innovative and good for its time - IE4.

I have little faith that they won't just produce some xslt spewing horror show that only works with drm monitors and complains if the backend isn't .net.

[+] FreakyT|11 years ago|reply
I'm glad to see that Microsoft is finally ripping out all the weird legacy modes -- IE11 essentially ships with 6 different rendering engines! [1]

* IE5 (quirks mode)

* IE7 (compatibility view)

* IE8, IE9, and IE10 (available from the x-ua-compatible meta tag)

* IE11's actual rendering engine

As an aside, the hilariously long user-agent string is perhaps the best evidence that string-based browser detection is something that web devs should avoid at all costs. It manages to include "Safari", "Chrome", "AppleWebKit", "KHTML", "Mozilla", and "Gecko".

[1] https://msdn.microsoft.com/en-us/library/dn321432.aspx

[+] doppel|11 years ago|reply
I really really hope Microsoft adopts the strategy from competing browsers:

- Make one version of Spartan and keep it AUTO-UPDATED, instead of shipping a new version every couple of years that is, more or less, completely decoupled from the previous version.

- Decouple the browser from the operating system. I don't really care if they make it cross-platform (though it would be nice), but if the browser stops updating unless you upgrade to the next version of Windows you WILL end up with legacy sites again and again that cater to a specific version, and then we can start over and just replace every rant against IE 6-7-8 with Spartan 1-2-3.

[+] Mahn|11 years ago|reply
> Make one version of Spartan and keep it AUTO-UPDATED, instead of shipping a new version every couple of years that is, more or less, completely decoupled from the previous version.

This is what IE 11 currently does, so I would imagine they will continue doing so with Project Spartan.

[+] thecatspaw|11 years ago|reply
cross-platform would be awesome. Would make it so much easier to develop for Microsoft's browser while not using Windows.
[+] adrusi|11 years ago|reply
But it will still be non-free, and probably won't sync history/bookmarks/open tabs with mobile, except perhaps windows phone. And it only works on windows.

I don't see what would entice users to switch from Firefox or chromium or opera (or midori, konqueror, etc) to a new Microsoft browser.

Its probably still worth telling users not to use internet explorer, just in case they ever end up buying a Mac or Linux PC, and out of principle to support free software.

Its good to see competition, but I theorize that this will hurt Mozilla and benefit Google and Microsoft. The quality of chrome has been stagnating recently due to its large market share, while Firefox has been steadily advancing (because Mozilla's primary agenda is to move the web forward). Users have started a slow migration back to Firefox, which I love. A good internet explorer, paired with effective marketing, could threaten chrome and force google to get their act together, ending the Firefox rennaissance.

But realistically I don't see Microsoft marketing this effectively, and internet explorers reputation as a piece of crap will haunt it for years to come.

[+] johnkchow|11 years ago|reply
This interoperability-focused approach brought the obvious question of adopting an existing open-source rendering engine such as WebKit. While there were some advantages, upon further investigation it was not the right path forward for two important reasons. First, the Web is built on the principle of multiple independent, yet interoperable implementations of Web standards and we felt it was important to counter movement towards a monoculture on the Web. Second, given the engineering effort required, we found that we could deliver an interoperability focused engine to customers significantly faster if we started from our own engine (especially if unshackled from legacy compatibility concerns), rather than building up a new browser around an open-source engine. 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.

This is a powerful paragraph from the article. I'm all for competition, and if they actually produce the next great browser, that'll just mean better browsers overall (and probably even better tooling for us devs). I'm a bit skeptical whether they can pull it off, but at least I have a good feeling that they're out to prove us all wrong.

[+] cromwellian|11 years ago|reply
(general reply to some of the negative comments in this thread)

When someone is taking the right steps, I think they should be praised. Whatever bad feelings about Microsoft people have, they seem to be a newly revitalized company of late, are implementing cultural changes the way they interact with other ecosystems, and are shipping more open source, and seem to be playing well with others.

We should reward good deeds, not punish them.

[+] hyperbovine|11 years ago|reply
> Finally. This is the Microsoft I've been waiting for! ... Microsoft is going to use its muscle and position to make a truly competitive browser.

Oh-ho man, what I wouldn't give to teleport this comment back to 1997 or so...

[+] 72deluxe|11 years ago|reply
Haha very true. It reminds me of the time Apple announced that Internet Explorer was going to be the browser for classic Mac OS, with Bill Gates calling in, to shouts of NO!!! NO!!!!! NO!!!!

It makes me chuckle. It always boggles the mind that the web is mostly just rendering of documents and flinging backwards and forwards of requests, yet the passion it invokes with browser wars and web developers. A browser is essentially a HTML Help File viewer yet you get followings and wars! It doesn't make sense.

Even less sense is made when they reinvent all application features in a web browser to make web pages behave like desktop applications. Kind of useful, but an incessant broken/fix/reimplement cycle

[+] WalterBright|11 years ago|reply
I hope those 9,000 sites include github. IE hangs when confronted with a github display of a PR that has more than 1000 lines of diff's.
[+] kibwen|11 years ago|reply

  > the new engine began as a fork of MSHTML.dll but has 
  > since diverged very quickly
Curiously, this means that Spartan will still be able to trace its lineage back to 1992's NCSA Mosiac (in contrast to Mozilla's Servo, which is a greenfield project). I expect that it will be fascinating to compare the two projects as each matures.
[+] ethomson|11 years ago|reply
To be pedantic: even if there is code from MSHTML.dll in Spartan, there's no code from NCSA Mosaic in MSHTML.dll. Internet Explorer originally licensed Spyglass Mosaic, which licensed the name (and the code) from NCSA, but did not actually use any of the code. Though I suspect that there's not actually any Spyglass Mosaic code left in IE these days.

(Edited, I said that there's no MSHTML.dll code in Spartan. That I do believe exists.)

(Source: http://ericsink.com/Browser_Wars.html)

[+] BarkMore|11 years ago|reply
IE's HTML rendering code was completely replaced with the Trident rendering engine in IE 4. Trident did not use or derive from Mosaic code.
[+] Someone1234|11 years ago|reply
I feel like the "A new Web rendering engine is born" section covers quite honestly why they have chosen to fork IE. It seems, to me, to be pretty frank and doesn't contain much "doublespeak."

PS - This was originally a reply to a comment which got removed.

[+] Gravityloss|11 years ago|reply
Is it just me or is there some kind of an air of sadness about the video?

I like that they have real developers and not pr people talking about the product, and I don't like fake positivity. I guess it's impossible to please people like me, if you're Microsoft.

[+] joosters|11 years ago|reply
Will there be any useful privacy options in this new browser?

e.g. will the cookie options be something more than a global allow/disallow all cookies?

Will it offer a way to control/block/clear other client-side data, like flash cookies, local storage and so on?

[+] amelius|11 years ago|reply
I'm just amazed that they had to figure out that the "long tail" matters. It seems so obvious. It is almost like the owner of a hardware store coming to the conclusion that his customers want more than just a swiss army tool.
[+] jonathansampson|11 years ago|reply
@IEDevChat on twitter is now (and for the next two hours) answering questions regarding Internet Explorer and Project Spartan. Just ask your question(s) with the hashtag #AskIE.
[+] leeoniya|11 years ago|reply
"Fixing patterns instead of sites"

I don't understand this statement

[+] taf2|11 years ago|reply
When MS decides to release an open source rendering engine - we can start taking them seriously... until then they're never going to be worth taking seriously.
[+] mtrpcic|11 years ago|reply
Releasing a rendering engine is what it takes, but releasing the entire .NET core isn't good enough?
[+] mattdesl|11 years ago|reply
For add-ons and DevTools plugins: it would be cool to have AtomIO style architecture. Easy to install, easy to develop for, easy to publish to npm, and written in pure JavaScript. IMHO it would quickly propel Spartan to the forefront of the developer community and would really help move the web forward.[1]

[1] http://mattdesl.svbtle.com/motion-graphics

[+] touristtam|11 years ago|reply
Now if they could just force this new web browser onto every single Windows XP and later installation out there, so we could get ride of the horrendous amount of IE version < 11 still in use, I would see this in a positive light. The only way I am using IE at the moment if for corporate website that are engulfed in MSFT technologies.
[+] q2|11 years ago|reply
>>> This is an ambitious goal given that the Web consists of over 44 billion Web sites

This is not the number of "web sites" but number of "web pages" [1].

[1] http://www.worldwidewebsize.com/

[+] edoloughlin|11 years ago|reply
we felt it was important to counter movement towards a monoculture on the Web

Am I alone in wishing there was an actual monoculture on the web? Where you could spend time making your app/site more functional instead of more compatible?