Troubleshooting Internet Explorer

I’ve been working my tail off at work so we can ship the new version of our flagship product. I really cut my teeth on advanced Javascript with this project which began several months ago. I’ve stretched my CSS abilities, too. And I’ve spent more time debugging than in any other point in my life.

This approximates my life in the past two weeks:

As you can see, while the deadline approaches, tickets filed increases exponentially. This is not because of poor quality control so much as fixing bugs in actual functionality causes ridiculous visual bugs in IE, which bear no rational explanation.

IE is my new Kryptonite. But perhaps not for the reasons you’d think. Until recently, I’d almost defended it, because I’d had only the usual broken-box-model CSS issues and no Javascript issues at all. “Sure, it’s broken,” I’d say, gamely. “But at least it’s consistently broken.”

I should have known how the Universe pays back people who say such things.

This is a conversation I had online earlier today with two other Railsers. It is going to be typeset prettily and pinned to the wall behind me and my partner on this project.

Amy:You know the best part of IE?
Corey Donohoe: The x in the upper right corner?
David Favram: Chemical neutering?
Amy:No, we have three different computers running the same version of IE and sometimes all three behave differently. Like, REALLY differently.
David Favram: Yeah. Because parts of IE are written in only electrons. Since it’s impossible to know the exact position and velocity of said particle, those parts of the software are somewhat unpredictable.
Amy:“Why does it work on yours and not mine??” “I blame the Heisenberg Uncertainty Principle.”
Amy:“IE is both a particle and a wave”
David Favram: It’s more like a wave and a plop, if you ask me.


And yes, we are both using the exact same version of IE, right down to the millionth decimal and little spatters of text indicating the XP service pack revision. (I’d never really thought it possible to make unusable version numbers before, but Microsoft proves, once again, that you can achieve anything if you just try hard enough.)

Reminder: Coming to the smaller, cuddlier Rails conference in Canada? You should. I’ll be giving an introductory talk on Ajax in Rails, which you can follow up by attending Thomas Fuchs’ advanced talk.

52 Comments

  1. Michael says:

    Amy- I truly enjoy your writing, both in style and content.

    I do have one request, can you please post absolute links to images in your posts?? Please?

    I don’t want to have to start hacking libraries I’m using to support relative images/links, but if I do, I do.

    Oh, and I completely agree with the red line going up as the project nears "completion" ;)

    Thanks- Michael

  2. Scotty says:

    AMEN!

    I dread the close of any project when it comes down to squarshing the dreaded bugs in IE. The curses I have hailed upon it’s developers would make Job feel like he was having a good day.

  3. Steve says:

    In any project with IE testing, I maintain a consistently lethal red line: so as to numb the mind to the fact that testing a script on the same computer with no changes in software or data can execute differently depending on the time of day.

    From my evaluations, I believe that IE contains code execution binaries whose functionality actually varies with planetary alignment and the fluctuation of caribou population in Michigan.

    If anyone else has a more scientific explanation than that, they are more than welcome to take a stab at it.

  4. Matt says:

    "IE is both a particle and a wave"

    or as i like to say – warticle.

  5. Dave P says:

    Hey Amy,

    1. Great site. Love your writing style, keep it up!

    2. Next time you run across a "same versions, different result" rendering error – post screenshots! I’ve actually never seen something like this, and would love to have a look. (I won’t try and fix it though… it is IE after all) :-)

    3. OT: Good idea with the cheat sheets, really like ‘em. You’ve got a little boo boo on the "what goes where" one though — 500 errors are internal server errors (IE code screw up), 503 errors are "service unavailable". I know, nit picky.

    Hope to meet you in April in Vancouver!

  6. wac says:

    I wonder how long it’s going to be before the web development community can ignore these broken versions of MSIE the same way most people disregard Netscape 4 nowadays…

    I’ll take "not soon enough".

    Screenshots of the misbehavior would be amusing once you release and can show them. Sláinte!

  7. John says:

    Let’s move to Firefox. No more IE….

    Cheer…. cheer…. cheer…… Firefox

  8. Amy Hoy says:

    I know I’m probably alone in this, but I really don’t like FireFox either. On OS X, the experience is, shall we say, less than rewarding. I love my Safari; I use FireFox for development and testing.

    It was just a few days ago that I discovered a bug in FF that made me want to yank out my hair. It turns out that you can’t position elements with a high z-index over any other element with scrollbars, because the scrollbars appear on top of everything. (Yes, this is a FF/Mac only bug. No, that does not make me not want to commit homicide.)

    This aside from, you know, the standard run of the mill bugs like the browser buttons suddenly ceasing to work.

  9. Amy Hoy says:

    Oh, er, and nice to hear from you all, too ;) Dave, I’ll make sure to fix that in version 2. Steve, I think you may be right about the caribou. And Michael… can I see your feed reader? :)

    Hi, wac. Didn’t realize you read slash7. :)

  10. Sean Bryant says:

    I know I’m late. Been busy but I can’t resist the opportunity to do a little IE bashing.

    Unfortunately you guys aren’t getting the whole picture. You see IE is a particle and a wave, at the same time. Browser Particle Duality. Now since IE can be rendering two different things, super-postional rendering(tm), we can only however see one rendering because of our limited scope on reality. The rendering we see is seemingly random until we look at it on the quantum scale. Different circumstances will cause the computer to observe the browser at different points and time resulting in which image we see rendered.

    I hope this helps explain Microsoft’s Quantum Browsing Experience, where every time is a different time.

  11. Steve says:

    So Sean, what you’re saying is that IE shouldn’t be studied and picked apart by designers, but rather by physicists?

    I’m still sticking to moon phases and caribou populations. Ritual sacrifice seems to help though.

  12. Steve says:

    Oh, cheers Amy. Although I still prefer ‘using’ Firefox for the wealth of interesting extensions, I’m no longer alone in my extensive griping about the FF scrollbars. I’ve had to go out of my way on many an occassion to remove scrollbars from as many sites as I can for that very reason.

  13. IEUser says:

    Amy, I felt for you since I am also having problem with IE. IE is above the standard, it makes its own standard.

  14. Zachery says:

    hah… ie is lovely. we have had that issue here as well amy. and i think we actually came up with a reason on why it was happening, but i dont remember anymore :/ either way it was still a pita we wasted an ungodly amount of time on.

    microsoft strikes again with useless unexplainable actions in its products !

  15. TrevC says:

    You should post on the IE blog next time you come across these inconsistencies! I’d be curious to see what their devs have to say.

  16. gingerman says:

    Why is it that the testers always have a version of IE identical to yours, but they can always break your code – doh!

  17. I think it would be usefull for other users also…

  18. Well at last catched the problem.

  19. There is some strange behaviour with this…

  20. I use Firefox in Ubuntu…

  21. I use Firefox in Ubuntu…

  22. I thout to do it in my local version :)

  23. Seem Late says:

    But I’m not sure why!

  24. Gonna have to give it a try.

  25. I was very dissapointed of this :)

  26. There is some strange behaviour with this.

  27. Vision Aid says:

    Very nice write up.

  28. marc says:

    Computek Locazioni e’ una societa’ finanziaria specializzata nella locazione operativa multi-brand di apparecchiature per l’informatica e le telecomunicazioni e nel <a href="http://www.computeklocazioni.it/noleggio_computer.cfm?sezione=2"&gt; noleggio computer</a>.

  29. marc says:

    apparecchiature per l’informatica e le telecomunicazioni e nel <a href="http://www.computeklocazioni.it/noleggio_computer.cfm?sezione=2"&gt; noleggio computer</a>.

  30. Just thought I’d make a note about a problem :)

  31. Gonna have to give it a try.

  32. The content of your show is great, I really enjoy it!

  33. Magasin Hart says:

    Thanks for taking the time to do it :)

  34. Isdn says:

    Thats correct!

  35. Gonna have to give it a try!

  36. Dairy Detox says:

    i am not sure as to why :)

  37. There is some strange behaviour with this…

  38. The content of your show is great, I really enjoy it.

  39. ashish says:

    i want to know full detials of VPN firewall and bridge mode. And waht is the meaning of Hyper Threading?

  40. The content of your show is great, I really enjoy it!

  41. 234523 says:

    Hello WebMaster! GOOD Site! <a href=’http://bcfc7.dostupen.info/’>http://bcfc7.dostupen.info/</a&gt;

Hey, why not get a shiny
Freckle Time Tracking
account?