A Developer’s View on Microsoft Edge

| by Abel Avram Follow 12 Followers on May 08, 2015. Estimated reading time: 3 minutes |

Microsoft Edge started as a IE fork but later departed considerably from it in an attempt to break with the past and legacy Internet technologies, removing 200K LoC but adding other 300K. Microsoft says they want “better interoperability with other modern browsers, improved performance, security & reliability, and reduced code complexity.”

Edge will run on all Windows devices with different form factors and input types, mouse, touch and pen. While IE11 will be included in Windows 10 for legacy purposes, the main browser will be Edge. Microsoft recommends developers to target only Edge for new projects.

There are two Chakra binaries now: the old one (jscript9.dll) provides backwards compatibility for enterprise applications, and the new one (chakra.dll) will provide interoperability from this point onwards, eliminating document modes and MS-specific extensions, ever green being supported by regular updates, and promises to be faster and follow web standards.

EdgeHTML is the new rendering engine, having started as a fork of Trident but moving away from it. Trident development is stopped, and only security fixes and major reliability issues will be addressed.

Edge won’t support plug-ins other than a built-in PDF reader and Flash which will be updated through the Windows Update mechanism. In other words, no Silverlight, no Java. Also, no ActiveX, Browser Helper Objects, VML, VBScript, IE8 layout, DirectX Filters nor Transitions.

The following extensibility points will be replaced with modern ones: Pluggable Protocols, Shell Helper API, Active Documents, Custom Download Managers, Custom Security Managers, MIME Filters, Custom Print Handlers, Explorer Bars, Custom Context Menus (via registry), Timers, Accelerators, and others. Over 200 APIs have been removed, some related to vendor prefixes which are no longer supported by Microsoft, except for some legacy cases. Microsoft is in talks with other browser vendors to introduce experimental APIs as a solution for testing the waters with new features until they become standards, at which point they are implemented by all browsers. This would eliminate the need for vendor prefixes. More details can be found out from this Web Compatibility Summit 2015 video (min. 31).

Edge has implemented a number of ES6 features, including: Classes, Numeric Literals, Math, Number, Object, RegExp and String Built-ins, Promises, __proto__, and Proxies. A number of features are under consideration: Modules and Subclassing.

Asm.js has been one of the top 10 features requested by developers and expressed through the Edge User Voice group. And Microsoft added support for Asm.js in Chakra starting with build 10074 of Windows 10 Insider Preview. Because of Asm.js, Edge is 3 times faster on Unity Benchmark and twice as fast on a zlib test compared to IE11, according to Microsoft.

After the initial launch this summer, Microsoft plans to add other features to Edge, such as Object RTC, Pointer lock, more support for Cortana and extensions. There is little detail on the later other than they will be based on HTML and JS, but Microsoft showed the Reddit Enhancement Suite Chrome extension running on Edge, mentioning that it required minimal changes to make it run on their browser.

In terms of speed, Edge performs better than Chrome and Firefox on JetStream and Octane 2.0 benchmarks, according to Microsoft.

The Edge Status page shows the current status of ~45 features implemented, in development, or under investigation. The Edge Dev website is a good starting point for finding out more about this browser.

The RemoteIE site enables developers to test their website on the latest (dev channel) Edge running on Windows 10 Technical Preview for Enterprise. 

The Stack Overflow edge forum is dedicated to questions and answers on Microsoft’s browser.

Rate this Article

Adoption Stage

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

IE All Over Again by Beren Erchamion

If MS wants better interoperability, then why should "developers target Edge"? Shouldn't developers "target" HTML5/JS/CSS3 compatibility?

Re: IE All Over Again by Abel Avram

They say "target Edge and not IE8/9/10/11". And they promise Edge will be fully following the standards, which means it passes the W3C tests. Unless there is a bug, a site should work the same on Chrome and Edge.

Re: IE All Over Again by Cameron Purdy

Abel - So you're agreeing that developers should NOT target the Microsoft Edge browser? Just checking ...

Re: IE All Over Again by Abel Avram

Cameron - No, I say the contrary: Microsoft is making Edge THE Windows browser and urges developers to target it. IE will still be installed on Windows 10 but only for legacy purposes, for enterprises having important investments in it.

Re: IE All Over Again by Cameron Purdy

I suppose what I was asking is whether developers should target the HTML standards, or the Edge browser. Years ago, Microsoft encouraged developers to ignore the HTML standards and to target various broken IE versions instead, and now they are (correctly) regretting do, and trying to correct that, yes? If so, are they now encouraging developers to target HTML 5, and making improvements to Edge to support those standards-compliant applications, or are they asking developers to tailor those once-standards-compliant applications to be working only on Edge?

Re: IE All Over Again by Abel Avram

Microsoft say that with Edge they want to be fully abiding to the standards, HTML5, JS or other web standards to the point that Edge is interoperable with Chrome and Firefox, i.e. rendering the same pages in the same way.

Re: IE All Over Again by Noah Namey

I'll believe it when I see it.

What I would like to know is:
Why is it possible for 3rd parties to write superior web browsers that run on Windows without being tied to the hip to the OS?

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

7 Discuss