Ashley Sheridan​.co.uk

The Problems with Microsoft Dropping Edge

Posted on

If you're a web developer, then it shouldn't be a shock now to find out that Microsoft is planning on ditching their Edge browser in favour of a new one based on the open-source Chromium project (not to be confused with the related but closed-source Chrome browser.) This will see Microsoft dropping their EdgeHTML engine in lieu of the Blink engine.

The Initial Reaction

On the face of it, this is a good thing. For well over a decade developers have been bemoaning the extra effort required to get IE, and most recently, Edge to play ball and display their beautiful websites as they intended. It's certainly something I've experienced personally, and has meant I've had to put in almost as much time to fix weird IE issues as I spent building the thing using standards compliant code in the first place for some projects.

Distribution of time spent writing CSS - setting defaults, styling forms, testing compliant browsers, and 75% fixing Internet Explorer bugs

Perusing Twitter it's almost all positive comments regarding this change of direction. People are mentioning the benefit of stability because the rendering engine is tried and tested. In-fact, there were hardly any comments regarding this move by Microsoft as a negative. Only one was the obvious RAM usage, which I think is a reasonable concern given the way that Chrome consumes memory. It's the very reason for jokes such as these:

Comic strip joking about Chrome eating RAM and not sharing it with other applications

The Other Negatives

One other aspect of this which seems to have been given little thought (at least it seems in the comments I've read) is the lack of diversity this change in direction will bring. Jakub Synowiec tweeted his concern about this, and I think he's quite right to do so.

Much like the time that Opera decided to drop its own Presto engine and use Blink instead, Microsoft is decreasing the diversity in the browser market. This time though, the impact will be larger, as Edge has a greater (albeit only slightly greater) market share than Opera. Looking at the current stats, this would put Blink-based browsers at over 70% of the global market share. This is assuming that Microsoft will treat Anaheim in the same way as Edge regarding their updates, and that Anaheim will just silently replace it as their browser of choice.

Why is This a Problem?

If you're a developer who's been in the game long enough to remember the bad old days of IE 6 then you should find the problem obvious. For those that don't remember those times because you weren't around (or you successfully managed to get blind drunk enough and forget everything about that browser, and who could blame you?!) the problem is this: if a single browser (or rendering engine in this case) reaches a point of major monopoly, then there's no competition to drive forward innovation.

Return of the Browser (Engine) Monopoly

This could ultimately result in a period of stagnation which happened with IE6. After that was initially released, there was a 7 year gap before release of IE7. 7 years! These days we would consider a 7-month gap to be lengthy for most mainstream browser updates.

Now, that was 7 years of effectively a single browser (Netscape Navigator had too small a market share to be much competition), that had no rolling or regular updates to it, and no new features. Luckily, that was in a time where home Internet access was slow if it was even available, so the total number of people using it was a far lower number than it is currently. Today, Internet access at home is almost an essential requirement, and browser updates are frequent, adding features all the time. People are using their browsers all the time, and they expect websites to always be pushing the cutting edge features.

But, without healthy competition amongst browsers, will the current pace of innovation still be maintained? Will the quality of the new capabilities be at the same level? In economics, the disadvantages of a monopoly almost always outweigh the advantages, and it's why so many countries have specific laws in place to counter the issues created by a monopoly.

Blink browser engine monopoly

With Edge now being dropped, that hold over the browser market share by a single rendering engine (not to be confused with the browser itself, of which there are thankfully still many) is only increasing.

Optimised for Chrome

There's a secondary side-effect of all of this too; that developers will become lazy. You can see signs of it today if you have a look across some of the "pens" on CodePen. A worrying proportion of them are written to only work on Chrome, and a lot of the functionality will actually not work on IE, Edge, or Firefox. Sure, they are only meant to be simple demonstrations of a technique, but when the pen is using a `-webkit` specific CSS prefix and not the vanilla property, it's deliberately targeting Chrome and its ilk, and deliberately ignoring browsers that have correct support.

Optimised for Chrome in the style of a 90's Web banner

It's not unreasonable to assume that this developer behaviour will continue over time, and even increase as the engines they need to target shrinks. There is also a danger that those same developers will just leave prefixed-only code in production releases, and never bother testing much else because "every browser is using Blink now".

The Benefits

It's not all doom and gloom. There are some definite good sides to this move. From a web developer standpoint, we can spend less of our time (eventually) ensuring our creations work on every browser, as there are effectively less variables to test for. As well as that, Blink has a tendency to implement new features before they make the official spec, which is quite a draw for developers who want to play with cutting edge functionality. This could actually speed up the adoption of new stuff across the Web.

Benefits Behind the Scenes

From Microsoft's perspective, they can now put more focus on creating a great browser, and not spend their time creating a custom rendering engine. This will likely mean a more polished browser under Anaheim, which could mean more features for the users.

It may well be that they do spend some of their development time working on Blink and Chromium, which is a good thing, and would be in-line with their recent efforts to embrace and contribute to open source. This could mean more features and delivered sooner than we're getting right now, even though today's pace is brilliant already.

Conclusion

I'm still in two minds about this decision. As a web developer who's endured years of pain dealing with bugs from Microsoft's browsers, this comes as a great piece of news. This is a change that will benefit developers.

However, as a developer who's seen what happens when there is a software monopoly (not just in the browser-space, but across many aspects of software), I am apprehensive about what this might ultimately mean for the industry. There's certainly a fear that this is history repeating itself.