When you think about it, if you're in the performance business, what you're really in is the empathy business.
When we think about it, we feel for all those poor folks who have to wait for pages or apps to load, especially in less-than-ideal circumstances. We feel for them because we are them. Many of us have gotten off late-night flights and struggled to open a rideshare app while using crappy airport wifi. Many of us have waited and waited (and waited some more) to read articles on media sites. Many of us have accidentally hit the wrong button on our phones because of janky page rendering, and then silently – or not so silently – cursed as we hit the "back" button and waited (and waited some more) for the original page to reload.
But here's the problem: Empathy doesn't scale well.
It's easy to feel bad for individual people. It's hard to feel bad – really bad – for massive groups of people. And that makes it easy to fall into siloed thinking about what we do. Humans are natural compartmentalizers. We like putting ourselves in boxes. So next thing you know, you've labelled yourself: "I'm all about image optimization" or "I'm a custom fonts expert" or "CSS is my life".
But everything we do points back to users.
With that in mind (and because I love few things more than I love making lists), this talk includes some of my favourite research about web performance and user expectations/behaviour. My hope is that these will inspire you when you go about your daily work.
4. “Oh… pity the hyper-impatient web
generation. Such busy lives with so many
important things to do — like post the latest
drivel onto their Facebook pages or
download the YouTube viral video of the day.
Oops, sorry — of the minute.”
Reader comment
“For Impatient Web Users, an Eye Blink Is Too Long to Wait”
The New York Times
11. “The real thing we are after is
to create a user experience that people
love and they feel is fast… and so we
might be front-end engineers, we might
be dev,
we might be ops, but what we really
are is perception brokers.”
Steve Souders, SpeedCurve
15. “We want you to be able to flick from
one page to another as quickly as you
can flick a page on a book. So we’re
really aiming very, very high here…
at something like 100 milliseconds.”
Urs Hölzle
Senior Vice President of Technical Infrastructure
Google
26. 26
First Paint is not equal to Start Render!
Chrome – “First Paint” True Start Render
27. 27
User Timing Interface
Allows developers to measure performance of
their applications through high-precision
timestamps
Consists of “marks” and “measures”
PerformanceMark: Timestamp
PerformanceMeasure: Duration between two
given marks
28. 28
How long does it
take to display the
main product
image on my site?
29. 29
Record when an image loads
<img src=“image1.gif” onload=“performance.mark(‘image1’)”>
For more interesting examples:
Measure hero image delay
http://www.stevesouders.com/blog/2015/05/12/hero-image-custom-metrics/
Measure aggregate times to get
an “above fold time”
http://blog.patrickmeenan.com/2013/07/measuring-performance-of-user-
experience.html
32. “Time is measured objectively
but perceived subjectively,
and experiences can
be engineered to improve
perceived performance.”
Ilya Grigorik
High Performance Browser Networking
46. 46
“When, as with the Progressive JPEG
method, image rendition is a two-stage
process in which an initially coarse image
snaps into sharp focus, cognitive fluency
is inhibited and the brain has to work
slightly harder to make sense of what is
being displayed.”
Dr. David Lewis
Chair, Mindlab International
52. 65% of seniors use the internet.
Users aged 65 and older
are 43% slower at using websites
than users aged 21-55.
https://www.nngroup.com/articles/usability-for-senior-citizens/
53. Between the ages of 25 and 60,
our ability to use the web
declines by 0.8% a year.
https://www.nngroup.com/articles/usability-for-senior-citizens/