

























If you came to this website when I started blogging back in 2009, it’s probably because you were a web developer who was into the then-cutting-edge technology that was HTML5 and CSS3, but had to deal with the COBOL and 8-Track Tape of the browser world, Internet Explorer. I loved experimenting with new web standards (and still do), and it really bugged me that in my client work I couldn’t always use them because this browser, which at that time did not receive an update for five years, was holding me back.
So I spent a lot of time bending IE to my will. I wrote articles on how to implement CSS3 features like text-shadows, custom cursors, viewport units and a slew of other then advanced CSS properties in the Cthulu of web browsers. I even made it scream in pain while I forced it to understand CSS transforms (and I too, moaned in agony, since it required a lot of matrix arithmetic combined with understanding the awfully documented voodoo that was Internet Explorer’s Matrix Filter). Developers seemed to like reading these articles, and some even thought I was a developer to admire (of which I was humbled to read about). I used to joke that if I didn’t have to worry about IE, I could use the enormous amount of creativity and brain-power supporting it to something more worthwhile, like curing cancer.
So, even though I haven’t worried about Internet Explorer for over seven years now, Microsoft has said that IE is not supported anymore and is effectively dead. While I join you all in cheering and dancing on its grave after the years of PTSD that Internet Explorer gifted us developers, I want to take a step back and look at its legacy. Surprisingly, there were some good things that came out its existence (really!).
If you were a web developer back in the late nineties, you will remember the first browser wars: on one side was Netscape, the company that really made the web mainstream with the first easy-to-install and use web browser (I know you Mosaic fans may have a lot to say about this sentence in the comments below … have at it). On the other side was Microsoft’s Internet Explorer. Netscape was the market leader in browser tech until Microsoft really started focusing on Internet Explorer with version 3.0. IE, surprisingly, was somewhat interested in web standards, and was the first browser to support CSS (eventually IE 5.5 for Mac would have the best CSS support of any browser in the late nineties/early 2000s). On the other hand, Netscape tried to implement their own stylesheet format (JSSS) instead but had to reverse course in the last minute and hack in CSS support in Netscape 4. As a matter of fact, Netscape had to do a lot of hacking to deal with their new serious competition from Microsoft, and Netscape 4 became a huge unstable mess.
This is not to say Microsoft followed web standards completely. They definitely did things their own way. Some of these decisions were great for web developers. Ever use .innerHTML? That was an IE thing! Netscape users had to do a convoluted hack to do the same thing. Drag and drop, CSS custom fonts, vector graphics, AJAX … all of these were implemented in IE first before Netscape or any other browser (yes, Netscape did have downloadable fonts, but there were no good tools to create the TrueDoc fonts it required and this functionality was deprecated in later versions of the browser). All of these originally proprietary technologies later became part of official W3C web standards (even parts of IE’s vector graphics solution, VML, were incorporated in the SVG standard). IE’s JavaScript and CSS debugger, I believe, was the first one available on any browser (if it wasn’t, it was the first one I had ever seen) … and for the time of its release, it wasn’t half bad.
Netscape fell behind and eventually died. And that’s when things started getting bad for the web.
The Browser Wars between Netscape and Microsoft have a lot of common with the Space Race between the United States and Russia. Before the Soviet Union fell in the early 1990s, the U.S. had to make sure it looked technologically superior to the Russians. It poured a lot of money into the space race and scientific advancement. It wanted to be, and arguably was, the winner of the space race. When the U.S.S.R. fell, it didn’t have to worry about that anymore, so it stopped investing in space. Its space program became a shell of the greatness it once was.
The same happened with IE. With Netscape out of the way, IE became stagnant. IE6 didn’t receive an update for five years. New web standards were invented (SVG, HTML5, CSS3) and older ones improved upon (the official W3C Document Object Model being the most obvious), but IE didn’t bother implementing them. Why should they? They won.
There were browsers like Firefox and Opera that implemented newer web standards, but the vast majority of users were using IE. A lot of developers, if they wanted to do cross-browser web development, would use Flash, since it ran in all browsers that supported plugins. I, however, bet on JavaScript as a platform, and made a JS library called helpers.js that had an API to implement advanced browser functionality in an cross-browser way (the source of helpers.js is still available on my website for those who are interested in how it worked … it does show what we had to do to make JavaScript work in all browsers back in the day). Betting on cross-browser JavaScript to do web applications turned out to be a good strategy for me considering what happened next.
A few things got Microsoft to take the modern web seriously again:
With IE now having serious competition, developers had to worry about the legacy of IE6, since there were still many users who refused, or didn’t know how, to upgrade this ancient browser (this was the era before browsers auto-updated themselves). Developers wanted to use up-to-date web standards, but were held back by this beast. But a great thing happened: web developers took control of the platform:
Don’t get me wrong: IE’s death is something I am really happy about. I am glad we don’t have to do any more hacks or fixes to support this browser (and I really haven’t had to for a while). But there are two reasons why I still have a soft spot for the clunky lug that is IE:
As I said earlier, I always joked I could do something way more worthwhile if I didn’t have to worry about IE. In my next blog post, I will be discussing a major project that I have put together for the last two years to promote web accessibility. I hope it is as successful as my blog posts that promoted making web standards work in IE when I first started blogging. Stay tuned for my next blog post for more.
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。