CHAPTER 4 Culture of Performance
Setting a Performance Budget
Brad Frost wrote a blog post about the importance of discussing performance
early on in a projects life cycle^9 and he suggested mentioning performance in
project documents:
Statements of work, project proposals and design briefs should explicitly and
repeatedly call out performance as a primary goal. “The goal of this project is to
create a stunning, flexible, lightning-fast experience...”
He is, of course, correct.
Often, though, phrases like “lightning-fast” will prove not to be con-
crete enough. I’ve heard many people in the early stages of a project say
they want their site to be fast, only to see it turn into another one of those
things that would be nice to fix eventually.
One thing that I’ve found works well is setting a performance budget.
A performance budget is exactly what it sounds like. You set a budget for
your page and do not allow the page to exceed that number.
It’s a good idea to start with a load time, but the budget you set and
refer to will hold more weight if you can specify the actual page weight or
request count. Referencing a particular page weight or number of requests
instead of just a specific load time makes the conversation easier.
For example, if your budget states that the site must load in less than
five seconds on a 3G network and you’re trying to decide whether or not to
add a carousel to the page, you must first translate those five seconds into
a weight or request count to be able to make that determination up front.
Request count and page weight is also a relatively easy thing to rein-
force in your build process, allowing you to rigidly enforce the budget if
you so choose.
9 http://bradfrostweb.com/blog/post/performance-as-design/