Why we should finally boycott Internet Explorer (and all Microsoft's browsers)

Nowadays Microsoft’s web browser Internet Explorer usage has reduced dramatically. The main reason to this is that they haven’t respected the W3C standards, trying to build a monopoly. Now that they’ve lost this battle, they should pay for their past negative behavior and strategy. Explanations.

A bit of history

It starts with a monopoly

In the early Internet days, there has been a time where everybody was using the same browser : until January 2004 85% of the web was browsed by Internet Explorer. At that time, browser compatibility was not much of a concern.

If it works on Internet Explorer, it’s OK

Regarding the standards, HTML4 was out since half a decade and many people were talking about what was coming next: HTML5. So many great things would then be available in the browser : video (without flash), CSS3 with its rounded corners, transparency, native transition effects etc.

From a web developer perspective, it was very exciting. We all were impatiently waiting for the green light to have using those functionalities available. But in reality, it felt more like a dream than something that was actually going to happen: the missing piece was browser compatibility. Why is that?

Because Internet Explorer controlled 85% of the traffic over the web, they had no rush in integrating those new standards into their browser. Instead started to build their own tools, to increase dependency on their own technologies. Why bother after all?

HTML5 Feature Test

But eventually, the monopoly took an end. It did not happen in a day though.

First Mozilla (which later became Firefox) appeared. Brand new, super cool, in five years, their number of users increased continuously, eating over Internet Explorer until taking it over: when the first version of Chrome got released, in the beginning of 2009, IE was 44.8% of the web, and Firefox 45.5%.

Thanks to the enormous work of Mozilla, and W3C, they’d managed to:

  • make users install a browser, instead of using the default installed one
  • define standards to the web, make HTML5 feature progressively usable
  • create a better experience than using Internet Explorer

Then the norm moves

In 5 years, the deal changed from building IE- to W3C-compatible-websites. But because it was not possible to exclude 44% of the internet traffic, developers still had to make it Internet Explorer compatible. That’s when tags like those appeard:

<!-- Target ALL VERSIONS of IE -->
<!--[if IE]>
  <link rel="stylesheet" type="text/css" href="all-ie-only.css" />
<![endif]-->

<!-- Target everything EXCEPT IE -->
<!--[if !IE]><!-->
  <link rel="stylesheet" type="text/css" href="not-ie.css" />
 <!--<![endif]-->

<!-- Target IE 6 ONLY -->
<!--[if IE 6]>
  <link rel="stylesheet" type="text/css" href="ie6.css" />
<![endif]-->

Do you realize how hacky and dirty this is?

Personally, I always got surprised about those conditional tags, because they symbolize the whole shame of what has always been Microsoft doing to the web: ignoring the standards, acting on its own side.

But something intriguates me even more, it is that they built this tag themselves. The only reason I can find to explain that some engineers at Microsoft said “Ok let’s write some code that will emphasize that our software doesn’t work the way it should” is that there was a amazing confusion in their teams at that time.

Quite some hate started to appear toward IE, with reason. Among them:

IE Fear

Until a complete decline

Eventually, Chrome arrived and took over the market.

But they did it much more subtly than IE. First they finance Firefox up to 85%, second, they integrate, not to say they bootstrap every new web feature, and lastly, they have open-sourced most of their code, which can be used in the 100% open-source web browser Chromium, Chrome’s little brother.

And now what?

Something is clear: Internet Explorer LOST. They now share as little as 8% of the whole web traffic. It means even if it is necessary, you’d consider it two times before implementing a <if IE> tag on your website, simply because development costs can be higher than actual benefit. Also many famous libraries dropped older IE versions compatibility.

Great, a victory for the standards and the openness, two core values of the web itself. But should we stay here?

My answer is definitely NO. I think now we should boycott Internet Explorer and every upcoming Microsoft browser, to make them pay for not having respected the web standards.

I don’t want to go into dubious budget calculation, but I can affirm that writing all those IE-specific lines of code during all those years has been a wonderful slow down to newness and innovation, not to mention all the time, money and energy lost.

Time Lost

If I were to say it to Microsoft, it would be:

Microsoft, leave the web to those who know how to make it, focus on your I-don’t-want-to-talk-about-it-here OS and the whole CS industry will be better.

If you do agree with what I am saying, and you ever happen to build a website, I encourage you to add those lines to the bottom of every web-page:

  <!--[if IE]>
    <script type="text/javascript" src="https://cdn.rawgit.com/aug-riedinger/ie-boycott/master/ie-boycott.min.js" async></script>
  <![endif]-->

which will add the following to your web-page if the user is browsing with IE:

IE Boycott Image Overlay

The code is available on Github. Feel free to contribute or make a feedback.