A case against Internet Explorer support in modern web projects

IE11 left official support years ago but is often still a requirement in modern web projects. Now, that Windows 7, the last operating system that shipped with IE11 as default browser has run out of support and the new Edge on Chromium is here, we should talk about finally ditching it.

 

TL;DR

IE support is uneconomic and mostly impractical. If we continue supporting Internet Explorer, we let one single browser stop innovation in the web.

 

Nobody is using it

At least almost nobody. According to StatCounter, only 1.59% of users worldwide are browsing the web with any version of Internet Explorer, 1.33% using IE11. Trend declining. To bring that to scale: The number of Internet Explorer users is lower than the number of people with low vision (3.65% according to WHO) and accessibility is frequently overlooked while IE support is most often a requirement in projects.

 

It has no support

IE11 has run out of support in 2016 and has gotten only critical security updates since then. That means if support for IE is a requirement in a project, no feature released after this date can be used. With faster progress in web technology every day, the unusable features become more and more. Because of this, in most modern websites, polyfills have to be included and ES6 code needs to be transpiled to ES5, both of which decrease performance for every user.

The word has also spread to big companies: More and more websites, including YouTube, GitHub , Spotify and WhatsApp, are dropping support for older browsers because maintenance cost is too high for the few users that would benefit from it. If these companies can drop support for it, everyone can.

As a side note, with only critical and very late security updates, IE becomes more and more insecure. With properly working websites, users see no reason to switch to an evergreen browser and therefore get encouraged to use insecure software.

 

It's a compatibility solution

„You see, Internet Explorer is a compatibility solution. We’re not supporting new web standards for it and, while many sites work fine, developers by and large just aren’t testing for Internet Explorer these days. They’re testing on modern browsers. So, if we continued our previous approach, you would end up in a scenario where, by optimizing for the things you have, you end up not being able to use new apps as they come out. As new apps are coming out with greater frequency, what we want to help you do is avoid having to miss out on a progressively larger portion of the web!“ – Chris Jackson, lead of cybersecurity at Microsoft

According to Microsoft, IE11 isn't even a proper browser by todays standards. It's simply a compatibility solution for internal websites that only work in IE. With the new Edge browser it will not even be necessary for this purpose anymore. Edge, which is now also available for Windows 7 and 8, comes with an IE mode that promises to function for every website working in IE11. The small niche where IE had a purpose is now gone.

 

Websites with IE11 support are worse

The most important point: Modern websites with IE11 support, especially JS-heavy web apps, are simply worse.

Hundreds of lines of polyfills have to be included, ES6 code has to be transpiled and you end up with huge bundle sizes, often multiples of the original size. This of course leads to much worse page load performance not only for IE users but for everyone. Some may say, that 1.56% more users justify slower loading for everyone but if we take a look at the increase in bounce rates (users that leave the site immediately) per second load time, the loss in users outweighs this by a large amount.

Moreover, many modern features, for example IntersectionObserver or MutationObserver cannot be used and have to be substituted with slower alternatives resulting in not only worse page load times but also unreactive interaction with the website.

 

Supporting IE takes huge effort

Not only the users of other browsers have to bear with Internet Explorer support, also developers and companies suffer under it. Through necessary polyfills and different implementations the effort and thus developing costs increase dramatically. IE needs tons of specific styles, sometimes whole layouts have to be changed or a completely new design process is necessary because they're not possible to implement.

This often leads to such high cost that companies would be better of dropping support and focusing more on the best possible user experience for their users.