At Fluent 2017, Shubhie Panicker and I talked Reliably Measuring Responsiveness in the Wild. Here’s the abstract:
Responsiveness to user interaction is crucial for users of web apps, and businesses need to be able to measure responsiveness so they can be confident that their users are happy. Unfortunately, users are regularly bogged down by frustrations such as a delayed “time to interactive” during page load, high or variable input latency on critical interaction events (tap, click, scroll, etc.), and janky animations or scrolling. These negative experiences turn away visitors, affecting the bottom line. Sites that include third-party content (ads, social plugins, etc.) are frequently the worst offenders.
The culprit behind all these responsiveness issues are “long tasks,” which monopolize the UI thread for extended periods and block other critical tasks from executing. Developers lack the necessary APIs and tools to measure and gain insight into such problems in the wild and are essentially flying blind trying to figure out what the main offenders are. While developers are able to measure some aspects of responsiveness, it’s often not in a reliable, performant, or “good citizen” way, and it’s near impossible to correctly identify the perpetrators.
You can watch the presentation on YouTube.
Philip Tellis and I gave a tutorial on Measuring Real User Performance in the Browser at Velocity New York 2016. Slides can be found at Slideshare:
In the tutorial, we cover everything you need to know about measuring your visitors’ experience (also known as Real User Monitoring, or RUM):
- History of Real User Measurement
- Browser Performance APIs
- Visual Experience
- Single Page Apps
- Nixing Noise
The 3-hour tutorial video is also available on YouTube.
Nigel Heron and I gave a talk about Accelerated Mobile Pages (AMP) at Velocity New York 2016. We have slides available on Slideshare:
In this talk, we dig into AMP to determine whether or not it gives your visitors a better page load experience. We cover:
- What is AMP?
- Why should AMP pages be faster?
- How do we measure the real user experience for AMP pages?
- A demo of how to use AMP analytics
- Real-world performance data from AMP visitors
- Real-world engagement / conversion data from AMP visitors
The talk is also available on YouTube.
Your site’s page load performance is important (and there are tools like Boomerang to measure it), but how good is your visitor’s experience as they continue to interact with your site after it has loaded?
At Velocity 2016, Philip Tellis and I talked about how you can measure their experience (and emotion!) in Measuring Continuity:
We cover how to capture a variety of user experience metrics such as:
- Browser developer tools’ Timeline metrics such as FPS, CPU, network and heap usage
- Interactions like user input, page visibility and device orientation
- Complexity metrics including document size, node counts and mutations
- User experience metrics like jank, responsiveness and reliability
- Tracking emotion with rage clicks, dead clicks and missed clicks
Code samples for the talk are also available, and you can watch it on on YouTube.
After how much fun I had building a cheap and simple Spark Core Water Sensor for my sump-pump, I’m now using a Photon (which is half of the price of the Spark Core) for remote temperature and humidity logging for my kegerator (keezer). For just $24, you can have a remote sensor logging data to Adafruit.io, ThingSpeak, Amazon DynamoDB or any HTTP endpoint.
You can see how the whole project on Github.