In his talk at Smashing Conf in Freiburg Germany 2013 Tim Kadlec talked about the importance of performance on the Web and how to consider it throughout a project. Here's my notes from his talk Deliberate Performance:
- The Web is suffering from a lack of deliberate focus on performance. It's getting fat because our faster machines and networks mask the reality.
- The average Web page size today is 1.5MB
- Performance on line is not a technical issue. It is a cultural issue. A lack of performance is a lack of planning.
- Timelines, client needs, and design choices all impact performance. "Done on time" can often trump other considerations.
- Pre-optimizing things too early might be a waste of time but post-optimization never happens.
- Performance is a lot like plumbing. Its hard to get people to pay attention to it until something is wrong.
- Get people on board early. Help people understand why performance is important -20 pages of data won't do it. Make it fast & make it visual.
- Web Page Test can help you make a video of two pages loading next to each other. This comparison makes it personal and competitive.
- Explain the impact on the most important metrics for your team or client. Conversions, revenue, etc.
- Being twice as slow as the company you are competing against (Posterous vs. tumblr) significantly impacts your ability to compete. Speed is not just a feature, it is a requirement.
- Bad performance is bad business. This is how you get people to care about making things performant.
- Performance is about respecting people's time and money. When you waste someone's time -they'll leave. When you load too much data, you burn through people's data plans.
Performance Tools
- A performance budget can help you set a goal for load time. When you develop your site, you can keep tracking against this budget.
- One second is the right goal for uninterrupted flow but this might be too aggressive for your site -its hard to hit.
- Another option is to load more than 20% faster than your competitor. Measure their load time and make your performance budget 20% faster.
- Optimize, remove, don't add: use these methods to reach your performance budget.
- Slow connections are not a limit to creativity. They allow you to embrace constraints, which gets you to better designs.
- Get designers involved in performance. A lot of performance is perception and can be designed. For example, airports make you walk longer to baggage claim to make the wait times feel shorter.
- Performance by design allows you to get over some of the realities of mobile networks. For example, create local copies of the things your users make and upload them in the background.
- Test performance on real networks.