OSCON: Yahoo! Releases YSlow, Performance Analyzer

Steve Souders, the Chief Performance Yahoo, has opensourced a tool for finding performance flaws in websites. YSlow implements Steve’s 13 performance rules as a Firebug plugin. He’ll be talking about it more at his talk at OSCON today. As Yahoo! Developer Network describes the plugin:

YSlow has three main views: Performance, Stats, and Components. Performance view scores the page against each performance rule, generates an overall YSlow grade for the page, and lists specific recommendations for making the page faster. Stats view summarizes the total page weight, cookie size, and HTTP request count. Components view lists each component (image, stylesheet, script, Flash object, etc.) in the page along with HTTP information relevant to page load times. It also contains several tools including JSLint.

The rules come from conducting A/B tests on Yahoo’s users. Over time they have been crystallized into:

  1. Make Fewer HTTP Requests
  2. Use a Content Delivery Network
  3. Add an Expires Header
  4. Gzip Components
  5. Put CSS at the Top
  6. Move Scripts to the Bottom
  7. Avoid CSS Expressions
  8. Make JavaScript and CSS External
  9. Reduce DNS Lookups
  10. Minify JavaScript
  11. Avoid Redirects
  12. Remove Duplicate Scripts
  13. Configure ETags

Steve is also the author of High Performance Web Sites, an upcoming O’Reilly book on this subject. It will be released in September. His slides from his talk on the Web 2.0 Expo are online.

I ran YSlow on Radar. It was very informative but, as you can see we have a lot of room to improve our own performance.