Wednesday, December 05, 2007

Learning to Love IE

I can think of at least one serious ooops moments with all my i2x clients, where I realized that something I was showing them worked in Firefox, but not IE. It's totally common sense to check your work in both places, but I find that it's just too easy to make that one last, itty-bitty tweak in Firefox and ship it - only to find out that you've totally broken things.

So, today I decided I would do something about it. The only reasonable solution I could come up with was to actually do development in IE. Sure, I love Firebug, and I know I can get the ability to toggle to IE in a Firefox tab - but nothing is going to get me to fully, 100%, test my stuff in IE, other than actually using it.

Switching to IE, I quickly realized some of the Goodies that I totally take for granted on Firefox.

  • The support for developer tools - I've addressed this by using the DevToolBar and Script Debugger. The tools aren't as slick as the Firefox options, but they work. One thing I have to hand to IE, is that when you have debugging turned on, it bugs the crap out of you. You want to fix the bug just so the stink'in thing will shut up.
  • Spell checking. Holy crap do I need spell checking in my browser! How did I live without this? Between my e-mail, calendar, spreadsheets, wiki and blogging, 95% of my writing (other than code) happens in a web browser. It better give me an easy way to spell check. I found IE Pro 7, a plugin that adds all sorts of features to IE, including spell checking. Seems to work great. No doubt, it's installed enough spyware on my machine to bring it to its knees (actually, so far, it really seems like high quality, well done stuff).
  • Keyboard shortcuts - hate the rodent, love the keyboard. I've studying this cheatsheet with more rigor than I did the SATs. One shortcut not mentioned (and maybe added by IE Prox 7?) is Control + Shift + Z - to re-open a closed tab. A really handy one.

So, I've sworn off the Fox. I wonder how long I can keep this up? What other plugins should I be using to make IE more palatable? Anything out there get it to emulate emacs?

1 comment:

  1. Yeah, I had to come to terms with the fact that I needed to do 99% of my webapp testing in IE, too.

    What's worse is that we have to support IE 5.5 on my current project, and that browser is like the IE equivalent of Netscape 4.04 (I remember learning, back at Amazing Media, that Netscape 4.04 was kind of aptly named, due to its propensity towards stupid errors).

    IE 5.5 doesn't support some things that it IE 6+ and Firefox do, and it's very temperamental. If you put two javascript statements in the wrong (according to IE 5.5's thinking) order, it will crash.

    I'm not just talking about two specific javascript statements, either. I've run into multiple scenarios that caused this to happen. Adding a strategically-placed javascript alert tends to prevent the crashing, but that's not a production-ready solution. However, that has allowed me to track down these crashing bugs, by slowly moving the alerts around through my code, trying it again, etc. until I finally found the point where an alert means the difference between crashing or not.

    Anyways... IE 5.5 is a big pain in the ass. So, I end up doing most of my development/testing in IE 6, since at least some of our user base uses that version. But, we always have to remember to go back and do a thorough end-to-end test of the app in IE 5.5 before actually deploying anything to production.

    Sounds like you're able to use IE 7, though, since you linked to a keyboard shortcut cheat sheet for it. Lucky you!

    As far as tools go, I use the IE Dev Toolbar, as well, and have a good collection of bookmarklets (or favelets, as the IE world tends to call them), which help to make up for some of the things that IE/IE Dev Toolbar lack.

    As for script debugging: instead of the Microsoft Script Debugger, I highly recommend using the Microsoft Script Editor (MSE). Unfortunately, it's not available as a standalone download. It comes with MS Office 2003/XP, apparently. It's much like the Script Debugger, but much more powerful, polished, usable, etc.

    Here are a few pages about script debugging in IE, particularly with regard to using MSE:
    - Javascript Debugging in Internet Explorer using the MS Script Editor
    - HOW-TO: Debug JavaScript in Internet Explorer
    - Reliable JavaScript Debugging with Microsoft Script Editor