It really does not matter which of the major browsers people are using, if they are using an outdated version. The main problem is not IE, but the version people are running or you are testing with. We need to stop blaming Internet Explorer (me included) and concentrate our energy in something else. Believe or not, IE has a great part in the history of the web as we know it. A lot of people in the community ignore the following points about IE.
Internet Explorer Did Innovate
The resurrection of the Web and how we build Web Applications started with the famous article About Ajax by Jesse James Garrett in 2005. Ajax was a big step towards building web applications that could behave like desktop applications. Using Ajax, we can update part of the page without having to reload the whole document. I believe that you know this, but most of the developers ignore the fact that Internet Explorer was the first browser to implement (they created it) the XMLHttpRequest object, which is the one that makes the magic of Ajax happen. In fact, the object was implemented several years before the 2005 article by Jesse James. The first “XMLHttpRequest” object was created and implemented for the Outlook Web Access, and years later implemented by the rest of web browser at the time.
Even IE6, at the time it came out, was the browser that supported the standards the most. The biggest problem with the browser is that Microsoft won the first browser’s war and forgot about updating their browser for years until it was too late. But, the majority of problems and nightmares that developers complaint about is IE6, which is outdated and antiquated. If you have to support this browser, I feel sorry for you as much as if you had to support any 10+ years old browser. Right now, the fault is not IE6, IE7, or IE8 but the application that you are building and the enterprise you work for that does not allow to update to a modern browser. A long time ago, Microsoft also created a page advising to upgrade your browser to a newer version of IE; so at this point in time, dealing with IE6 is not Microsoft’s fault.
Microsoft team is also involved closely like any other vendor in the development of the standards. For instance, the Pointer Events that just got into recommendation by the W3C, was proposed by Microsoft several years ago. So, that proves that they are working hard in innovate and make the Web a better place. The only problem is that Microsoft and its team are not as “cool” as Apple or Google. Just look at features by Internet Explore for scrolling and zooming that don’t get any attention on the community just because it is Internet Explorer, and “we hate it!”.
Microsoft is Trying to Get It Right and It is Getting It
After long years of sleeping on Internet Explorer development, Microsoft decided to step up and continue competing in the browser market. They even had created tools and encouraged developers to use the latests standards and ease the development and testing on Internet Explorer. Their latests version of the IE is almost as completed as the other browsers; however, it is still the joke of developers that had past experiences. That forced the Microsoft to work on a brand new browser as an attempt to change the damaged relationship of developers and designers towards Internet Explorer and Microsoft.
Another big step of Microsoft is hiring a well known and respected developers that will help them to “get it right”. Guys like Aaron Gustafson and Christian Heilmann for sure will help Microsoft to change the perception of their browser and the company. In addition, they have a very interesting and educational blog that you should read if you are working on the development and design field.
In Part It Is Our Fault
Some of the biggest problems of Internet Explorer are caused because the browser needs to be backwards compatible, so it does not break any application, especially in the enterprise. Those enterprise applications holding back IE having to support IE-only features were built by developers. So, in part it is our fault for making use of ActiveX controls without investigating or considering cross-browser and standard alternatives.
We Should Support IE Anyway
At the end of the day, everything comes down to the users. Internet Explorer still has a large market share to be ignored. Thus, let’s get to work and try to build a cross browser application or website. If you decide to avoid supporting IE, you are creating the same problem we had in the end of the 90’s when almost every page had “This page is better viewed with…”. That way of thinking killed Presto, a very good browser engine used by Opera. Developers and designers insisted on using webkit prefixes in their application, ignoring the prefixes implemented by others browsers including Opera. This caused problems that modern web application did not behave, and looks as expected because they were only tested on webkit based browsers. So, Opera decided to replace their engine with Blink to support webkit prefixes by default and not break any website.
I wrote this post using a laptop running Linux (ElementaryOS in case you are interested) so before you call me fan boy, please don’t.
Internet Explorer is not as bad as most designers try to make it look like and most of the problems are based on older versions of the browser, which could be applied to any other browser vendor. So, let’s develop websites that are cross browser and supported by all major browsers as our job as web developers require it. It is not our job to decide what browser is cool or not; we have to provide an accessible and working website to all users because cross browser development is as or more important that even a responsive design.