To IE or Not IE, that is the question.

As you hopefully unfortunately already know, IE is a serious vulnerability at present. And given how long it takes MS to patch these serious vulnerabilities, you should really be asking whether IE is a good choice for you, your company, and as a developer whether you lock customers into IE or other options.

Firefox is definitely getting a lot of attention lately, but is it ready for prime time? As much as I like it, I don’t think it is.  Firefox has some cool things such as simplified options dialogue, granular JavaScript settings, and of course tabbed windows. My favorite feature is its progressive rendering. Compared to IE, it can begin rendering much much earlier. But it isn’t all rosy. It has difficulty rendering some sites, sometimes serious difficulty. It is slightly slow to load first time, almost that slow you’d think it was written with java or .Net 😉  It has no concept of zones, so there isn’t an obvious way to treat important sites as trusted. 

For developers, Firefox has lots of browser specific additions (as if we need more). At least that prefix them with moz to indicate it is mozilla only extension. They also have XUL, which is kind of cool, mozilla only at present but may eventually become wider based. The big issue I have with Firefox fro ma developer’s POV is the lack of being able to reference an element by id, like you can in IE.  Instead of just referencing an element you have to be as one with that old xpath kind of lookup kind of feeling 😉

All in all, it’s not a replacement yet IMO. The lack of zones is a big time deal breaker for me, and its inability to browse all the WWW means you have to have a back up browser, and although that works, running two pieces of software just to do the one task is painful, and even more complex to ensure it’s secure.

That being said, what do you do when IE is vulnerable for a month at a time? Maybe having a backup browser is a great idea. And this is what developers have to allow for!

Up till recently it seemed you could get away with coding for IE only. It simplified development and testing, and let’s face it, most PC’s had IE. I know I have specified for projects IE5, IE5.5 or later.  And when I have coded I have addressed elements by id, instead of doing that document.all[“foo”] nonsense.  Why ? Well once again it speeds up development, gives you intellisense, and design time feedback.

But now, you have to evaluate those development savings against potential losses waiting for solutions from Microsoft. And seriously from what I have heard, I don’t think MS is going to address the need fro timely patches of IE any time soon.  When I see them do knee jerk reactions and drop ADODB stream support rather than lock that down to isolated storage or actually fix the real problem, the cross zone exploits, well you have to ask what does a company do if they had designed on that functionality?  Do they leave their machines vulnerable, or do they just shut down that app and have you re-write it?

The news either way is not good. At present there still are not viable alternatives. But alternatives are coming, and will probably be here before any next version of IE. The challenge for us is to develop for them again, not lock our selves or our customers into no choice situations.  That’s what I will be doing. 

And yes I do mean I will be dumping IE eventually or at least planning not to be IE dependant.  I doubt that bothers anyone at MS though, after all they disbanded the IE team and walked out on us some time ago, and only when they saw us flirting with Firefox did they realize folk weren’t going to take it.  And that’s probably a really good reason to code for Firefox and work with Firefox, as only then will we get a better IE, and probably also a better Firefox too 😉