I've been brushing up on my AJAX skills to prepare for a phone interview with Yahoo. This reviewing brought old gripes to air, and convinced me to publicize my long held belief. This belief may seem like an overstatement, but bear with me, and I think you'll find I can make my case. Internet Explorer is NOT COMPATIBLE WITH THE INTERNET. This is my honest opinion.
I understand that a statement like that, made anywhere outside a forum atmosphere, requires proof. Therefore, I will enumerate my examples.
- CSS - Internet Explorer only parses CSS in the most hacked and sloppy manner. The box model is mangled, and proprietary tags are accepted to make up for the lack of support for standard methods. Any skilled designer will tell you that you code for Mozilla and hack for IE compatability later.
- HTML - Internet Explorer created proprietary tags for purely stylistic purposes, where as HTML is meant to be a style-free language
- Embedding Media - Internet Explorer requires custom, non-standard, tags to embed media.
- PNG Images - Internet explorer does not support PNG's Alpha transparency, severely limiting designers' freedoms with custom interfaces.
- AJAX - the basic xmlHTTPRequest, upon which AJAX is based, is not supported in Internet Explorer... instead an ActiveX hack must be used.
- Proprietary Elements/Scripting - Internet Explorer purposefully degrades the concept of a usable internet by releasing, maintaining, and promoting proprietary elements and scripting languages
Now for the big question: Why does Internet Explorer purposefully attempt to cripple the Internet? Money. Microsoft wants users of the Internet to feel obligated to use Internet Explorer because it (and it alone) supports all these "amazing features" (read: garbage). On the other hand, Microsoft cripples designers by making usable, portable design so difficult to hack for "IE compatability" (read: bastardization) that many designers opt for IE-only design.