SlideShare a Scribd company logo
1 of 44
Download to read offline
• Philip Tellis
• @bluesmoon
• philip@bluesmoon.info
• SOASTA
• boomerang




         LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   1
Measuring the Performance Experienced by
               Real Users

     Philip Tellis / philip@bluesmoon.info



               LSPE Meetup / 2013-01-17




     LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   2
Real Users




             LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   3
Real Users




     • Get delighted
     • Get frustrated
     • Have credit cards
     • ... that they are attached to
     • Form an impression from experience




              LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   3
Real Users




     • Get delighted
     • Get frustrated
     • Have credit cards
     • ... that they are attached to
     • Form an impression from experience




              LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   3
Real Users




     • Get delighted
     • Get frustrated
     • Have credit cards
     • ... that they are attached to
     • Form an impression from experience




              LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   3
Real Users




     • Get delighted
     • Get frustrated
     • Have credit cards
     • ... that they are attached to
     • Form an impression from experience




              LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   3
Real Users




     • Get delighted
     • Get frustrated
     • Have credit cards
     • ... that they are attached to
     • Form an impression from experience




              LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   3
What can we measure?




LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   4
Anything that the user does!




LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   5
Anything that the user does!
           (in the browser)




LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   5
But we really care about performance here. . .




     LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   6
So let’s talk about How




LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   7
Modern Browsers – no problem




           LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   8
Modern Browsers – no problem




           LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   9
Real Users don’t always use the latest browsers.




      LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   10
What about older browsers?




    1   Get a timestamp before they leave a page
    2   Save it in a cookie
    3   Compare with timestamp when the page loads




              LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   11
What about older browsers?




    1   Get a timestamp before they leave a page
    2   Save it in a cookie
    3   Compare with timestamp when the page loads
   Then there’s some magic to handle edge-cases




              LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   11
The magic. . . ...




               LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   12
But it doesn’t need to be. . .




        http://lognormal.github.com/boomerang/doc/




              LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   13
boomerang




    • BSD licensed
    • Measure load time, bandwidth, latency
    • DNS lookup time, NavTiming, Connection Type
    • Page Parameters
    • And anything else you can write a plugin for




            LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   14
And it beacons all of this back to a predefined URL




        LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   15
So what then?




LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   16
Sparse Distribution




            LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   17
Log-normal distribution




            LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   18
Bimodal distribution




            LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   19
Distributions




     • Sparse distribution suggests that you don’t have enough
       data points
     • Log-normal distribution is typical
     • Bi-modal distribution suggests two (or more) distributions
       combined




                LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   20
Distributions are interesting, but how does it affect
                   engagement?




        LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   21
So we compared load time to bounce rate




   LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   22
And we borrowed a biological term called LD50




      LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   23
LD50




       LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   24
This helps you fix only the stuff that’s hurting you.




        LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   25
Did you know that IE7 seems to be faster than IE8?




        LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   26
But that’s mostly IE9 users browsing in IE7
           compatibility mode.




    LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   27
Did you know that users bounce if a page is too
                   fast?




      LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   28
But that’s mostly because error pages are the fastest.




         LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   29
Did you know that user patience wrt performance is
               a cultural thing?




        LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   30
It’s tied both to where a user is from, and also the
                  type of service.




       LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   31
Demo?




LSPE Meetup / 2013-01-17    Measuring the Performance Experienced by Real Users   32
Summary




   1   Measure the load time experienced by real users
   2   Correlate it with other things that user did
   3   Profit




               LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   33
Summary




   1   Measure the load time experienced by real users
   2   Correlate it with other things that user did
   3   Profit




               LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   33
Summary




   1   Measure the load time experienced by real users
   2   Correlate it with other things that user did
   3   Profit




               LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   33
Thank You!
                     Questions?




LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   34
• Philip Tellis
• @bluesmoon
• philip@bluesmoon.info
• www.SOASTA.com
• boomerang
• LogNormal Blog




         LSPE Meetup / 2013-01-17   Measuring the Performance Experienced by Real Users   35

More Related Content

More from Philip Tellis

Frontend Performance: Beginner to Expert to Crazy Person
Frontend Performance: Beginner to Expert to Crazy PersonFrontend Performance: Beginner to Expert to Crazy Person
Frontend Performance: Beginner to Expert to Crazy PersonPhilip Tellis
 
RUM Distillation 101 -- Part I
RUM Distillation 101 -- Part IRUM Distillation 101 -- Part I
RUM Distillation 101 -- Part IPhilip Tellis
 
Improving 3rd Party Script Performance With IFrames
Improving 3rd Party Script Performance With IFramesImproving 3rd Party Script Performance With IFrames
Improving 3rd Party Script Performance With IFramesPhilip Tellis
 
Abusing JavaScript to measure Web Performance, or, "how does boomerang work?"
Abusing JavaScript to measure Web Performance, or, "how does boomerang work?"Abusing JavaScript to measure Web Performance, or, "how does boomerang work?"
Abusing JavaScript to measure Web Performance, or, "how does boomerang work?"Philip Tellis
 
The Statistics of Web Performance Analysis
The Statistics of Web Performance AnalysisThe Statistics of Web Performance Analysis
The Statistics of Web Performance AnalysisPhilip Tellis
 
Abusing JavaScript to Measure Web Performance
Abusing JavaScript to Measure Web PerformanceAbusing JavaScript to Measure Web Performance
Abusing JavaScript to Measure Web PerformancePhilip Tellis
 
Analysing network characteristics with JavaScript
Analysing network characteristics with JavaScriptAnalysing network characteristics with JavaScript
Analysing network characteristics with JavaScriptPhilip Tellis
 
A Node.JS bag of goodies for analyzing Web Traffic
A Node.JS bag of goodies for analyzing Web TrafficA Node.JS bag of goodies for analyzing Web Traffic
A Node.JS bag of goodies for analyzing Web TrafficPhilip Tellis
 
Messing with JavaScript and the DOM to measure network characteristics
Messing with JavaScript and the DOM to measure network characteristicsMessing with JavaScript and the DOM to measure network characteristics
Messing with JavaScript and the DOM to measure network characteristicsPhilip Tellis
 
Boomerang: How fast do users think your site is?
Boomerang: How fast do users think your site is?Boomerang: How fast do users think your site is?
Boomerang: How fast do users think your site is?Philip Tellis
 
Boomerang at FOSS.IN/2010
Boomerang at FOSS.IN/2010Boomerang at FOSS.IN/2010
Boomerang at FOSS.IN/2010Philip Tellis
 
Measuring the web with Boomerang (YUIConf 2010)
Measuring the web with Boomerang (YUIConf 2010)Measuring the web with Boomerang (YUIConf 2010)
Measuring the web with Boomerang (YUIConf 2010)Philip Tellis
 
Boomerang at the Boston Web Performance meetup
Boomerang at the Boston Web Performance meetupBoomerang at the Boston Web Performance meetup
Boomerang at the Boston Web Performance meetupPhilip Tellis
 
Boomerang @ NY Web Perf meetup
Boomerang @ NY Web Perf meetupBoomerang @ NY Web Perf meetup
Boomerang @ NY Web Perf meetupPhilip Tellis
 
Measuring the web with boomerang
Measuring the web with boomerangMeasuring the web with boomerang
Measuring the web with boomerangPhilip Tellis
 
MySQL Business Continuity Planning
MySQL Business Continuity PlanningMySQL Business Continuity Planning
MySQL Business Continuity PlanningPhilip Tellis
 

More from Philip Tellis (20)

Frontend Performance: Beginner to Expert to Crazy Person
Frontend Performance: Beginner to Expert to Crazy PersonFrontend Performance: Beginner to Expert to Crazy Person
Frontend Performance: Beginner to Expert to Crazy Person
 
mmm... beacons
mmm... beaconsmmm... beacons
mmm... beacons
 
RUM Distillation 101 -- Part I
RUM Distillation 101 -- Part IRUM Distillation 101 -- Part I
RUM Distillation 101 -- Part I
 
Improving 3rd Party Script Performance With IFrames
Improving 3rd Party Script Performance With IFramesImproving 3rd Party Script Performance With IFrames
Improving 3rd Party Script Performance With IFrames
 
Extending Boomerang
Extending BoomerangExtending Boomerang
Extending Boomerang
 
Abusing JavaScript to measure Web Performance, or, "how does boomerang work?"
Abusing JavaScript to measure Web Performance, or, "how does boomerang work?"Abusing JavaScript to measure Web Performance, or, "how does boomerang work?"
Abusing JavaScript to measure Web Performance, or, "how does boomerang work?"
 
The Statistics of Web Performance Analysis
The Statistics of Web Performance AnalysisThe Statistics of Web Performance Analysis
The Statistics of Web Performance Analysis
 
Abusing JavaScript to Measure Web Performance
Abusing JavaScript to Measure Web PerformanceAbusing JavaScript to Measure Web Performance
Abusing JavaScript to Measure Web Performance
 
Rum for Breakfast
Rum for BreakfastRum for Breakfast
Rum for Breakfast
 
Analysing network characteristics with JavaScript
Analysing network characteristics with JavaScriptAnalysing network characteristics with JavaScript
Analysing network characteristics with JavaScript
 
A Node.JS bag of goodies for analyzing Web Traffic
A Node.JS bag of goodies for analyzing Web TrafficA Node.JS bag of goodies for analyzing Web Traffic
A Node.JS bag of goodies for analyzing Web Traffic
 
Input sanitization
Input sanitizationInput sanitization
Input sanitization
 
Messing with JavaScript and the DOM to measure network characteristics
Messing with JavaScript and the DOM to measure network characteristicsMessing with JavaScript and the DOM to measure network characteristics
Messing with JavaScript and the DOM to measure network characteristics
 
Boomerang: How fast do users think your site is?
Boomerang: How fast do users think your site is?Boomerang: How fast do users think your site is?
Boomerang: How fast do users think your site is?
 
Boomerang at FOSS.IN/2010
Boomerang at FOSS.IN/2010Boomerang at FOSS.IN/2010
Boomerang at FOSS.IN/2010
 
Measuring the web with Boomerang (YUIConf 2010)
Measuring the web with Boomerang (YUIConf 2010)Measuring the web with Boomerang (YUIConf 2010)
Measuring the web with Boomerang (YUIConf 2010)
 
Boomerang at the Boston Web Performance meetup
Boomerang at the Boston Web Performance meetupBoomerang at the Boston Web Performance meetup
Boomerang at the Boston Web Performance meetup
 
Boomerang @ NY Web Perf meetup
Boomerang @ NY Web Perf meetupBoomerang @ NY Web Perf meetup
Boomerang @ NY Web Perf meetup
 
Measuring the web with boomerang
Measuring the web with boomerangMeasuring the web with boomerang
Measuring the web with boomerang
 
MySQL Business Continuity Planning
MySQL Business Continuity PlanningMySQL Business Continuity Planning
MySQL Business Continuity Planning
 

Recently uploaded

CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)Samir Dash
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard37
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxRemote DBA Services
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 

Recently uploaded (20)

CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 

Measuring the Performance Experienced by Real Users

  • 1. • Philip Tellis • @bluesmoon • philip@bluesmoon.info • SOASTA • boomerang LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 1
  • 2. Measuring the Performance Experienced by Real Users Philip Tellis / philip@bluesmoon.info LSPE Meetup / 2013-01-17 LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 2
  • 3. Real Users LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 3
  • 4. Real Users • Get delighted • Get frustrated • Have credit cards • ... that they are attached to • Form an impression from experience LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 3
  • 5. Real Users • Get delighted • Get frustrated • Have credit cards • ... that they are attached to • Form an impression from experience LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 3
  • 6. Real Users • Get delighted • Get frustrated • Have credit cards • ... that they are attached to • Form an impression from experience LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 3
  • 7. Real Users • Get delighted • Get frustrated • Have credit cards • ... that they are attached to • Form an impression from experience LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 3
  • 8. Real Users • Get delighted • Get frustrated • Have credit cards • ... that they are attached to • Form an impression from experience LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 3
  • 9. What can we measure? LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 4
  • 10. Anything that the user does! LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 5
  • 11. Anything that the user does! (in the browser) LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 5
  • 12. But we really care about performance here. . . LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 6
  • 13. So let’s talk about How LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 7
  • 14. Modern Browsers – no problem LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 8
  • 15. Modern Browsers – no problem LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 9
  • 16. Real Users don’t always use the latest browsers. LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 10
  • 17. What about older browsers? 1 Get a timestamp before they leave a page 2 Save it in a cookie 3 Compare with timestamp when the page loads LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 11
  • 18. What about older browsers? 1 Get a timestamp before they leave a page 2 Save it in a cookie 3 Compare with timestamp when the page loads Then there’s some magic to handle edge-cases LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 11
  • 19. The magic. . . ... LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 12
  • 20. But it doesn’t need to be. . . http://lognormal.github.com/boomerang/doc/ LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 13
  • 21. boomerang • BSD licensed • Measure load time, bandwidth, latency • DNS lookup time, NavTiming, Connection Type • Page Parameters • And anything else you can write a plugin for LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 14
  • 22. And it beacons all of this back to a predefined URL LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 15
  • 23. So what then? LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 16
  • 24. Sparse Distribution LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 17
  • 25. Log-normal distribution LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 18
  • 26. Bimodal distribution LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 19
  • 27. Distributions • Sparse distribution suggests that you don’t have enough data points • Log-normal distribution is typical • Bi-modal distribution suggests two (or more) distributions combined LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 20
  • 28. Distributions are interesting, but how does it affect engagement? LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 21
  • 29. So we compared load time to bounce rate LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 22
  • 30. And we borrowed a biological term called LD50 LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 23
  • 31. LD50 LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 24
  • 32. This helps you fix only the stuff that’s hurting you. LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 25
  • 33. Did you know that IE7 seems to be faster than IE8? LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 26
  • 34. But that’s mostly IE9 users browsing in IE7 compatibility mode. LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 27
  • 35. Did you know that users bounce if a page is too fast? LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 28
  • 36. But that’s mostly because error pages are the fastest. LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 29
  • 37. Did you know that user patience wrt performance is a cultural thing? LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 30
  • 38. It’s tied both to where a user is from, and also the type of service. LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 31
  • 39. Demo? LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 32
  • 40. Summary 1 Measure the load time experienced by real users 2 Correlate it with other things that user did 3 Profit LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 33
  • 41. Summary 1 Measure the load time experienced by real users 2 Correlate it with other things that user did 3 Profit LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 33
  • 42. Summary 1 Measure the load time experienced by real users 2 Correlate it with other things that user did 3 Profit LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 33
  • 43. Thank You! Questions? LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 34
  • 44. • Philip Tellis • @bluesmoon • philip@bluesmoon.info • www.SOASTA.com • boomerang • LogNormal Blog LSPE Meetup / 2013-01-17 Measuring the Performance Experienced by Real Users 35