« 500px
Main
Project Bathroom: Complete »
It's the Fast
There's an aspect of usability that I think is drastically overlooked by most software companies, and that is the performance of the interface. Thinking as a software builder, getting my product to be snappy comes at the cost of spending lots of time optimizing, and that's time I could spend adding features instead. At all of the previous jobs I've had, performance was something that needed to be "good enough", and then we could get back to work adding the real value, the features.

But don't be fooled

Working at Google has made me realize that scraping by with "acceptable" performance so that you can focus on features is (ironically) a false optimization. Google understands this, and I've finally gotten it through my thick head, now, too. A simple example: just think about some webmail system you've used, and compare that experience to how it feels to use GMail--- it's the speed, more than the features, that makes it so much more valuable.

An example

Let's say we have a web site that offers a catalog of music for sale. Users come to the site, look for music, and then maybe buy some. When the user finds an album, on the side of the page we show other, similar albums that they might also like. And of course we have a zillion other features that we want to build around a rating system, comments, reviews, album artwork display, listening to samples, etc etc.

Let's say we currently render the album detail page in 4-6 seconds (this is comparable to Amazon's actual performance.) When the user sees our list of 5 "recommended albums", they quickly (er, slowly) learn that finding out about each of those items is going to cost them about 5 seconds of their lives per click, plus 3-5 seconds to get back to where they were to see the next recommended album. If none of the recommendations are compelling, then the user might spend an average of only 5 seconds looking at each recommendation--- so we're telling our user that 60% of their experience with our product will consist of staring at a white screen, waiting. If the user is willing to spend 10 minutes browsing for music before they finally feel guilty enough to get back to work, then they're going to have time to browse maybe 6 separate albums and their recommendations (36 offerings total).

But what if it were faster?

Imagine if instead of spending our engineering time on adding a user review system, we were to optimize the product (okay, and buy more hardware) to get our end-to-end page render time down to just 1 second. Now users can browse 13 albums (totalling 78 offerings) in the same amount of time--- arguably doubling our chances of selling them something. Do we think the user review feature has the potential to double our sales? Probably not.

But even more compelling, think about what the faster system would feel like: If the user could see recommended albums almost without delay, they're much more likely to explore our recommendations in the first place. Let's be honest, 60% waiting time is brutal--- so the mediocre performance of the current system discourages exploration, which actually cancels out a lot of the value of the recommendation feature in the first place. If the system were fast I bet we would unlock the potential of that feature, and get users exploring not just twice as many albums, but maybe 10x or more, just because it's so fast and easy, the user learns to think "Hey, why not click on that?"

So the faster system effectively has better features, and users will use it in a different way that gives them much more value. So it isn't just a faster system, it's a completely different product. (Conversely, slow performance doesn't just erode the value of features, it can render them almost totally valueless for many kinds of users.)

So think carefully about the Fast

Obviously I'm making a lot of assumptions in this argument, so your mileage will of course vary for your product. But my point is that it's dangerous to just assume that once your system is returning pages in 5 seconds that it is "fast enough"--- even 2 second response times have not necessarily gotten to the sweet spot in the curve of diminishing returns. Yes getting excellent performance is hard, but it's worth remembering that it can be much more than just a minor differentiator--- it can completely transform what your product means to your users.
Comments
blog comments powered by Disqus
The views expressed on this site are mine personally, and do not necessarily reflect the views of my employer.