Collective action and old IE

As of January 12, 2016, Microsoft no longer supports Internet Explorer 8, 9 and 10. From here on out, they will only provide security fixes for IE 11 and Edge.

For many front-end developers, this was a cause for celebration: we no longer need to provide fallbacks for browser features not supported in old IE! Being able to use Flexbox without float fallbacks comes to mind, as does not needing to worry about media query support in IE 8.

Others have rightly pointed out that just because Microsoft no longer provides security updates for IE 8, 9 and 10, that doesn't mean those browsers will no longer be used.

For those still using Windows XP, IE 9 is the most recent version of Internet Explorer available: IE 11 and Edge aren't options. Those with older computers in their homes could use Firefox or Chrome, sure, but downloading and installing a new browser is not a task that is easy or obvious to everyone.

Large organizations are also a source for old IE usage. Often an internal web tool highly customized to a particular version of Internet Explorer can hold back an organization from upgrading to newer versions of IE. Again, organizations that still have XP boxes may also face challenges in upgrading. The removal of security patches is likely to be a large motivator for IT departments to upgrade to current versions of IE, or if necessary alternative browsers, but that still might not happen immediately.

So yes, old IE users will not vanish overnight. What percentage of your user base has old IE for a browser? What effect would it have for your site if those users reduce or stop using your site because it looks broken? Particularly if they have alternatives where their versions of IE are supported?

Dropping old IE when working on client sites would certainly make front-end development easier, but what is the business impact of the decision?

Here's the rub. The web would probably be a better place if all those using old IE stopped doing so.

Over time, security holes will likely be found that will make using old IE inherently dangerous. Part of what makes it feasible to use old IE is visiting site after site on the web that still looks and functions properly. In theory, if everybody stopped providing fallbacks for older versions of IE (8, 9 and 10), the web would look more and more broken for those using those browsers. That would be a powerful incentive to upgrade to newer, more secure browsers. Having more people on the web using secure browsers is presumably a Good Thing.

This is a classic collective action problem. The web might be more secure if we all stopped providing fallbacks for old IE, but for an individual site, removing fallbacks might have harmful effects. An action harmful for an individual could be beneficial for all.

This is not an easy problem to solve, and I do not have easy answers.

One of my core beliefs is that we should do what we can to make the web great for everyone. No matter which browser or device somebody uses, no matter if they need assistive devices, use a mouse or a touchscreen, we should do what we can to make the web great.

Does making the web great mean that an individual has a solid experience accessing the content of a site and using it? What if the act of doing so means they are more comfortable using an older browser and thus more at risk for security problems? Is it my role to be concerned with playing a part in putting their computer security at risk?

The answer that comes to mind is that if removing support for old IE might not cause harmful business effects, consider doing so. If you have a non-monetized blog or a site with a small old IE user base, perhaps consider removing fallbacks. As old IE usage dwindles, it becomes more and more justified to reduce fallbacks.

For client work, budgets are not unlimited. Time spent testing and fixing bugs for old IE has a real cost. That cost is much less than when IE 6 and 7 needed to be supported, but that time still has an effect on project budgets. When project launch nears, supporting old IE may mean reducing scope for other wanted features. For what it's worth, I often have as many bug fixes needed for mobile Safari as for old IE, if not more, so removing old IE support does not mean the elimination of all browser bug fixes.

As contracts are drawn up for new projects, take a look at the project and its userbase. Could you safely state you will support IE 11 and Edge and new versions of evergreen browsers?

Ultimately what will make front-end development easier (in terms of using newer features without fallbacks or polyfills) is when all browsers move to an evergreen model, like Chrome and Firefox and Edge with frequent releases (every six weeks or so). IE 11 is pretty good in terms of browser feature parity right now, but over time it will fall behind. Safari tends to introduce support for new features during iOS/OS X major updates. Recently they announced support for some new browser features mid-cycle, so hopefully we will see more updates like that more frequently.

In the meantime, deciding which fallbacks and polyfills are necessary is a hard one. Best of luck.