SlideShare une entreprise Scribd logo
1  sur  109
Metrics, metrics everywhere
(but where the heck do you start?)
@tameverts @cliffcrocker
#velocityconf
Who cares about performance today?
How do I measure performance?
How fast am I?
How fast should I be?
How do I get there?
The myth of a single metric
Start render DNS TCP TTFB
DOM loading DOM ready Page load Fully loaded
User timing Resource timing Requests Bytes in
Speed Index Pagespeed score 1s = $$ DOM elements
DOM size Visually complete Redirect SSL negotiation
Who cares about performance?
“47% of consumers expect a web
page to load in 2 seconds or less.”
Akamai, 2009
1s = $27M DNS
144ms
Start render
1.59s
Hero image render
2.01s
How do I measure performance?
Androiddevicefragmentation
OpenSignal,August2014
RUM versus plus synthetic
RUM 101
Technology for collecting performance metrics
directly from the end user’s browser
Involves instrumenting your site via JavaScript
Measurements are fired across the network to a
collection point through a small request object
(beacon)
What makes RUM great
 Always on
 Every user, every browser, everywhere
 Able to capture human behavior/events
 Only getting better
Questions your RUM data can answer
What are
my users’
environments?
How do visitors move
through my site?
How are my
third-party scripts
performing in
real time?
What impact does
performance have
on my business?
Synthetic Monitoring 101
Uses automated agents (bots) to measure your
website from different physical locations
A set “path” or URL is defined
Tests are run either ad hoc or scheduled,
and data is collected
What makes synthetic monitoring great
 Rich data collected (waterfall, video,
filmstrip, HTTP headers)
 Consistent “clean room” baseline
 Nothing to install
 Doesn’t require users / ability to
measure pre-production and
competition
Questions your synthetic data can answer
How do I compare to the competition?
How does the
design of my
pages affect
performance?
How does
the newest
version
of my site
compare
to previous
versions?
How well am I sticking to my performance budget?
What if my third parties fail?
Original: 3.5s
SPOF: 22.7s
36© 2014 SOASTA CONFIDENTIAL - All rights reserved.
Why are these numbers so different?
I don’t trust your data. Your numbers are wrong.
How are you calculating page load time?
I can’t share two sets of numbers with the business?
“But it loads so much faster for me!?!”
2015 Macbook Pro
Warm browser cache
FIOS
X86 – Windows 7 VM
Completely cold cache/DNS
Throttled bandwidth
boomerang.js
Episodes
W3C Performance
Working Group
How fast am I?
Navigation Timing API
Browser support for Navigation Timing
45© 2014 SOASTA CONFIDENTIAL - All rights reserved.
Network operations
Front-end developer
Marketing and site operations
Designer
C-level
Use case: Measure
network performance
I need visibility into…
 issues with authoritative DNS servers
 impact of denial of service attacks
on end users
 efficiency of connection re-use
 tier 1 connectivity issues (load balancer,
web server)
Start render DNS TCP TTFB
DOM loading DOM ready Page load Fully loaded
User timing Resource timing Requests Bytes in
Speed Index Pagespeed score 1s = $$ DOM elements
DOM size Visually complete Redirect SSL negotiation
Measuring DNS and TCP
function getPerf() {
var timing = window.performance.timing;
return {
dns: timing.domainLookupEnd -
timing.domainLookupStart};
connect: timing.connectEnd - timing.connectStart};
}
What’s with all those zeros!
 Connection reuse
 DNS caching
 Prefetching
Focus on higher percentiles
85th percentile
Median (50th)
Use case: Measure
front-end browser events
How do I…
 understand the impact of back-end
versus front-end on page speed?
 investigate how DOM complexity affects
performance?
 measure a “fully loaded” page?
Start render DNS TCP TTFB
DOM load event DOM ready Page load Fully loaded
User timing Resource timing Requests Bytes in
Speed Index Pagespeed score 1s = $$ DOM elements
DOM size Visually complete Redirect SSL negotiation
Isolate front-end vs. back-end
Isolate front-end vs. back-end
function getPerf() {
var timing = window.performance.timing;
return {
ttfb: timing.responseStart - timing.connectEnd};
basePage: timing.responseEnd - timing.responseStart};
frontEnd: timing.loadEventStart -
timing.responseEnd};
}
Front-end
Back-end
Investigate DOM events
function getPerf() {
var timing = window.performance.timing;
return {
DLoading: timing.domLoading –
timing.navigationStart};
DInt: timing.domInteractive –
timing.navigationStart};
DContLoaded: timing.domContentLoadedEventEnd –
timing.navigationStart;
DContLoadTime: timing.domContentLoadedEventEnd –
timing.domContentLoadedEventStart};
DComplete: timing.domComplete -
timing.navigationStart};
PLoad: timing.loadEventStart -
2618 DOM nodes
86 DOM nodes
Visualizing DOM complexity
Use case: Measure
object-level performance
I need to understand…
 how third-party content affects my
performance
 how long a group of assets takes to
download
 how assets served by a CDN are
performing
Start render DNS TCP TTFB
DOM loading DOM ready Page load Fully loaded
User timing Resource timing Requests Bytes in
Speed Index Pagespeed score 1s = $$ DOM elements
DOM size Visually complete Redirect SSL negotiation
Resource Timing interface
Browser support for Resource Timing
Cross-Origin Resource Sharing (CORS)
Start/End time only unless Timing-Allow-Origin
HTTP Response Header defined
Timing-Allow-Origin = "Timing-Allow-Origin" ":" origin-list-
or-null | "*"
Resource Timing
var rUrl = ‘http://www.akamai.com/images/img/cliff-crocker-
dualtone-150x150.png’;
var me = performance.getEntriesByName(rUrl)[0];
var timings = {
loadTime: me.duration,
dns: me.domainLookupEnd - me.domainLookupStart,
tcp: me.connectEnd - me.connectStart,
waiting: me.responseStart - me.requestStart,
fetch: me.responseEnd - me.responseStart
}
Measuring a single resource
Other uses for Resource Timing
 Slowest resources
 Time to first image (download)
 Response time by domain
 Time a group of assets
 Response time by initiator type (element type)
 Cache-hit ratio for resources
For examples see: https://github.com/lognormal/beyond-page-metrics
Using Resource Groups
PLT impact not due
resource groups
PLT impact
correlates with
improvement
from image domains
Use case: Measure
the user experience
I just need to understand…
 when users perceive the page to
be ready
 how long until my page begins
to render
 when content above the fold is visible
Start render DNS TCP TTFB
DOM loading DOM ready Page load Fully loaded
User timing Resource timing Requests Bytes in
Speed Index Pagespeed score 1s = $$ DOM elements
DOM size Visually complete Redirect SSL negotiation
The fallacy of “First Paint” in the wild
 Support for First Paint is not standardized between browsers
 Metric can be misleading (i.e. painting a white screen)
First Paint is not equal to Start Render!
Chrome – “First Paint” True Start Render
Start Render and filmstrips
User Timing Interface
 Allows developers to measure performance of
their applications through high-precision
timestamps
 Consists of “marks” and “measures”
 PerformanceMark: Timestamp
 PerformanceMeasure: Duration between
two given marks
Measure duration between two marks
performance.mark(“startTask”);
//Some stuff you want to measure happens here
performance.mark(“stopTask”);
//Measure the duration between the two marks
performance.measure(“taskDuration”,“startTask”,“stopTask”);
How long does it
take to display
the main product
image on my site?
Record when an image loads
<img src=“image1.gif” onload=“performance.mark(‘image1’)”>
For more interesting examples, see:
Measure hero image delay
http://www.stevesouders.com/blog/2015/05/12/hero-image-custom-metrics/
Measure aggregate times to get an “above fold time”
http://blog.patrickmeenan.com/2013/07/measuring-performance-of-user-
experience.html
How do I measure performance
when the onload event no longer
matters?
Use case: Measure
performance of SPAs
onload event
visible resources
Measuring SPAs
• Accept the fact that onload no longer matters
• Tie into routing events of SPA framework
• Measure downloads during soft refreshes
• (support in boomerang.js for Angular and other
SPA frameworks)
See: http://www.soasta.com/blog/angularjs-real-user-
monitoring-single-page-applications/
How fast should I be?
Use case: Measure
business impact
I need to understand…
 how performance affects business KPIs
 how our site compares to our
competitors
Start render DNS TCP TTFB
DOM loading DOM ready Page load Fully loaded
User timing Resource timing Requests Bytes in
Speed Index Pagespeed score 1s = $$ DOM elements
DOM size Visually complete Redirect SSL negotiation
2% increase in conversions
for every 1 second of improvement
Cut load times in half
Increased sales by 13%
So what?
You must look at your own data.
Not all pages are created equal
For a typical
ecommerce site,
conversion rate
drops by up to 50%
when “browse”
pages increase from
1 to 6 seconds
Not all pages are created equal
However, there is
much less impact
to conversion
when “checkout”
pages degrade
Conversion Impact Score
How do I get there?
Create a performance budget
See:
Setting a Performance Budget
http://timkadlec.com/2013/01/setting-a-performance-budget/
Performance Budget Metrics
http://timkadlec.com/2014/11/performance-budget-metrics/
Set meaningful, page-specific SLAs
“Response time measured using resource timing from Chrome
browsers in the United States should not exceed a median
(50th percentile) of 100ms or a 95th percentile of 500ms for
a population of more than 500 users in a 24-hour period.”
“Vendor will make an effort to ensure average response
times for content is within reasonable limits.”
Chapter 8:
Changing Culture
at Your Organization
performancebacon.com
performancebeacon.com
Thanks!
Meet us at booth #801

Contenu connexe

Tendances

WebPagetest Power Users - Velocity 2014
WebPagetest Power Users - Velocity 2014WebPagetest Power Users - Velocity 2014
WebPagetest Power Users - Velocity 2014Patrick Meenan
 
Measuring the visual experience of website performance
Measuring the visual experience of website performanceMeasuring the visual experience of website performance
Measuring the visual experience of website performancePatrick Meenan
 
Measuring web performance
Measuring web performanceMeasuring web performance
Measuring web performancePatrick Meenan
 
Getting the most out of WebPageTest
Getting the most out of WebPageTestGetting the most out of WebPageTest
Getting the most out of WebPageTestPatrick Meenan
 
Hands on performance testing and analysis with web pagetest
Hands on performance testing and analysis with web pagetestHands on performance testing and analysis with web pagetest
Hands on performance testing and analysis with web pagetestPatrick Meenan
 
Velocity 2014 nyc WebPagetest private instances
Velocity 2014 nyc   WebPagetest private instancesVelocity 2014 nyc   WebPagetest private instances
Velocity 2014 nyc WebPagetest private instancesPatrick Meenan
 
Selecting and deploying automated optimization solutions
Selecting and deploying automated optimization solutionsSelecting and deploying automated optimization solutions
Selecting and deploying automated optimization solutionsPatrick Meenan
 
Tracking Performance - Velocity NYC 2013
Tracking Performance - Velocity NYC 2013Tracking Performance - Velocity NYC 2013
Tracking Performance - Velocity NYC 2013Patrick Meenan
 
PageSpeed and SPDY
PageSpeed and SPDYPageSpeed and SPDY
PageSpeed and SPDYBlake Crosby
 
WebPagetest - Good, Bad & Ugly
WebPagetest - Good, Bad & UglyWebPagetest - Good, Bad & Ugly
WebPagetest - Good, Bad & UglyAaron Peters
 
Nantes when its just too slow
Nantes when its just too slowNantes when its just too slow
Nantes when its just too slowDoug Sillars
 
Front-End Single Point of Failure - Velocity 2016 Training
Front-End Single Point of Failure - Velocity 2016 TrainingFront-End Single Point of Failure - Velocity 2016 Training
Front-End Single Point of Failure - Velocity 2016 TrainingPatrick Meenan
 
London Web Performance Meetup: Performance for mortal companies
London Web Performance Meetup: Performance for mortal companiesLondon Web Performance Meetup: Performance for mortal companies
London Web Performance Meetup: Performance for mortal companiesStrangeloop
 
Performance Of Web Applications On Client Machines
Performance Of Web Applications On Client MachinesPerformance Of Web Applications On Client Machines
Performance Of Web Applications On Client MachinesCurelet Marius
 
Apache httpd Reverse Proxy and Tomcat
Apache httpd Reverse Proxy and TomcatApache httpd Reverse Proxy and Tomcat
Apache httpd Reverse Proxy and TomcatJim Jagielski
 
ApacheConNA 2015: Apache httpd 2.4 Reverse Proxy
ApacheConNA 2015: Apache httpd 2.4 Reverse ProxyApacheConNA 2015: Apache httpd 2.4 Reverse Proxy
ApacheConNA 2015: Apache httpd 2.4 Reverse ProxyJim Jagielski
 
Getting a Grip on CDN Performance - Why and How
Getting a Grip on CDN Performance - Why and HowGetting a Grip on CDN Performance - Why and How
Getting a Grip on CDN Performance - Why and HowAaron Peters
 
Qa fest kiev_when its just too slow
Qa fest kiev_when its just too slowQa fest kiev_when its just too slow
Qa fest kiev_when its just too slowDoug Sillars
 

Tendances (20)

WebPagetest Power Users - Velocity 2014
WebPagetest Power Users - Velocity 2014WebPagetest Power Users - Velocity 2014
WebPagetest Power Users - Velocity 2014
 
Making the web faster
Making the web fasterMaking the web faster
Making the web faster
 
Measuring the visual experience of website performance
Measuring the visual experience of website performanceMeasuring the visual experience of website performance
Measuring the visual experience of website performance
 
Measuring web performance
Measuring web performanceMeasuring web performance
Measuring web performance
 
Getting the most out of WebPageTest
Getting the most out of WebPageTestGetting the most out of WebPageTest
Getting the most out of WebPageTest
 
Hands on performance testing and analysis with web pagetest
Hands on performance testing and analysis with web pagetestHands on performance testing and analysis with web pagetest
Hands on performance testing and analysis with web pagetest
 
Velocity 2014 nyc WebPagetest private instances
Velocity 2014 nyc   WebPagetest private instancesVelocity 2014 nyc   WebPagetest private instances
Velocity 2014 nyc WebPagetest private instances
 
Selecting and deploying automated optimization solutions
Selecting and deploying automated optimization solutionsSelecting and deploying automated optimization solutions
Selecting and deploying automated optimization solutions
 
Tracking Performance - Velocity NYC 2013
Tracking Performance - Velocity NYC 2013Tracking Performance - Velocity NYC 2013
Tracking Performance - Velocity NYC 2013
 
PageSpeed and SPDY
PageSpeed and SPDYPageSpeed and SPDY
PageSpeed and SPDY
 
WebPagetest - Good, Bad & Ugly
WebPagetest - Good, Bad & UglyWebPagetest - Good, Bad & Ugly
WebPagetest - Good, Bad & Ugly
 
Mobius keynote
Mobius keynoteMobius keynote
Mobius keynote
 
Nantes when its just too slow
Nantes when its just too slowNantes when its just too slow
Nantes when its just too slow
 
Front-End Single Point of Failure - Velocity 2016 Training
Front-End Single Point of Failure - Velocity 2016 TrainingFront-End Single Point of Failure - Velocity 2016 Training
Front-End Single Point of Failure - Velocity 2016 Training
 
London Web Performance Meetup: Performance for mortal companies
London Web Performance Meetup: Performance for mortal companiesLondon Web Performance Meetup: Performance for mortal companies
London Web Performance Meetup: Performance for mortal companies
 
Performance Of Web Applications On Client Machines
Performance Of Web Applications On Client MachinesPerformance Of Web Applications On Client Machines
Performance Of Web Applications On Client Machines
 
Apache httpd Reverse Proxy and Tomcat
Apache httpd Reverse Proxy and TomcatApache httpd Reverse Proxy and Tomcat
Apache httpd Reverse Proxy and Tomcat
 
ApacheConNA 2015: Apache httpd 2.4 Reverse Proxy
ApacheConNA 2015: Apache httpd 2.4 Reverse ProxyApacheConNA 2015: Apache httpd 2.4 Reverse Proxy
ApacheConNA 2015: Apache httpd 2.4 Reverse Proxy
 
Getting a Grip on CDN Performance - Why and How
Getting a Grip on CDN Performance - Why and HowGetting a Grip on CDN Performance - Why and How
Getting a Grip on CDN Performance - Why and How
 
Qa fest kiev_when its just too slow
Qa fest kiev_when its just too slowQa fest kiev_when its just too slow
Qa fest kiev_when its just too slow
 

En vedette

Developing Metrics and KPI (Key Performance Indicators
Developing Metrics and KPI (Key Performance IndicatorsDeveloping Metrics and KPI (Key Performance Indicators
Developing Metrics and KPI (Key Performance IndicatorsVictor Holman
 
KEY PERFORMANCE INDICATOR
KEY PERFORMANCE INDICATORKEY PERFORMANCE INDICATOR
KEY PERFORMANCE INDICATORspeedcars
 
Design+Performance Velocity 2015
Design+Performance Velocity 2015Design+Performance Velocity 2015
Design+Performance Velocity 2015Steve Souders
 
10 Techniques for Gathering Requirements
10 Techniques for Gathering Requirements10 Techniques for Gathering Requirements
10 Techniques for Gathering Requirementsz-999
 
Collecting metrics with Graphite and StatsD
Collecting metrics with Graphite and StatsDCollecting metrics with Graphite and StatsD
Collecting metrics with Graphite and StatsDitnig
 
Global Giving Briefing for Staff and Partners
Global Giving Briefing for Staff and PartnersGlobal Giving Briefing for Staff and Partners
Global Giving Briefing for Staff and PartnersBeth Kanter
 
Cookies, Convening, and Coffee: Measuring the Networked Nonprofit
Cookies, Convening, and Coffee:  Measuring the Networked NonprofitCookies, Convening, and Coffee:  Measuring the Networked Nonprofit
Cookies, Convening, and Coffee: Measuring the Networked NonprofitBeth Kanter
 
Days In Green : Forecasting the Life of a Healthy Service @Twitter
Days In Green : Forecasting the Life of a Healthy Service @TwitterDays In Green : Forecasting the Life of a Healthy Service @Twitter
Days In Green : Forecasting the Life of a Healthy Service @TwitterVibhav Garg
 
Key Performance Indicators, a spy in the camp or a useful tool?
Key Performance Indicators, a spy in the camp or a useful tool?Key Performance Indicators, a spy in the camp or a useful tool?
Key Performance Indicators, a spy in the camp or a useful tool?Paul Blackett
 
From WTF to KPI: Demonstrating the Business Value of Public Relations
From WTF to KPI: Demonstrating the Business Value of Public RelationsFrom WTF to KPI: Demonstrating the Business Value of Public Relations
From WTF to KPI: Demonstrating the Business Value of Public RelationsShonali Burke
 
A Systematic Approach to Capacity Planning in the Real World
A Systematic Approach to Capacity Planning in the Real WorldA Systematic Approach to Capacity Planning in the Real World
A Systematic Approach to Capacity Planning in the Real WorldArun Kejariwal
 
From ROI to KPI: Practical Solutions to Measurement Conundrums
From ROI to KPI: Practical Solutions to Measurement ConundrumsFrom ROI to KPI: Practical Solutions to Measurement Conundrums
From ROI to KPI: Practical Solutions to Measurement ConundrumsShonali Burke
 
How to develop actionable web analytics KPI's
How to develop actionable web analytics KPI's How to develop actionable web analytics KPI's
How to develop actionable web analytics KPI's Antoaneta Nikolaeva
 
Shooting rabbits with sling
Shooting rabbits with slingShooting rabbits with sling
Shooting rabbits with slingTomasz Rękawek
 
Metrics by coda hale : to know your app’ health
Metrics by coda hale : to know your app’ healthMetrics by coda hale : to know your app’ health
Metrics by coda hale : to know your app’ healthIzzet Mustafaiev
 
Simple Log Analysis and Trending
Simple Log Analysis and TrendingSimple Log Analysis and Trending
Simple Log Analysis and TrendingMike Brittain
 
KPI mahsa sharifi 2012
KPI mahsa sharifi 2012KPI mahsa sharifi 2012
KPI mahsa sharifi 2012Mahsa Sharifi
 
Project quality (and test process) metrics
Project quality (and test process) metricsProject quality (and test process) metrics
Project quality (and test process) metricsZbyszek Mockun
 
Scorecard and KPIs 101
Scorecard and KPIs 101Scorecard and KPIs 101
Scorecard and KPIs 101Aleksey Savkin
 

En vedette (20)

Developing Metrics and KPI (Key Performance Indicators
Developing Metrics and KPI (Key Performance IndicatorsDeveloping Metrics and KPI (Key Performance Indicators
Developing Metrics and KPI (Key Performance Indicators
 
KEY PERFORMANCE INDICATOR
KEY PERFORMANCE INDICATORKEY PERFORMANCE INDICATOR
KEY PERFORMANCE INDICATOR
 
Design+Performance Velocity 2015
Design+Performance Velocity 2015Design+Performance Velocity 2015
Design+Performance Velocity 2015
 
10 Techniques for Gathering Requirements
10 Techniques for Gathering Requirements10 Techniques for Gathering Requirements
10 Techniques for Gathering Requirements
 
Collecting metrics with Graphite and StatsD
Collecting metrics with Graphite and StatsDCollecting metrics with Graphite and StatsD
Collecting metrics with Graphite and StatsD
 
Global Giving Briefing for Staff and Partners
Global Giving Briefing for Staff and PartnersGlobal Giving Briefing for Staff and Partners
Global Giving Briefing for Staff and Partners
 
Cookies, Convening, and Coffee: Measuring the Networked Nonprofit
Cookies, Convening, and Coffee:  Measuring the Networked NonprofitCookies, Convening, and Coffee:  Measuring the Networked Nonprofit
Cookies, Convening, and Coffee: Measuring the Networked Nonprofit
 
Days In Green : Forecasting the Life of a Healthy Service @Twitter
Days In Green : Forecasting the Life of a Healthy Service @TwitterDays In Green : Forecasting the Life of a Healthy Service @Twitter
Days In Green : Forecasting the Life of a Healthy Service @Twitter
 
Key Performance Indicators, a spy in the camp or a useful tool?
Key Performance Indicators, a spy in the camp or a useful tool?Key Performance Indicators, a spy in the camp or a useful tool?
Key Performance Indicators, a spy in the camp or a useful tool?
 
GBlackard USCPPD512B - KPI Development
GBlackard USCPPD512B - KPI DevelopmentGBlackard USCPPD512B - KPI Development
GBlackard USCPPD512B - KPI Development
 
From WTF to KPI: Demonstrating the Business Value of Public Relations
From WTF to KPI: Demonstrating the Business Value of Public RelationsFrom WTF to KPI: Demonstrating the Business Value of Public Relations
From WTF to KPI: Demonstrating the Business Value of Public Relations
 
A Systematic Approach to Capacity Planning in the Real World
A Systematic Approach to Capacity Planning in the Real WorldA Systematic Approach to Capacity Planning in the Real World
A Systematic Approach to Capacity Planning in the Real World
 
From ROI to KPI: Practical Solutions to Measurement Conundrums
From ROI to KPI: Practical Solutions to Measurement ConundrumsFrom ROI to KPI: Practical Solutions to Measurement Conundrums
From ROI to KPI: Practical Solutions to Measurement Conundrums
 
How to develop actionable web analytics KPI's
How to develop actionable web analytics KPI's How to develop actionable web analytics KPI's
How to develop actionable web analytics KPI's
 
Shooting rabbits with sling
Shooting rabbits with slingShooting rabbits with sling
Shooting rabbits with sling
 
Metrics by coda hale : to know your app’ health
Metrics by coda hale : to know your app’ healthMetrics by coda hale : to know your app’ health
Metrics by coda hale : to know your app’ health
 
Simple Log Analysis and Trending
Simple Log Analysis and TrendingSimple Log Analysis and Trending
Simple Log Analysis and Trending
 
KPI mahsa sharifi 2012
KPI mahsa sharifi 2012KPI mahsa sharifi 2012
KPI mahsa sharifi 2012
 
Project quality (and test process) metrics
Project quality (and test process) metricsProject quality (and test process) metrics
Project quality (and test process) metrics
 
Scorecard and KPIs 101
Scorecard and KPIs 101Scorecard and KPIs 101
Scorecard and KPIs 101
 

Similaire à Metrics, Metrics Everywhere (but where the heck do you start?)

Metrics, metrics everywhere (but where the heck do you start?)
Metrics, metrics everywhere (but where the heck do you start?) Metrics, metrics everywhere (but where the heck do you start?)
Metrics, metrics everywhere (but where the heck do you start?) SOASTA
 
Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)
Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)
Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)Cliff Crocker
 
Web Performance Internals explained for Developers and other stake holders.
Web Performance Internals explained for Developers and other stake holders.Web Performance Internals explained for Developers and other stake holders.
Web Performance Internals explained for Developers and other stake holders.Sreejesh Madonandy
 
Site Speed Fundamentals
Site Speed FundamentalsSite Speed Fundamentals
Site Speed FundamentalsMartin Breest
 
Edge 2014: A Modern Approach to Performance Monitoring
Edge 2014: A Modern Approach to Performance MonitoringEdge 2014: A Modern Approach to Performance Monitoring
Edge 2014: A Modern Approach to Performance MonitoringAkamai Technologies
 
MeasureWorks - Why people hate to wait for your website to load (and how to f...
MeasureWorks - Why people hate to wait for your website to load (and how to f...MeasureWorks - Why people hate to wait for your website to load (and how to f...
MeasureWorks - Why people hate to wait for your website to load (and how to f...MeasureWorks
 
Monitoring web application response times^lj a hybrid approach for windows
Monitoring web application response times^lj a hybrid approach for windowsMonitoring web application response times^lj a hybrid approach for windows
Monitoring web application response times^lj a hybrid approach for windowsMark Friedman
 
Why is this ASP.NET web app running slowly?
Why is this ASP.NET web app running slowly?Why is this ASP.NET web app running slowly?
Why is this ASP.NET web app running slowly?Mark Friedman
 
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...Dakiry
 
Performance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introPerformance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introMykola Kovsh
 
Synthetic and RUM - Best of bo
Synthetic and RUM - Best of boSynthetic and RUM - Best of bo
Synthetic and RUM - Best of boCliff Crocker
 
Connecting the dots between design, performance and conversion rates [Smashin...
Connecting the dots between design, performance and conversion rates [Smashin...Connecting the dots between design, performance and conversion rates [Smashin...
Connecting the dots between design, performance and conversion rates [Smashin...Tammy Everts
 
A Designer's Guide to Web Performance
A Designer's Guide to Web PerformanceA Designer's Guide to Web Performance
A Designer's Guide to Web PerformanceKevin Mandeville
 
Load Speed PSI development of webcore vitals
Load Speed PSI development of webcore vitalsLoad Speed PSI development of webcore vitals
Load Speed PSI development of webcore vitalsrahmathidayat471220
 
Improving frontend performance
Improving frontend performanceImproving frontend performance
Improving frontend performanceSagar Desarda
 
An Introduction to Pagespeed Optimisation
An Introduction to Pagespeed OptimisationAn Introduction to Pagespeed Optimisation
An Introduction to Pagespeed OptimisationPratyush Majumdar
 

Similaire à Metrics, Metrics Everywhere (but where the heck do you start?) (20)

Metrics, metrics everywhere (but where the heck do you start?)
Metrics, metrics everywhere (but where the heck do you start?) Metrics, metrics everywhere (but where the heck do you start?)
Metrics, metrics everywhere (but where the heck do you start?)
 
Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)
Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)
Velocity NYC: Metrics, metrics everywhere (but where the heck do you start?)
 
Web Performance Internals explained for Developers and other stake holders.
Web Performance Internals explained for Developers and other stake holders.Web Performance Internals explained for Developers and other stake holders.
Web Performance Internals explained for Developers and other stake holders.
 
Site Speed Fundamentals
Site Speed FundamentalsSite Speed Fundamentals
Site Speed Fundamentals
 
Edge 2014: A Modern Approach to Performance Monitoring
Edge 2014: A Modern Approach to Performance MonitoringEdge 2014: A Modern Approach to Performance Monitoring
Edge 2014: A Modern Approach to Performance Monitoring
 
MeasureWorks - Why people hate to wait for your website to load (and how to f...
MeasureWorks - Why people hate to wait for your website to load (and how to f...MeasureWorks - Why people hate to wait for your website to load (and how to f...
MeasureWorks - Why people hate to wait for your website to load (and how to f...
 
Monitoring web application response times^lj a hybrid approach for windows
Monitoring web application response times^lj a hybrid approach for windowsMonitoring web application response times^lj a hybrid approach for windows
Monitoring web application response times^lj a hybrid approach for windows
 
Why is this ASP.NET web app running slowly?
Why is this ASP.NET web app running slowly?Why is this ASP.NET web app running slowly?
Why is this ASP.NET web app running slowly?
 
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
Микола Ковш “Performance Testing Implementation From Scratch. Why? When and H...
 
Performance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter introPerformance Testing from Scratch + JMeter intro
Performance Testing from Scratch + JMeter intro
 
Synthetic and RUM - Best of bo
Synthetic and RUM - Best of boSynthetic and RUM - Best of bo
Synthetic and RUM - Best of bo
 
Connecting the dots between design, performance and conversion rates [Smashin...
Connecting the dots between design, performance and conversion rates [Smashin...Connecting the dots between design, performance and conversion rates [Smashin...
Connecting the dots between design, performance and conversion rates [Smashin...
 
Web performance e-book
Web performance e-bookWeb performance e-book
Web performance e-book
 
Designers Guide to Web Performance Yotta 2013
Designers Guide to Web Performance Yotta 2013Designers Guide to Web Performance Yotta 2013
Designers Guide to Web Performance Yotta 2013
 
A Designer's Guide to Web Performance
A Designer's Guide to Web PerformanceA Designer's Guide to Web Performance
A Designer's Guide to Web Performance
 
Load Speed PSI development of webcore vitals
Load Speed PSI development of webcore vitalsLoad Speed PSI development of webcore vitals
Load Speed PSI development of webcore vitals
 
Improving frontend performance
Improving frontend performanceImproving frontend performance
Improving frontend performance
 
Browser Based Performance Testing and Tuning
Browser Based Performance Testing and TuningBrowser Based Performance Testing and Tuning
Browser Based Performance Testing and Tuning
 
An Introduction to Pagespeed Optimisation
An Introduction to Pagespeed OptimisationAn Introduction to Pagespeed Optimisation
An Introduction to Pagespeed Optimisation
 
Presemtation Tier Optimizations
Presemtation Tier OptimizationsPresemtation Tier Optimizations
Presemtation Tier Optimizations
 

Plus de SOASTA

Mobile Performance: State of the Union
Mobile Performance: State of the UnionMobile Performance: State of the Union
Mobile Performance: State of the UnionSOASTA
 
Techniques, Tips & Tools For Mobile App Testing
Techniques, Tips & Tools For Mobile App TestingTechniques, Tips & Tools For Mobile App Testing
Techniques, Tips & Tools For Mobile App TestingSOASTA
 
Velocity 2015 building self healing systems (slide share version)
Velocity 2015 building self healing systems (slide share version)Velocity 2015 building self healing systems (slide share version)
Velocity 2015 building self healing systems (slide share version)SOASTA
 
3 tips to increase mobile test coverage
3 tips to increase mobile test coverage3 tips to increase mobile test coverage
3 tips to increase mobile test coverageSOASTA
 
Webinar: Was die Top eCommerce Firmen über Ihre Performance auf Web- & Mobile
Webinar: Was die Top eCommerce Firmen über Ihre Performance auf Web- & MobileWebinar: Was die Top eCommerce Firmen über Ihre Performance auf Web- & Mobile
Webinar: Was die Top eCommerce Firmen über Ihre Performance auf Web- & MobileSOASTA
 
Get Ready for Changes To Load Testing
Get Ready for Changes To Load Testing Get Ready for Changes To Load Testing
Get Ready for Changes To Load Testing SOASTA
 
Building a Performance A-Team
Building a Performance A-TeamBuilding a Performance A-Team
Building a Performance A-TeamSOASTA
 
Dach webinar - Image Absicherung – Lektionen aus dem Facebook Crash
Dach webinar - Image Absicherung – Lektionen aus dem Facebook CrashDach webinar - Image Absicherung – Lektionen aus dem Facebook Crash
Dach webinar - Image Absicherung – Lektionen aus dem Facebook CrashSOASTA
 
Four best practices for performance testing mobile apps soasta and utopia
Four best practices for performance testing mobile apps   soasta and utopiaFour best practices for performance testing mobile apps   soasta and utopia
Four best practices for performance testing mobile apps soasta and utopiaSOASTA
 
Synthetic and rum webinar
Synthetic and rum webinarSynthetic and rum webinar
Synthetic and rum webinarSOASTA
 
7 steps to pragmatic mobile testing
7 steps to pragmatic mobile testing7 steps to pragmatic mobile testing
7 steps to pragmatic mobile testingSOASTA
 
Secrets to Realistic Load Testing
Secrets to Realistic Load TestingSecrets to Realistic Load Testing
Secrets to Realistic Load TestingSOASTA
 
How to measure the business impact of web performance
How to measure the business impact of web performanceHow to measure the business impact of web performance
How to measure the business impact of web performanceSOASTA
 
Lasttest auf Zuruf CloudTest on Demand webinar presentation
Lasttest auf Zuruf CloudTest on Demand webinar presentationLasttest auf Zuruf CloudTest on Demand webinar presentation
Lasttest auf Zuruf CloudTest on Demand webinar presentationSOASTA
 
Accelerate Web and Mobile Testing for Continuous Integration and Delivery
Accelerate Web and Mobile Testing for Continuous Integration and DeliveryAccelerate Web and Mobile Testing for Continuous Integration and Delivery
Accelerate Web and Mobile Testing for Continuous Integration and DeliverySOASTA
 
The Mobile Testing Checklist
The Mobile Testing ChecklistThe Mobile Testing Checklist
The Mobile Testing ChecklistSOASTA
 
How To Use Jenkins for Continuous Load and Mobile Testing with SOASTA & Cloud...
How To Use Jenkins for Continuous Load and Mobile Testing with SOASTA & Cloud...How To Use Jenkins for Continuous Load and Mobile Testing with SOASTA & Cloud...
How To Use Jenkins for Continuous Load and Mobile Testing with SOASTA & Cloud...SOASTA
 
Reducing 3rd party content risk with Real User Monitoring
Reducing 3rd party content risk with Real User MonitoringReducing 3rd party content risk with Real User Monitoring
Reducing 3rd party content risk with Real User MonitoringSOASTA
 
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal ReadinessTis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal ReadinessSOASTA
 
Modern Load Testing: Move Your Load Testing from the Past to the Present
Modern Load Testing: Move Your Load Testing from the Past to the PresentModern Load Testing: Move Your Load Testing from the Past to the Present
Modern Load Testing: Move Your Load Testing from the Past to the PresentSOASTA
 

Plus de SOASTA (20)

Mobile Performance: State of the Union
Mobile Performance: State of the UnionMobile Performance: State of the Union
Mobile Performance: State of the Union
 
Techniques, Tips & Tools For Mobile App Testing
Techniques, Tips & Tools For Mobile App TestingTechniques, Tips & Tools For Mobile App Testing
Techniques, Tips & Tools For Mobile App Testing
 
Velocity 2015 building self healing systems (slide share version)
Velocity 2015 building self healing systems (slide share version)Velocity 2015 building self healing systems (slide share version)
Velocity 2015 building self healing systems (slide share version)
 
3 tips to increase mobile test coverage
3 tips to increase mobile test coverage3 tips to increase mobile test coverage
3 tips to increase mobile test coverage
 
Webinar: Was die Top eCommerce Firmen über Ihre Performance auf Web- & Mobile
Webinar: Was die Top eCommerce Firmen über Ihre Performance auf Web- & MobileWebinar: Was die Top eCommerce Firmen über Ihre Performance auf Web- & Mobile
Webinar: Was die Top eCommerce Firmen über Ihre Performance auf Web- & Mobile
 
Get Ready for Changes To Load Testing
Get Ready for Changes To Load Testing Get Ready for Changes To Load Testing
Get Ready for Changes To Load Testing
 
Building a Performance A-Team
Building a Performance A-TeamBuilding a Performance A-Team
Building a Performance A-Team
 
Dach webinar - Image Absicherung – Lektionen aus dem Facebook Crash
Dach webinar - Image Absicherung – Lektionen aus dem Facebook CrashDach webinar - Image Absicherung – Lektionen aus dem Facebook Crash
Dach webinar - Image Absicherung – Lektionen aus dem Facebook Crash
 
Four best practices for performance testing mobile apps soasta and utopia
Four best practices for performance testing mobile apps   soasta and utopiaFour best practices for performance testing mobile apps   soasta and utopia
Four best practices for performance testing mobile apps soasta and utopia
 
Synthetic and rum webinar
Synthetic and rum webinarSynthetic and rum webinar
Synthetic and rum webinar
 
7 steps to pragmatic mobile testing
7 steps to pragmatic mobile testing7 steps to pragmatic mobile testing
7 steps to pragmatic mobile testing
 
Secrets to Realistic Load Testing
Secrets to Realistic Load TestingSecrets to Realistic Load Testing
Secrets to Realistic Load Testing
 
How to measure the business impact of web performance
How to measure the business impact of web performanceHow to measure the business impact of web performance
How to measure the business impact of web performance
 
Lasttest auf Zuruf CloudTest on Demand webinar presentation
Lasttest auf Zuruf CloudTest on Demand webinar presentationLasttest auf Zuruf CloudTest on Demand webinar presentation
Lasttest auf Zuruf CloudTest on Demand webinar presentation
 
Accelerate Web and Mobile Testing for Continuous Integration and Delivery
Accelerate Web and Mobile Testing for Continuous Integration and DeliveryAccelerate Web and Mobile Testing for Continuous Integration and Delivery
Accelerate Web and Mobile Testing for Continuous Integration and Delivery
 
The Mobile Testing Checklist
The Mobile Testing ChecklistThe Mobile Testing Checklist
The Mobile Testing Checklist
 
How To Use Jenkins for Continuous Load and Mobile Testing with SOASTA & Cloud...
How To Use Jenkins for Continuous Load and Mobile Testing with SOASTA & Cloud...How To Use Jenkins for Continuous Load and Mobile Testing with SOASTA & Cloud...
How To Use Jenkins for Continuous Load and Mobile Testing with SOASTA & Cloud...
 
Reducing 3rd party content risk with Real User Monitoring
Reducing 3rd party content risk with Real User MonitoringReducing 3rd party content risk with Real User Monitoring
Reducing 3rd party content risk with Real User Monitoring
 
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal ReadinessTis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
Tis The Season: Load Testing Tips and Checklist for Retail Seasonal Readiness
 
Modern Load Testing: Move Your Load Testing from the Past to the Present
Modern Load Testing: Move Your Load Testing from the Past to the PresentModern Load Testing: Move Your Load Testing from the Past to the Present
Modern Load Testing: Move Your Load Testing from the Past to the Present
 

Dernier

Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 

Dernier (20)

Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 

Metrics, Metrics Everywhere (but where the heck do you start?)

  • 1. Metrics, metrics everywhere (but where the heck do you start?)
  • 3.
  • 4. Who cares about performance today? How do I measure performance? How fast am I? How fast should I be? How do I get there?
  • 5.
  • 6. The myth of a single metric
  • 7.
  • 8. Start render DNS TCP TTFB DOM loading DOM ready Page load Fully loaded User timing Resource timing Requests Bytes in Speed Index Pagespeed score 1s = $$ DOM elements DOM size Visually complete Redirect SSL negotiation
  • 9. Who cares about performance?
  • 10. “47% of consumers expect a web page to load in 2 seconds or less.” Akamai, 2009
  • 11.
  • 12. 1s = $27M DNS 144ms Start render 1.59s Hero image render 2.01s
  • 13. How do I measure performance?
  • 14.
  • 15.
  • 16.
  • 18. RUM versus plus synthetic
  • 20. Technology for collecting performance metrics directly from the end user’s browser Involves instrumenting your site via JavaScript Measurements are fired across the network to a collection point through a small request object (beacon)
  • 21. What makes RUM great  Always on  Every user, every browser, everywhere  Able to capture human behavior/events  Only getting better
  • 22. Questions your RUM data can answer
  • 24. How do visitors move through my site?
  • 25. How are my third-party scripts performing in real time?
  • 26. What impact does performance have on my business?
  • 28. Uses automated agents (bots) to measure your website from different physical locations A set “path” or URL is defined Tests are run either ad hoc or scheduled, and data is collected
  • 29. What makes synthetic monitoring great  Rich data collected (waterfall, video, filmstrip, HTTP headers)  Consistent “clean room” baseline  Nothing to install  Doesn’t require users / ability to measure pre-production and competition
  • 30. Questions your synthetic data can answer
  • 31. How do I compare to the competition?
  • 32. How does the design of my pages affect performance?
  • 33. How does the newest version of my site compare to previous versions?
  • 34. How well am I sticking to my performance budget?
  • 35. What if my third parties fail? Original: 3.5s SPOF: 22.7s
  • 36.
  • 37. 36© 2014 SOASTA CONFIDENTIAL - All rights reserved. Why are these numbers so different? I don’t trust your data. Your numbers are wrong. How are you calculating page load time? I can’t share two sets of numbers with the business?
  • 38. “But it loads so much faster for me!?!” 2015 Macbook Pro Warm browser cache FIOS X86 – Windows 7 VM Completely cold cache/DNS Throttled bandwidth
  • 41.
  • 42.
  • 45. Browser support for Navigation Timing
  • 46. 45© 2014 SOASTA CONFIDENTIAL - All rights reserved. Network operations Front-end developer Marketing and site operations Designer C-level
  • 48. I need visibility into…  issues with authoritative DNS servers  impact of denial of service attacks on end users  efficiency of connection re-use  tier 1 connectivity issues (load balancer, web server)
  • 49. Start render DNS TCP TTFB DOM loading DOM ready Page load Fully loaded User timing Resource timing Requests Bytes in Speed Index Pagespeed score 1s = $$ DOM elements DOM size Visually complete Redirect SSL negotiation
  • 50. Measuring DNS and TCP function getPerf() { var timing = window.performance.timing; return { dns: timing.domainLookupEnd - timing.domainLookupStart}; connect: timing.connectEnd - timing.connectStart}; }
  • 51. What’s with all those zeros!  Connection reuse  DNS caching  Prefetching
  • 52. Focus on higher percentiles 85th percentile Median (50th)
  • 53. Use case: Measure front-end browser events
  • 54. How do I…  understand the impact of back-end versus front-end on page speed?  investigate how DOM complexity affects performance?  measure a “fully loaded” page?
  • 55. Start render DNS TCP TTFB DOM load event DOM ready Page load Fully loaded User timing Resource timing Requests Bytes in Speed Index Pagespeed score 1s = $$ DOM elements DOM size Visually complete Redirect SSL negotiation
  • 57. Isolate front-end vs. back-end function getPerf() { var timing = window.performance.timing; return { ttfb: timing.responseStart - timing.connectEnd}; basePage: timing.responseEnd - timing.responseStart}; frontEnd: timing.loadEventStart - timing.responseEnd}; }
  • 58.
  • 60. Investigate DOM events function getPerf() { var timing = window.performance.timing; return { DLoading: timing.domLoading – timing.navigationStart}; DInt: timing.domInteractive – timing.navigationStart}; DContLoaded: timing.domContentLoadedEventEnd – timing.navigationStart; DContLoadTime: timing.domContentLoadedEventEnd – timing.domContentLoadedEventStart}; DComplete: timing.domComplete - timing.navigationStart}; PLoad: timing.loadEventStart -
  • 61. 2618 DOM nodes 86 DOM nodes Visualizing DOM complexity
  • 63. I need to understand…  how third-party content affects my performance  how long a group of assets takes to download  how assets served by a CDN are performing
  • 64. Start render DNS TCP TTFB DOM loading DOM ready Page load Fully loaded User timing Resource timing Requests Bytes in Speed Index Pagespeed score 1s = $$ DOM elements DOM size Visually complete Redirect SSL negotiation
  • 66. Browser support for Resource Timing
  • 67. Cross-Origin Resource Sharing (CORS) Start/End time only unless Timing-Allow-Origin HTTP Response Header defined Timing-Allow-Origin = "Timing-Allow-Origin" ":" origin-list- or-null | "*"
  • 68. Resource Timing var rUrl = ‘http://www.akamai.com/images/img/cliff-crocker- dualtone-150x150.png’; var me = performance.getEntriesByName(rUrl)[0]; var timings = { loadTime: me.duration, dns: me.domainLookupEnd - me.domainLookupStart, tcp: me.connectEnd - me.connectStart, waiting: me.responseStart - me.requestStart, fetch: me.responseEnd - me.responseStart } Measuring a single resource
  • 69. Other uses for Resource Timing  Slowest resources  Time to first image (download)  Response time by domain  Time a group of assets  Response time by initiator type (element type)  Cache-hit ratio for resources For examples see: https://github.com/lognormal/beyond-page-metrics
  • 70. Using Resource Groups PLT impact not due resource groups PLT impact correlates with improvement from image domains
  • 71. Use case: Measure the user experience
  • 72. I just need to understand…  when users perceive the page to be ready  how long until my page begins to render  when content above the fold is visible
  • 73. Start render DNS TCP TTFB DOM loading DOM ready Page load Fully loaded User timing Resource timing Requests Bytes in Speed Index Pagespeed score 1s = $$ DOM elements DOM size Visually complete Redirect SSL negotiation
  • 74. The fallacy of “First Paint” in the wild  Support for First Paint is not standardized between browsers  Metric can be misleading (i.e. painting a white screen)
  • 75. First Paint is not equal to Start Render! Chrome – “First Paint” True Start Render
  • 76. Start Render and filmstrips
  • 77. User Timing Interface  Allows developers to measure performance of their applications through high-precision timestamps  Consists of “marks” and “measures”  PerformanceMark: Timestamp  PerformanceMeasure: Duration between two given marks
  • 78. Measure duration between two marks performance.mark(“startTask”); //Some stuff you want to measure happens here performance.mark(“stopTask”); //Measure the duration between the two marks performance.measure(“taskDuration”,“startTask”,“stopTask”);
  • 79. How long does it take to display the main product image on my site?
  • 80. Record when an image loads <img src=“image1.gif” onload=“performance.mark(‘image1’)”> For more interesting examples, see: Measure hero image delay http://www.stevesouders.com/blog/2015/05/12/hero-image-custom-metrics/ Measure aggregate times to get an “above fold time” http://blog.patrickmeenan.com/2013/07/measuring-performance-of-user- experience.html
  • 81. How do I measure performance when the onload event no longer matters? Use case: Measure performance of SPAs
  • 83. Measuring SPAs • Accept the fact that onload no longer matters • Tie into routing events of SPA framework • Measure downloads during soft refreshes • (support in boomerang.js for Angular and other SPA frameworks) See: http://www.soasta.com/blog/angularjs-real-user- monitoring-single-page-applications/
  • 86. I need to understand…  how performance affects business KPIs  how our site compares to our competitors
  • 87. Start render DNS TCP TTFB DOM loading DOM ready Page load Fully loaded User timing Resource timing Requests Bytes in Speed Index Pagespeed score 1s = $$ DOM elements DOM size Visually complete Redirect SSL negotiation
  • 88.
  • 89.
  • 90. 2% increase in conversions for every 1 second of improvement
  • 91. Cut load times in half Increased sales by 13%
  • 92.
  • 93. So what? You must look at your own data.
  • 94.
  • 95.
  • 96. Not all pages are created equal For a typical ecommerce site, conversion rate drops by up to 50% when “browse” pages increase from 1 to 6 seconds
  • 97. Not all pages are created equal However, there is much less impact to conversion when “checkout” pages degrade
  • 99. How do I get there?
  • 100.
  • 101. Create a performance budget See: Setting a Performance Budget http://timkadlec.com/2013/01/setting-a-performance-budget/ Performance Budget Metrics http://timkadlec.com/2014/11/performance-budget-metrics/
  • 103. “Response time measured using resource timing from Chrome browsers in the United States should not exceed a median (50th percentile) of 100ms or a 95th percentile of 500ms for a population of more than 500 users in a 24-hour period.”
  • 104. “Vendor will make an effort to ensure average response times for content is within reasonable limits.”
  • 105.
  • 106. Chapter 8: Changing Culture at Your Organization
  • 109. Meet us at booth #801

Notes de l'éditeur

  1. In this example, I’ve shown the impact of performance (Page Load time) on the Bounce rate for two different groups of sites. Site A: A collection of user experiences for Specialty Goods eCommerce sites (luxury goods)) Site B: A collection of user experiences for General Merchandise eCommerce sites (commodity goods) Notice the patience levels of the users after 6s for each site. Users for a specialty goods site with fewer options tend to be more patient. Meanwhile users that have other options for a GM site continue to abandon at the same rate.
  2. The relationship between speed and behavior is even more noticeable when we look at conversion rates between the two sites. Notice how quickly users will decide to abandon a purchase for Site A, versus B.
  3. Another important aspect is the realize all pages are not created equal. In this study of retail, we found that pages that were at the top of the funnel (browser pages) such as Home, Search, Product were extremely sensitive to user dissatisfaction. As these pages slowed from 1-6s, we saw a 50% decrease in the conversion rate!
  4. However, when we looked at pages deeper in the funnel like Login, Billing (checkout pages) – users were more patient and committed to the transaction.