I had been made aware of the Firefox plugin a few months ago by a high profile customer who was worrying about his site’s performance. At the time I dismissed most of what it was reporting as garbage.
I had yet to install it or try it on my own site… I did today. It randomly grades this site C or D; Microsoft got an ugly D; Yahoo! Finance got a C; Yahoo itself fetched a B. The only site I’ve found that got an A was Google’s.
I was quite surprised. Then again, taking a closer look at what it’s complaining about:
- Use a CDN: on a site powered by WordPress? Yeah, right. And place assets on a separate domain name to avoid cookie overhead, I would assume? For a site like CNN, that makes sense. But for my own minuscule site, that seems so overkill…
- Add expires headers long in the future: valid point, unless I decide to change the images. I’ll cope with the 304 requests for now, but I’ll probably revisit the idea.
- Configure Etags: amusingly, all of the files it reports as having none actually have one, and they’re returning a 304 Not Modified header. I’m assuming this is a bug in YSlow, whereby it doesn’t check whether the file is in the cache.
- Add gzip compression: the same bug, in all likelihood, since the files are actually gzipped when they’re sent to the browser.
- Reduce the number of DOM elements: while correct in theory, that possibly is the silliest thing I’ve read this year… How is a site supposed to be customizable without some amount of DOM?
- Place background images in sprites: as if… that works in some cases, but definitely not all of them. In particular when you need to center-align an icon with text whose size can vary.
YSlow was garbage when it was released. It still is; and it’s full of bugs.
The most horrible thing, though, is that this thing is going to become some kind of a benchmark for worried users who don’t know any better in the year to come, courtesy of Google’s new indexing algorithm…