I usually look through the WebPagetest logs daily to get a feel for how the sites people are testing look from an optimization perspective and I’d say well over 90% aren’t even doing the basics (I plan on pulling stats together to have actual figures but it’s a good ballpark). Part of me wonders if they are getting overwhelmed aand if some of the things that are checked even really matter (in the grand scale of things). I think there’s a really big fall-off on impact once you get past the first few rules so I figured I’d spark a little discussion on the topic .
Sort of a mix between YSlow and Pagetest rules, here are the ones that I think have the largest impact and are universal (aka “rules”):
Minimize HTTP requests: Be-it by combining css/js, using image sprites or otherwise, this is absolutley critical to improving performance.
Enable Persistent Connections: Saving a round trip for every request can add up pretty fast and it’s scary how often it isn’t enabled.
Properly Compress your content: Gzip your text and make sure your images are properly compressed (smush.it or otherwise).
Make your static content cacheable: Only helps for repeat visitors but this one is also very scary how often it isn’t done.
I’m kind of on the fence about CDN’s. They can hide a lot of sins (particularly around the number of requests) and only apply to sites that are large enough to justify it but that don’t have their own geo-distributed infrastructure.