SlideShare a Scribd company logo
1 of 44
Download to read offline
Extending Boomerang

  Philip Tellis / philip@bluesmoon.info



           HTML5 Dev Conf / 2013-04-02




HTML5 Dev Conf / 2013-04-02   Extending Boomerang   1
• Philip Tellis
• @bluesmoon
• philip@bluesmoon.info
• performance / security
• javascript




       HTML5 Dev Conf / 2013-04-02   Extending Boomerang   2
I really like to study performance on the web




   HTML5 Dev Conf / 2013-04-02   Extending Boomerang   3
0
                       History



HTML5 Dev Conf / 2013-04-02   Extending Boomerang   4
Jean-Antoine Nollet – 1746




          HTML5 Dev Conf / 2013-04-02   Extending Boomerang   5
260 years later. . .




HTML5 Dev Conf / 2013-04-02   Extending Boomerang   6
Measure real user to get the real picture




           HTML5 Dev Conf / 2013-04-02   Extending Boomerang   7
Real Users




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




             HTML5 Dev Conf / 2013-04-02   Extending Boomerang   8
Real Users




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




             HTML5 Dev Conf / 2013-04-02   Extending Boomerang   8
Real Users




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




             HTML5 Dev Conf / 2013-04-02   Extending Boomerang   8
Real Users




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




             HTML5 Dev Conf / 2013-04-02   Extending Boomerang   8
Real Users




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




             HTML5 Dev Conf / 2013-04-02   Extending Boomerang   8
1
                  boomerang



HTML5 Dev Conf / 2013-04-02   Extending Boomerang   9
Real User Measurement
                 –
  github.com/lognormal/boomerang




HTML5 Dev Conf / 2013-04-02   Extending Boomerang   10
What can we measure?




HTML5 Dev Conf / 2013-04-02   Extending Boomerang   11
Anything that the user does!




HTML5 Dev Conf / 2013-04-02   Extending Boomerang   12
NavTiming – W3C Candidate Recommendation




         HTML5 Dev Conf / 2013-04-02   Extending Boomerang   13
Browser Support for NavTiming – April 2013




          HTML5 Dev Conf / 2013-04-02   Extending Boomerang   14
Real Users don’t always use ideal browsers




  HTML5 Dev Conf / 2013-04-02   Extending Boomerang   15
So there’s a lot of magic to support the other 33.2%




       HTML5 Dev Conf / 2013-04-02   Extending Boomerang   16
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




            HTML5 Dev Conf / 2013-04-02   Extending Boomerang   17
And it beacons all of this back to a predefined URL




      HTML5 Dev Conf / 2013-04-02   Extending Boomerang   18
boomerang is only a beaconing system, functionality
              is added with plugins




      HTML5 Dev Conf / 2013-04-02   Extending Boomerang   19
2
          Let’s get hacking



HTML5 Dev Conf / 2013-04-02   Extending Boomerang   20
Get the code from github




      https://github.com/bluesmoon/boomerang-sample-plugin

     • branches are steps
     • commit logs are explanations




           HTML5 Dev Conf / 2013-04-02   Extending Boomerang   21
3
                     Fun stuff



HTML5 Dev Conf / 2013-04-02   Extending Boomerang   22
Spot the datacenter




           HTML5 Dev Conf / 2013-04-02   Extending Boomerang   23
It’s actually in Nederland




           HTML5 Dev Conf / 2013-04-02   Extending Boomerang   24
How does bandwidth change around the world?




          HTML5 Dev Conf / 2013-04-02   Extending Boomerang   25
What does a website’s performance distribution look
                      like?




      HTML5 Dev Conf / 2013-04-02   Extending Boomerang   26
That’s my Blog (please visit)




           HTML5 Dev Conf / 2013-04-02   Extending Boomerang   27
Log-normal distribution




           HTML5 Dev Conf / 2013-04-02   Extending Boomerang   28
Bimodal distribution




           HTML5 Dev Conf / 2013-04-02   Extending Boomerang   29
Did you know that IE7 seems to be faster than IE8?




      HTML5 Dev Conf / 2013-04-02   Extending Boomerang   30
But that’s mostly IE9 users browsing in IE7
           compatibility mode.




  HTML5 Dev Conf / 2013-04-02   Extending Boomerang   31
Did you know that users bounce if a page is too
                   fast?




    HTML5 Dev Conf / 2013-04-02   Extending Boomerang   32
But that’s mostly because error pages are the fastest.




       HTML5 Dev Conf / 2013-04-02   Extending Boomerang   33
Did you know that user patience wrt performance is
               a cultural thing?




      HTML5 Dev Conf / 2013-04-02   Extending Boomerang   34
It’s tied both to where a user is from, and also the
                  type of service.




     HTML5 Dev Conf / 2013-04-02   Extending Boomerang   35
User Engagement: LD50




         HTML5 Dev Conf / 2013-04-02   Extending Boomerang   36
Summary




      Measure → Hypothesize → Test → Fix
                ← Repeat ←




          HTML5 Dev Conf / 2013-04-02   Extending Boomerang   37
Thank You!
                        Questions?




HTML5 Dev Conf / 2013-04-02   Extending Boomerang   38
Sources




     • Jean-Antoine Nollet from Wikimedia Commons
       http://commons.wikimedia.org/wiki/File%3AJean-Antoine_Nollet.jpg

     • Steve Souders by weboo on flickr
       http://www.flickr.com/photos/weboo/2539831515/




               HTML5 Dev Conf / 2013-04-02        Extending Boomerang     39
• Philip Tellis
• @bluesmoon
• philip@bluesmoon.info
• www.SOASTA.com
• boomerang
• LogNormal Blog




       HTML5 Dev Conf / 2013-04-02   Extending Boomerang   40

More Related Content

Similar to Extending Boomerang Real User Measurement

Optimizing developer onboarding
Optimizing developer onboardingOptimizing developer onboarding
Optimizing developer onboarding🌯 Brian Douglas
 
Selenium 4 ukraine keynote slides
Selenium 4 ukraine keynote   slidesSelenium 4 ukraine keynote   slides
Selenium 4 ukraine keynote slidesMarcus Merrell
 
Hybrid Training Models that Work
Hybrid Training Models that Work Hybrid Training Models that Work
Hybrid Training Models that Work Cynthia Clay
 
Hybrid Training Models that Work
Hybrid Training Models that Work Hybrid Training Models that Work
Hybrid Training Models that Work Cynthia Clay
 
A Reference Architecture to Enable Visibility and Traceability across the Ent...
A Reference Architecture to Enable Visibility and Traceability across the Ent...A Reference Architecture to Enable Visibility and Traceability across the Ent...
A Reference Architecture to Enable Visibility and Traceability across the Ent...CollabNet
 
SharePoint 2013 Video, Audio and Images and Digital Asset Management with Joe...
SharePoint 2013 Video, Audio and Images and Digital Asset Management with Joe...SharePoint 2013 Video, Audio and Images and Digital Asset Management with Joe...
SharePoint 2013 Video, Audio and Images and Digital Asset Management with Joe...Joel Oleson
 
Big bluebutton moodle integration 2013b
Big bluebutton moodle integration 2013bBig bluebutton moodle integration 2013b
Big bluebutton moodle integration 2013bbigbluebutton
 
Microservices to FastData in the Enterprise with Spring: John Davies at Sprin...
Microservices to FastData in the Enterprise with Spring: John Davies at Sprin...Microservices to FastData in the Enterprise with Spring: John Davies at Sprin...
Microservices to FastData in the Enterprise with Spring: John Davies at Sprin...C24 Technologies
 
Six Simple Steps to Service Level Objectives (SLOs)
Six Simple Steps to Service Level Objectives (SLOs)Six Simple Steps to Service Level Objectives (SLOs)
Six Simple Steps to Service Level Objectives (SLOs)VMware Tanzu
 
Releaseflow: a healthy build and deploy process
Releaseflow: a healthy build and deploy processReleaseflow: a healthy build and deploy process
Releaseflow: a healthy build and deploy processChristopher Cundill
 
WI Azure User Group Meeting
WI Azure User Group MeetingWI Azure User Group Meeting
WI Azure User Group MeetingClark Sell
 
Webinar: Capabilities, Confidence and Community – What Flux GA Means for You
Webinar: Capabilities, Confidence and Community – What Flux GA Means for YouWebinar: Capabilities, Confidence and Community – What Flux GA Means for You
Webinar: Capabilities, Confidence and Community – What Flux GA Means for YouWeaveworks
 
Why you should care about Go (Golang)
Why you should care about Go (Golang)Why you should care about Go (Golang)
Why you should care about Go (Golang)Aaron Schlesinger
 
HTML5 - The Good, the Bad, the Ugly
HTML5 - The Good, the Bad, the UglyHTML5 - The Good, the Bad, the Ugly
HTML5 - The Good, the Bad, the UglyMario Heiderich
 
html5 css3 the future of web technology
html5 css3 the future of web technologyhtml5 css3 the future of web technology
html5 css3 the future of web technologyhazzaz
 
Git Branching – the battle of the ages
Git Branching – the battle of the agesGit Branching – the battle of the ages
Git Branching – the battle of the agesJasmin Fluri
 
Build your next application in weeks and not months with Groovy and Grails
Build your next application in weeks and not months with Groovy and GrailsBuild your next application in weeks and not months with Groovy and Grails
Build your next application in weeks and not months with Groovy and GrailsPeople10 Technosoft Private Limited
 
From Commit to Cloud w/ GitLab and PDF
From Commit to Cloud w/ GitLab and PDFFrom Commit to Cloud w/ GitLab and PDF
From Commit to Cloud w/ GitLab and PDFVMware Tanzu
 

Similar to Extending Boomerang Real User Measurement (20)

Optimizing developer onboarding
Optimizing developer onboardingOptimizing developer onboarding
Optimizing developer onboarding
 
Selenium 4 ukraine keynote slides
Selenium 4 ukraine keynote   slidesSelenium 4 ukraine keynote   slides
Selenium 4 ukraine keynote slides
 
Hybrid Training Models that Work
Hybrid Training Models that Work Hybrid Training Models that Work
Hybrid Training Models that Work
 
Hybrid Training Models that Work
Hybrid Training Models that Work Hybrid Training Models that Work
Hybrid Training Models that Work
 
A Reference Architecture to Enable Visibility and Traceability across the Ent...
A Reference Architecture to Enable Visibility and Traceability across the Ent...A Reference Architecture to Enable Visibility and Traceability across the Ent...
A Reference Architecture to Enable Visibility and Traceability across the Ent...
 
SharePoint 2013 Video, Audio and Images and Digital Asset Management with Joe...
SharePoint 2013 Video, Audio and Images and Digital Asset Management with Joe...SharePoint 2013 Video, Audio and Images and Digital Asset Management with Joe...
SharePoint 2013 Video, Audio and Images and Digital Asset Management with Joe...
 
Big bluebutton moodle integration 2013b
Big bluebutton moodle integration 2013bBig bluebutton moodle integration 2013b
Big bluebutton moodle integration 2013b
 
Microservices to FastData in the Enterprise with Spring: John Davies at Sprin...
Microservices to FastData in the Enterprise with Spring: John Davies at Sprin...Microservices to FastData in the Enterprise with Spring: John Davies at Sprin...
Microservices to FastData in the Enterprise with Spring: John Davies at Sprin...
 
Six Simple Steps to Service Level Objectives (SLOs)
Six Simple Steps to Service Level Objectives (SLOs)Six Simple Steps to Service Level Objectives (SLOs)
Six Simple Steps to Service Level Objectives (SLOs)
 
Releaseflow: a healthy build and deploy process
Releaseflow: a healthy build and deploy processReleaseflow: a healthy build and deploy process
Releaseflow: a healthy build and deploy process
 
WI Azure User Group Meeting
WI Azure User Group MeetingWI Azure User Group Meeting
WI Azure User Group Meeting
 
Webinar: Capabilities, Confidence and Community – What Flux GA Means for You
Webinar: Capabilities, Confidence and Community – What Flux GA Means for YouWebinar: Capabilities, Confidence and Community – What Flux GA Means for You
Webinar: Capabilities, Confidence and Community – What Flux GA Means for You
 
Announcing Saleslogix 8.1
Announcing Saleslogix 8.1Announcing Saleslogix 8.1
Announcing Saleslogix 8.1
 
Video Versioning
Video VersioningVideo Versioning
Video Versioning
 
Why you should care about Go (Golang)
Why you should care about Go (Golang)Why you should care about Go (Golang)
Why you should care about Go (Golang)
 
HTML5 - The Good, the Bad, the Ugly
HTML5 - The Good, the Bad, the UglyHTML5 - The Good, the Bad, the Ugly
HTML5 - The Good, the Bad, the Ugly
 
html5 css3 the future of web technology
html5 css3 the future of web technologyhtml5 css3 the future of web technology
html5 css3 the future of web technology
 
Git Branching – the battle of the ages
Git Branching – the battle of the agesGit Branching – the battle of the ages
Git Branching – the battle of the ages
 
Build your next application in weeks and not months with Groovy and Grails
Build your next application in weeks and not months with Groovy and GrailsBuild your next application in weeks and not months with Groovy and Grails
Build your next application in weeks and not months with Groovy and Grails
 
From Commit to Cloud w/ GitLab and PDF
From Commit to Cloud w/ GitLab and PDFFrom Commit to Cloud w/ GitLab and PDF
From Commit to Cloud w/ GitLab and PDF
 

More from Philip Tellis

Improving D3 Performance with CANVAS and other Hacks
Improving D3 Performance with CANVAS and other HacksImproving D3 Performance with CANVAS and other Hacks
Improving D3 Performance with CANVAS and other HacksPhilip 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
 
Frontend Performance: De débutant à Expert à Fou Furieux
Frontend Performance: De débutant à Expert à Fou FurieuxFrontend Performance: De débutant à Expert à Fou Furieux
Frontend Performance: De débutant à Expert à Fou FurieuxPhilip Tellis
 
Frontend Performance: Expert to Crazy Person
Frontend Performance: Expert to Crazy PersonFrontend Performance: Expert to Crazy Person
Frontend Performance: Expert to Crazy PersonPhilip Tellis
 
Beyond Page Level Metrics
Beyond Page Level MetricsBeyond Page Level Metrics
Beyond Page Level MetricsPhilip Tellis
 
Frontend Performance: Beginner to Expert to Crazy Person (San Diego Web Perf ...
Frontend Performance: Beginner to Expert to Crazy Person (San Diego Web Perf ...Frontend Performance: Beginner to Expert to Crazy Person (San Diego Web Perf ...
Frontend Performance: Beginner to Expert to Crazy Person (San Diego Web Perf ...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
 
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
 
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
 

More from Philip Tellis (20)

Improving D3 Performance with CANVAS and other Hacks
Improving D3 Performance with CANVAS and other HacksImproving D3 Performance with CANVAS and other Hacks
Improving D3 Performance with CANVAS and other Hacks
 
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
 
Frontend Performance: De débutant à Expert à Fou Furieux
Frontend Performance: De débutant à Expert à Fou FurieuxFrontend Performance: De débutant à Expert à Fou Furieux
Frontend Performance: De débutant à Expert à Fou Furieux
 
Frontend Performance: Expert to Crazy Person
Frontend Performance: Expert to Crazy PersonFrontend Performance: Expert to Crazy Person
Frontend Performance: Expert to Crazy Person
 
Beyond Page Level Metrics
Beyond Page Level MetricsBeyond Page Level Metrics
Beyond Page Level Metrics
 
Frontend Performance: Beginner to Expert to Crazy Person (San Diego Web Perf ...
Frontend Performance: Beginner to Expert to Crazy Person (San Diego Web Perf ...Frontend Performance: Beginner to Expert to Crazy Person (San Diego Web Perf ...
Frontend Performance: Beginner to Expert to Crazy Person (San Diego Web Perf ...
 
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
 
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
 
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
 
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
 

Recently uploaded

Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Karmanjay Verma
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxfnnc6jmgwh
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPathCommunity
 
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sectoritnewsafrica
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Nikki Chapple
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Jeffrey Haguewood
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI AgeCprime
 
Kuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialKuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialJoão Esperancinha
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Nikki Chapple
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsYoss Cohen
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...BookNet Canada
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesThousandEyes
 

Recently uploaded (20)

Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptxGenerative AI - Gitex v1Generative AI - Gitex v1.pptx
Generative AI - Gitex v1Generative AI - Gitex v1.pptx
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
UiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to HeroUiPath Community: Communication Mining from Zero to Hero
UiPath Community: Communication Mining from Zero to Hero
 
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
4. Cobus Valentine- Cybersecurity Threats and Solutions for the Public Sector
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
Microsoft 365 Copilot: How to boost your productivity with AI – Part two: Dat...
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
 
A Framework for Development in the AI Age
A Framework for Development in the AI AgeA Framework for Development in the AI Age
A Framework for Development in the AI Age
 
Kuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorialKuma Meshes Part I - The basics - A tutorial
Kuma Meshes Part I - The basics - A tutorial
 
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
Microsoft 365 Copilot: How to boost your productivity with AI – Part one: Ado...
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyesAssure Ecommerce and Retail Operations Uptime with ThousandEyes
Assure Ecommerce and Retail Operations Uptime with ThousandEyes
 

Extending Boomerang Real User Measurement

  • 1. Extending Boomerang Philip Tellis / philip@bluesmoon.info HTML5 Dev Conf / 2013-04-02 HTML5 Dev Conf / 2013-04-02 Extending Boomerang 1
  • 2. • Philip Tellis • @bluesmoon • philip@bluesmoon.info • performance / security • javascript HTML5 Dev Conf / 2013-04-02 Extending Boomerang 2
  • 3. I really like to study performance on the web HTML5 Dev Conf / 2013-04-02 Extending Boomerang 3
  • 4. 0 History HTML5 Dev Conf / 2013-04-02 Extending Boomerang 4
  • 5. Jean-Antoine Nollet – 1746 HTML5 Dev Conf / 2013-04-02 Extending Boomerang 5
  • 6. 260 years later. . . HTML5 Dev Conf / 2013-04-02 Extending Boomerang 6
  • 7. Measure real user to get the real picture HTML5 Dev Conf / 2013-04-02 Extending Boomerang 7
  • 8. Real Users • Get delighted • Get frustrated • Have credit cards • ... that they are attached to • Form an impression from experience HTML5 Dev Conf / 2013-04-02 Extending Boomerang 8
  • 9. Real Users • Get delighted • Get frustrated • Have credit cards • ... that they are attached to • Form an impression from experience HTML5 Dev Conf / 2013-04-02 Extending Boomerang 8
  • 10. Real Users • Get delighted • Get frustrated • Have credit cards • ... that they are attached to • Form an impression from experience HTML5 Dev Conf / 2013-04-02 Extending Boomerang 8
  • 11. Real Users • Get delighted • Get frustrated • Have credit cards • ... that they are attached to • Form an impression from experience HTML5 Dev Conf / 2013-04-02 Extending Boomerang 8
  • 12. Real Users • Get delighted • Get frustrated • Have credit cards • ... that they are attached to • Form an impression from experience HTML5 Dev Conf / 2013-04-02 Extending Boomerang 8
  • 13. 1 boomerang HTML5 Dev Conf / 2013-04-02 Extending Boomerang 9
  • 14. Real User Measurement – github.com/lognormal/boomerang HTML5 Dev Conf / 2013-04-02 Extending Boomerang 10
  • 15. What can we measure? HTML5 Dev Conf / 2013-04-02 Extending Boomerang 11
  • 16. Anything that the user does! HTML5 Dev Conf / 2013-04-02 Extending Boomerang 12
  • 17. NavTiming – W3C Candidate Recommendation HTML5 Dev Conf / 2013-04-02 Extending Boomerang 13
  • 18. Browser Support for NavTiming – April 2013 HTML5 Dev Conf / 2013-04-02 Extending Boomerang 14
  • 19. Real Users don’t always use ideal browsers HTML5 Dev Conf / 2013-04-02 Extending Boomerang 15
  • 20. So there’s a lot of magic to support the other 33.2% HTML5 Dev Conf / 2013-04-02 Extending Boomerang 16
  • 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 HTML5 Dev Conf / 2013-04-02 Extending Boomerang 17
  • 22. And it beacons all of this back to a predefined URL HTML5 Dev Conf / 2013-04-02 Extending Boomerang 18
  • 23. boomerang is only a beaconing system, functionality is added with plugins HTML5 Dev Conf / 2013-04-02 Extending Boomerang 19
  • 24. 2 Let’s get hacking HTML5 Dev Conf / 2013-04-02 Extending Boomerang 20
  • 25. Get the code from github https://github.com/bluesmoon/boomerang-sample-plugin • branches are steps • commit logs are explanations HTML5 Dev Conf / 2013-04-02 Extending Boomerang 21
  • 26. 3 Fun stuff HTML5 Dev Conf / 2013-04-02 Extending Boomerang 22
  • 27. Spot the datacenter HTML5 Dev Conf / 2013-04-02 Extending Boomerang 23
  • 28. It’s actually in Nederland HTML5 Dev Conf / 2013-04-02 Extending Boomerang 24
  • 29. How does bandwidth change around the world? HTML5 Dev Conf / 2013-04-02 Extending Boomerang 25
  • 30. What does a website’s performance distribution look like? HTML5 Dev Conf / 2013-04-02 Extending Boomerang 26
  • 31. That’s my Blog (please visit) HTML5 Dev Conf / 2013-04-02 Extending Boomerang 27
  • 32. Log-normal distribution HTML5 Dev Conf / 2013-04-02 Extending Boomerang 28
  • 33. Bimodal distribution HTML5 Dev Conf / 2013-04-02 Extending Boomerang 29
  • 34. Did you know that IE7 seems to be faster than IE8? HTML5 Dev Conf / 2013-04-02 Extending Boomerang 30
  • 35. But that’s mostly IE9 users browsing in IE7 compatibility mode. HTML5 Dev Conf / 2013-04-02 Extending Boomerang 31
  • 36. Did you know that users bounce if a page is too fast? HTML5 Dev Conf / 2013-04-02 Extending Boomerang 32
  • 37. But that’s mostly because error pages are the fastest. HTML5 Dev Conf / 2013-04-02 Extending Boomerang 33
  • 38. Did you know that user patience wrt performance is a cultural thing? HTML5 Dev Conf / 2013-04-02 Extending Boomerang 34
  • 39. It’s tied both to where a user is from, and also the type of service. HTML5 Dev Conf / 2013-04-02 Extending Boomerang 35
  • 40. User Engagement: LD50 HTML5 Dev Conf / 2013-04-02 Extending Boomerang 36
  • 41. Summary Measure → Hypothesize → Test → Fix ← Repeat ← HTML5 Dev Conf / 2013-04-02 Extending Boomerang 37
  • 42. Thank You! Questions? HTML5 Dev Conf / 2013-04-02 Extending Boomerang 38
  • 43. Sources • Jean-Antoine Nollet from Wikimedia Commons http://commons.wikimedia.org/wiki/File%3AJean-Antoine_Nollet.jpg • Steve Souders by weboo on flickr http://www.flickr.com/photos/weboo/2539831515/ HTML5 Dev Conf / 2013-04-02 Extending Boomerang 39
  • 44. • Philip Tellis • @bluesmoon • philip@bluesmoon.info • www.SOASTA.com • boomerang • LogNormal Blog HTML5 Dev Conf / 2013-04-02 Extending Boomerang 40