Chapter 22. Performance Is a Feature
I’ve given a lot of presentations in which I say, “Performance is a feature.” People nod when I say it, but I always go on to explain what I mean because the simple sentence doesn’t completely convey the point that I want to get across. I think what most people think I’m saying is:
Going fast is important for a computer program, so you should design “going fast” into all your programs. You should treat “going fast” like a proper first-class feature, with specs and tests and everything.
This interpretation is a start, but what I mean goes deeper.
Imagine if I were to ask a CTO of a company that sells things on the internet, “How many dollars worth of orders did your company book this month on your system? How does that compare to last month?” Just about any CTO would be able to find that information within a minute or two. Information about order volumes is probably easy to find in the application, because it’s important to the business.
Now, imagine asking that same CTO, “How long did it take this month to book an order when people clicked the Book Order button? How does that compare to last month?” Many CTOs are not going to be able to tell you that. Is it important? Well, you decide. What if the answer would have been this:
Last month, 99.9% of Book Order clicks took 1.370 seconds or less, but this month we’re at 2.799 seconds. That’s not unacceptable (yet), but it has more than doubled in just one month.
How would you rather find out ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access