Firefox 2 outperforms IE7 because Firefox doesn't do "the right thing"

As I mentioned here, Scoble points out that IE7 renders TechMeme slower than Firefox 2. A true statement. Another true statement is that Firefox isn't respecting the <META HTTP-EQUIV="Expires" CONTENT="now"> tag. Furthermore, Firefox doesn't respect its own "Always clear my private data when I close Firefox" option. And this, my friends, is the heart of the performance difference in this test.

So let's we peel the onion just a bit, shall we? Fire up Fiddler, configure both browsers to use it as their proxy and rerun the TechMeme test. You'll see that Firefox makes only a few requests for page content whereas IE7 requests the entire page. The result is that Firefox makes that page pop because it is pulling its page content from cache. If you select Tools | Clear Private Data... in Firefox, shut it down and run the test again, you'll find that the experience is identical to that in IE7. IE7 is doing the right thing. Firefox isn't.

I did some more digging and played around with Firefox's "Always clear my private data when I close Firefox" option. After enabling it and exiting Firefox, I relaunched it for for TechMeme home page again and was surprised to find that it was still pulling data from cache ... despite having been set to erase Browsing History, Download History, Saved From Information, Cache and Authenticated sessions when closing Firefox! Note this is distinctly different behavior from choosing Tools | Clear Private Data...

[Edit: Firefox does respect the "Always clear my private data when I close Firefox" when the last instance of Firefox exits rather than for closing each window.]

Technorati tags: ie, firefox