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

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 

Recently uploaded (20)

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 

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