Anybody who knows me professionally, knows that I despise Microsofts Internet Explorer web browser. What they probably don't know is why I despise it. Most people likely assume that because I'm a penguin, I'm also an Internet Explorer hater. The two do tend to go hand in hand. However nothing could be further from the truth. I use Linux a great deal on my own time, but professionally I tend to spend most of my time with Windows. I have a healthy respect for Microsoft products and techs such as Windows Server, IIS and .NET. This respect does not extend to Internet Explorer. The purpose of this post is to explain why that is.
To start, this post was at least partially inspired by the first public/beta release of Microsoft's new Spartan browser. Spartan has been getting heavily hyped over the last few months and with good reason. It represents a few major steps in the right direction for Microsoft. Spartan fixes a lot of the complaints people have made in regards to Internet Explorer, but it does not fix them all. Though it is a step in the right direction and for that Microsoft should be applauded. Nevertheless, it brings with it some of the same baggage that IE does.
Back to IE, where do I even begin? I've been developing web applications for 15 years now and half of that time has been spent suffering with the most infamous version of IE, 6.0. In early 2008 I told my current employer that I was no longer going to spend time trying to make IE 6.0 work with my latest apps and that upgrading to IE 7.0 should be their priority. Surprisingly enough this strategy actually worked though I suffered with IE 7.0 until January of 2013 when I left a position that was forcing me to continue writing code for that browser.
I say all this in an effort to point out that because of Microsofts position in the industry and their general approach to software, web developers like myself have been forced to live with their mistakes for a very long time. IE 6.0 took thirteen years to stop being supported by Microsoft. That's insane despite the fact that when it was released in 2001 it was heralded as a great piece of software. But after Microsoft sat on their laurels for a few years, competitors rose to fill the void and subsequently showed the world that the web browser could still be improved upon. Microsoft released IE 7.0 in 2006, a full five years later. It was woefully behind and unable to compete on most levels with the likes of Firefox. But it still won.
This of course brings me to my first complaint about Internet Explorer: It is perpetually behind the curve. Because of the sluggishness of Microsoft and their general inability to keep up with consumer facing technology trends IE still forces the rest of us to remain behind the curve in order to support the overwhelming majority of desktop and laptop users that still insist on using IE. No matter what Chrome and Firefox bring to the table in terms of standards support, web developers still have to deal with the likes of poly-fills and a variety of other unsavory hacks in order to support popular versions of IE such as version 9.0.
My second complaint about IE is the fact that it is still being tied to specific versions of Windows. I really have no understanding of why Microsoft chooses to do this in this day and age. It really is quite silly. But more than that it ties specific versions of IE to life cycle support commitments Microsoft has made for specific versions of Windows. These commitments are generous and generally last far longer than the commitments Microsofts competitors are willing to make. There are exceptions to this rule of course, but they are for niche products that bear very little relevance to the topic at hand. Nonetheless, IE being tied to specific versions of Windows is a primary reason why web developers like myself are always having to support much older versions of IE.
If you compare this situation to Chrome and Firefox, most web developers don't care about older versions of Chrome and Firefox. These browsers both auto-update and for the most part they do it without even bothering the user. If it is found that a user is in fact using an older version of one of these browsers, they are immediately asked to upgrade. On the other hand, web devs are still being forced to support IE 8 and IE 9 which were released in 2009 and 2011 respectively. In the age of modern tech, that's stunningly outdated.
Part of the motivation here is that Microsoft views IE as a feature that can drive the sales of Windows licenses. That's what they really care about. Sadly that's not working out so great for them. Windows is no longer the dominant OS in the modern world and IE is no longer the only game in town. If a new browser is the best feature your new OS has to offer, then the odds favor the idea that your new OS isn't worth the upgrade. No other browser is treated as an appendage that drives license sales for a specific version of an operating system. This approach has and continues to severely hamper Microsoft's ability to compete in the browser market.
Those are my two primary complaints regarding IE. Now lets be honest, just a few short years ago this list would've been a lot longer. Microsoft has taken steps to close the gap that exists between them and their competition. However Spartan doesn't really address either of these issues. Sure Spartan users will finally get support for extensions, a feature Chrome and Firefox users have enjoyed for God only knows how long but all this really does is prove my point. They are perpetually behind the curve. Extension support is something that makes or breaks my decision to use a particular browser. Without the right extensions, I have no interest in a particular browser. Therefore I have no interest in IE as an end user. Spartan on the other hand... well there is no Linux port at the moment so I cannot upgrade to it ;)
Spartan also continues the unsavory trend of tying Microsoft browsers to specific versions of Windows. This practice will continue to insure that the web development community will be forced to support old versions of IE long after Microsoft has stopped pimping them out to the unwitting masses. No matter what Spartan adds as a web developer, I am really only interested in what IE 9.0 has to offer because that is the minimum version that I have to support. This is sad and ultimately detracts from any headway that Microsoft makes in this area. One can only hope that they will address this issue at some point, thereby paving the way for IE/Spartan to become a first class citizen in the browser community.