Tuesday, July 27, 2010

To Death with Internet Explorer 6/7

As a developer, I am often plagued with one simple question: how will this page look in IE6/7? The answer is, being several years after their initial releases, very simple: bad.

I'm an evolving developer, as most of you (if you are reading this) are. The web is a very transformative application development platform. Every two or three weeks, as it seems, something new is being done with the Web. With the advent of Web 2.0, the way that we design/develop Web applications has dramatically changed -- if not totally replaced -- the methods of yesteryear.

The truth of the matter is that major Web browser vendors (Microsoft excluded) have adhered their development techniques to include the feedback of we Web developers insofar as our individual feedback on how their implementation drastically (or in-drastically) affects our development process. They have, as companies, done the right thing in altering their development road-map to provide us with a more standardized way of creating and implementing a better user system.

The simple reality is, from the "John Doe"-user perspective, that user agents (AKA browsers) should be hand-picked based on their features, not their implementation of -- what should be STANDARDS-BASED -- HTML, CSS, and JavaScript.

So why the big fuss about Internet Explorer? Well, going back almost a decade (at least), Internet Explorer was the de-facto web browser of the common surfer. Window has always been an integral part of computing, in general. Internet Explorer, being a base application in Windows, has thusly always been involved. Considering that roughly 70% of the world population -- in computer terms -- uses Windows, IE is a relevant platform. Considering that people don't like to change their habits (again, speaking in general), if they are used to IE, then IE is where they'll stay.

So, we developers are constantly faced with having to make our applications more usable. No one likes to see "This site doesn't work with IE," notices. They see that and, generally, they exit the site in an expeditious manner or just deal with the inconsistencies. Knowing that, we are faced with design/development alternatives from all other browsers into IE.

As one person stated (I'm a little too tired for direct linking), 20% of a Web developer's time (and money) is spent on making an application work on sub-8.0-releases of IE ... which brings me to my point: Why standardize a Web application for an out-dated system? The answer is, shockingly, very simple: We shouldn't.

Why? Not only are IE 6 and 7 outdated, but IE 8 comes as a "critical" upgrade in Windows. Microsoft realizes that -- if things keep going the way that they were -- they will lose at least half of their audience if they don't make their experience more comfortable. Those who continue to stick with Windows versions that are outdated generally don't apply to this post. They don't surf the web much and, if they do, don't particularly care about whether their application works as it is supposed to so long as it just ... works. Most intelligent developers provide a backwards-compatible way to view the Web (i.e. text only). That accounts for most of their techniques. Providing content for IE 6/7 should not deviate from that principal. Those browsers should be considered the same as incompatible versions of, per se, Mozilla, Firefox, Safari, Opera, Netscape (dead and gone), etc.

The problem too much with IE 6/7 is that they rely solely on various vendor-specific CSS, JavaScript, and DOM implementations. Nothing renders the way it is supposed to.

All of this jabbering and I've still yet to actually answer my one question: Why continue to develop for a browser that is dead and gone? The answer: Don't. Internet Explorer versions previous to 8.0 are years (if not decades) old. Most of the audience we developers -- as well as our clients -- care about (approximately 70% of the Web) have upgraded to 8.0 because it is flagged -- by Microsoft -- as a 'critical' upgrade from previous versions. Almost all users will regard a 'critical upgrade' from the vendor as law. That said, newer versions of Windows (i.e. Vista Service Pack 1 and Windows 7) include IE 8. Most (intelligent) Windows users will (would have) upgrade(ed). So, the days of developing for a long-dead system have come and gone.