SlideShare una empresa de Scribd logo
1 de 31
@nwbower
Bigger, Faster, and more Engaging
while on a Budget!
Nathan Bower
2
Evolution of Page Weight and Requests: 3X increase in last
5 Years
Image credit to HTTPArchive.org (http://httparchive.org/trends.php )
3
Reactive Measurements
TOTO
Images Credit: http://www.spc.noaa.gov/faq/tornado/toto.htm
4
Frequent Measurements
Image Credit: http://history.msfc.nasa.gov/saturn_apollo/photos/images/10075947_jpg.jpg
5
Visible Measurements with Alarm
6
Measure and Trend What’s Important!
Bigger : Size, # of Requests
• All Resource Types by Weight and # of Requests
– Images, Fonts, JavaScript, CSS, HTML, total size, total requests, etc.
Faster : Time
• User Perceived Performance
– Ex. “AFT Hero Image”, “AFT Search Box”
• SpeedIndex
• TTFB
• Pagespeed
7
Add W3C User Timing Marks
• Measure Performance of User Experience
– http://blog.patrickmeenan.com/2013/07/measuring-performance-of-user-
experience.html
• “AFT” Notation (Above-the-Fold Time)
• Hero Image Custom Metrics
– http://www.stevesouders.com/blog/2015/05/12/hero-image-custom-metrics/
<img src="hero.jpg" onload="performance.mark(’AFT
Hero1')"> <script>performance.mark(’AFT Hero2')</script>
http://www.w3.org/TR/user-timing/
8
Tools for Measuring and Trending
Synthetic Measurements
• SpeedCurve.com
• Independent WPT Instance 
Graphite
• PhantomJS w/HAR  HARStorage
• WPT OR PhantomJS w/HAR 
SPLUNK
Real User Monitoring (RUM)
• Boomerang  SPLUNK
• Numerous companies offering
RUM
9
Synthetic vs. RUM
Synthetic Measurements
• Consistency in device/network
• Detailed Resource Analysis
Drawbacks
• Limited Sample and Frequency
Real User Monitoring (RUM)
• Large Sample
• Real Conditions
• Not Geographically Bound
Drawbacks
• Limited Resource Detail
– No Size from W3C Resource Timing
10
11
12
13
14
Evaluate Performance Trade-offs
More Engaging : Conversion Rates
Jakob Nielsen “ Increased conversion is one of the strongest ROI arguments
for better user experience and more user research. Track over time, because
it's a relative metric.”
• Trend and Correlate Traffic Patterns to Performance
– PV/Session, Session Duration, Bounce Rate
• Observe Variations by Build Release
Heavier and Slower Modifications May Improve Engagement!
• Prove changes through AB Testing
15
What else should we budget?
• 3rd Party Resources
• Service Response Time
• Database Query Time
• DNS Resolution
• SSL Negotiation
• TCP Connect
• HTTP Status Codes
16
Responsive Design
Mobile User Timing Mark Desktop User Timing
Mark
…wait, these are GOALS!
17
Managing Performance Budgets
• Prioritize User Experience
•Engage and Revise Alarms
• Owner Buy-in for Goals
•Set Regression Alarms
• Optimization Burnout
18
19
20
21
22
New Feature – AB Testing Showed Improved
Engagement
23
Business Intelligence – User Engagement
Exceeded Budgets w/ vs w/out (11days prior vs 11days post)
Device Type Uus Sessions Duration/Session (ms) PVs/Session Bounce Rate PVs/Uus
Phone 2.31% 2.42% 1.86% -2.09% -1.20% -1.99%
Tablet -0.95% -0.96% 0.98% -3.64% 0.52% -3.65%
24
25
SpeedIndex Did Not Falter Despite 4X Weight Increase
26
RUM confirmed 10sec loss at 75th Percentile for “Time to
Onload”
27
Business Metrics Remained the
Same!
No Impacts to User Perceived Performance!
Performance Changed in a Big
Way!
28
Lessons Learned
• Increase Frequency of Measurements, “Quick Response”!
• Budgets enable a “Call to Action”!
• Prioritize User Timing marks for user perceived performance.
• Excess resources on page load may not affect user perception of
performance.
29
3030
ZILLOW ENGINEERING BLOG
ENGINEERING.ZILLOW.COM
Come Join Our Team!
Zillow.com/jobs
3131

Más contenido relacionado

Destacado (12)

Presentation for interview
Presentation for interviewPresentation for interview
Presentation for interview
 
Kalilinux
KalilinuxKalilinux
Kalilinux
 
07.03_7.3 Få mere ud af dine powerpiont KOMP 2. opd April 2014
07.03_7.3 Få mere ud af dine powerpiont KOMP 2. opd April 201407.03_7.3 Få mere ud af dine powerpiont KOMP 2. opd April 2014
07.03_7.3 Få mere ud af dine powerpiont KOMP 2. opd April 2014
 
Digital Marketing Methodology
Digital Marketing MethodologyDigital Marketing Methodology
Digital Marketing Methodology
 
Presentation1
Presentation1Presentation1
Presentation1
 
Max power point q2
Max power point q2Max power point q2
Max power point q2
 
Implementing Change Using Multi-Disciplinary Teams (MDTs)
Implementing Change Using Multi-Disciplinary Teams (MDTs)Implementing Change Using Multi-Disciplinary Teams (MDTs)
Implementing Change Using Multi-Disciplinary Teams (MDTs)
 
CV- Chris
CV- ChrisCV- Chris
CV- Chris
 
Basic-CV-template
Basic-CV-templateBasic-CV-template
Basic-CV-template
 
Matematica yhacmir
Matematica yhacmirMatematica yhacmir
Matematica yhacmir
 
Parallel processing of large graphs
Parallel processing of large graphsParallel processing of large graphs
Parallel processing of large graphs
 
Tema 8 La Edad Media
Tema 8 La Edad MediaTema 8 La Edad Media
Tema 8 La Edad Media
 

Último

Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
Epec Engineered Technologies
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
Neometrix_Engineering_Pvt_Ltd
 

Último (20)

Double Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueDouble Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torque
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdf
 
Hostel management system project report..pdf
Hostel management system project report..pdfHostel management system project report..pdf
Hostel management system project report..pdf
 
Unleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leapUnleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leap
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.ppt
 
Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS Lambda
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
 
Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdf
 
Bridge Jacking Design Sample Calculation.pptx
Bridge Jacking Design Sample Calculation.pptxBridge Jacking Design Sample Calculation.pptx
Bridge Jacking Design Sample Calculation.pptx
 
A Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna MunicipalityA Study of Urban Area Plan for Pabna Municipality
A Study of Urban Area Plan for Pabna Municipality
 
Engineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planesEngineering Drawing focus on projection of planes
Engineering Drawing focus on projection of planes
 
Air Compressor reciprocating single stage
Air Compressor reciprocating single stageAir Compressor reciprocating single stage
Air Compressor reciprocating single stage
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
 
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxA CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
 
Thermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VThermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - V
 
kiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal loadkiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal load
 
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best ServiceTamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
Tamil Call Girls Bhayandar WhatsApp +91-9930687706, Best Service
 
Employee leave management system project.
Employee leave management system project.Employee leave management system project.
Employee leave management system project.
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . ppt
 
Block diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.pptBlock diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.ppt
 

Bigger, faster, and more engaging while on a budget!

  • 1. @nwbower Bigger, Faster, and more Engaging while on a Budget! Nathan Bower
  • 2. 2 Evolution of Page Weight and Requests: 3X increase in last 5 Years Image credit to HTTPArchive.org (http://httparchive.org/trends.php )
  • 3. 3 Reactive Measurements TOTO Images Credit: http://www.spc.noaa.gov/faq/tornado/toto.htm
  • 4. 4 Frequent Measurements Image Credit: http://history.msfc.nasa.gov/saturn_apollo/photos/images/10075947_jpg.jpg
  • 6. 6 Measure and Trend What’s Important! Bigger : Size, # of Requests • All Resource Types by Weight and # of Requests – Images, Fonts, JavaScript, CSS, HTML, total size, total requests, etc. Faster : Time • User Perceived Performance – Ex. “AFT Hero Image”, “AFT Search Box” • SpeedIndex • TTFB • Pagespeed
  • 7. 7 Add W3C User Timing Marks • Measure Performance of User Experience – http://blog.patrickmeenan.com/2013/07/measuring-performance-of-user- experience.html • “AFT” Notation (Above-the-Fold Time) • Hero Image Custom Metrics – http://www.stevesouders.com/blog/2015/05/12/hero-image-custom-metrics/ <img src="hero.jpg" onload="performance.mark(’AFT Hero1')"> <script>performance.mark(’AFT Hero2')</script> http://www.w3.org/TR/user-timing/
  • 8. 8 Tools for Measuring and Trending Synthetic Measurements • SpeedCurve.com • Independent WPT Instance  Graphite • PhantomJS w/HAR  HARStorage • WPT OR PhantomJS w/HAR  SPLUNK Real User Monitoring (RUM) • Boomerang  SPLUNK • Numerous companies offering RUM
  • 9. 9 Synthetic vs. RUM Synthetic Measurements • Consistency in device/network • Detailed Resource Analysis Drawbacks • Limited Sample and Frequency Real User Monitoring (RUM) • Large Sample • Real Conditions • Not Geographically Bound Drawbacks • Limited Resource Detail – No Size from W3C Resource Timing
  • 10. 10
  • 11. 11
  • 12. 12
  • 13. 13
  • 14. 14 Evaluate Performance Trade-offs More Engaging : Conversion Rates Jakob Nielsen “ Increased conversion is one of the strongest ROI arguments for better user experience and more user research. Track over time, because it's a relative metric.” • Trend and Correlate Traffic Patterns to Performance – PV/Session, Session Duration, Bounce Rate • Observe Variations by Build Release Heavier and Slower Modifications May Improve Engagement! • Prove changes through AB Testing
  • 15. 15 What else should we budget? • 3rd Party Resources • Service Response Time • Database Query Time • DNS Resolution • SSL Negotiation • TCP Connect • HTTP Status Codes
  • 16. 16 Responsive Design Mobile User Timing Mark Desktop User Timing Mark …wait, these are GOALS!
  • 17. 17 Managing Performance Budgets • Prioritize User Experience •Engage and Revise Alarms • Owner Buy-in for Goals •Set Regression Alarms • Optimization Burnout
  • 18. 18
  • 19. 19
  • 20. 20
  • 21. 21
  • 22. 22 New Feature – AB Testing Showed Improved Engagement
  • 23. 23 Business Intelligence – User Engagement Exceeded Budgets w/ vs w/out (11days prior vs 11days post) Device Type Uus Sessions Duration/Session (ms) PVs/Session Bounce Rate PVs/Uus Phone 2.31% 2.42% 1.86% -2.09% -1.20% -1.99% Tablet -0.95% -0.96% 0.98% -3.64% 0.52% -3.65%
  • 24. 24
  • 25. 25 SpeedIndex Did Not Falter Despite 4X Weight Increase
  • 26. 26 RUM confirmed 10sec loss at 75th Percentile for “Time to Onload”
  • 27. 27 Business Metrics Remained the Same! No Impacts to User Perceived Performance! Performance Changed in a Big Way!
  • 28. 28 Lessons Learned • Increase Frequency of Measurements, “Quick Response”! • Budgets enable a “Call to Action”! • Prioritize User Timing marks for user perceived performance. • Excess resources on page load may not affect user perception of performance.
  • 29. 29
  • 31. 3131

Notas del editor

  1. C: In most cases we want our products to exhibit these first three behaviors. Budgets are a NOT taboo or a bad thing. Financial Budgets How we Eat Exercise, Fit Bit Alarm! T: First we must identify how we measure things.
  2. C: Most of us have seen this. It will continue to grow. Dynamic and engaging JS Big beautiful Luscious images T: How do our developers commonly measure the product?
  3. C: This is TOTO a device NOAA developed to measure tornados. Only one Intercepted Tornado in 1984. TOO LATE. Damage is done. Maybe not full Picture. Do developers attempt to measure issues as they arise? T: No chasing tornadoes! Can we measure more frequently to predict issues?
  4. C: There are over 22,000 registered seismograph stations according to the ISC and can detect seismic activity in near real time. In 1960 Chile experienced the most powerful earthquake in history, 9.5, 6,000 fatalities. In 2010, over 500 fatalities. Last month another 8.4 earthquake Advancement in early warning systems notified smartphones within minutes. only 13 known fatalities and 5 persons missing. T: In fast paced Agile development, this give us an opportunity to identify influencers on performance and be notified as soon as possible.
  5. C: You might be saying, We already have tons of Measures and Metrics! Are they Visible? People don’t always look at their fuel gauge. Newer cars added a low fuel Alarm. T: We want to see measurements accessible all the time! The Empty alarm should be your indicator to stop and investigate.
  6. C: What should we measure? All resources! It’s easy and might surprise you with what you find. User perceived Performance w/ User Timing Marks T: How do I measure User Perceived Performance?
  7. C: What should we measure? AFT notation Measuring Hero Image or possibly when a focus control appears. T: How do we measure these?
  8. C: Two common ways to measure. SpeedCurve Ilya Grigorik and Peter Lubbers on the GDL HAR Show T: Trade-offs between these tools.
  9. C: Use Both Because Consistency Sample Size No Size Detail in RUM T: Let me show you briefly how simple it is to create a Budget!
  10. C: This is SpeedCurve’s form to add a budget. - Easy to implement resource and timing budgets. T: Here is what this looks like.
  11. C: This is Start Render for Zillow Home over the last 30days. Red Line Green Line T: Here is what a Custom User Timing Mark looks like.
  12. C: This is Zillow’s AFT Home Custom User Timing Mark. Many Custom User Timing Marks 3 spikes Access to each measurement in more detail or record a note! T: How often should I measure?
  13. C: It depends on how often you Release and dynamic content. More data measurements lend added insight to dynamic content Once per build. Use the API T: What do we do when a budget is exceeded?
  14. C: Identify what Changed, Evaluate Engagement! Increased Conversion is one of strongest ROI arguments. Add build labels to trends. AB Test T: How else can budgets help?
  15. C: Let’s think out of the box a bit. 3rd party is dynamic Service response times T: Budgets can be applied in many valuable ways.
  16. C: This is a screen shot from one of our perf dashboards. Zillow largest RealEstate Network on the Web 2/3rds of our traffic is mobile and on weekends exceeds 70% T: How do we manage all these budgets?
  17. C: Good Performance Budget Practices Again Prioritize User Experience How has this helped? Let me share a true story. T: During my commute one morning I saw this.
  18. C: Onload Time was over by 61%, 7 second increase T: Scrolled further…
  19. C: Image requests were over budget by 373%, 112 new images T: Scrolled Further...
  20. C: Total size over by 417% Increased to almost 13.5mb! T: This can’t be, it’s our mobile search page!! Scroll again…
  21. C: Images increased 708%, 11mb of images seemed the culprit. What’s going on? Upset users! T: Before I was in office, I had already engaged engineers at Zillow.
  22. C: This is the feature Zillow Shipped the day before. Improved Engagment in AB Test Results The data didn’t match up with my perception. Did change warrant the performance trade-offs? T: I reached out to our internal experts in Business Intelligence and they came back with this.
  23. C: Much to our surprise. Impact to engagement was Insignificant. Fluctuations with traffic patterns and other factors during this time sample represent potential influencers. T: What had changed to cause this effect?
  24. C: The engineers found a bug in a future AB Test bucket. More images were downloaded but functionally was still disabled. No PERCEIVED CHANGE in PERFORMANCE Win for vNext Feature T: Supporting that theory that Perceived Performance was not impacted.
  25. C: The SpeedIndex rating did not falter despite the 4X weight increase. - SpeedIndex interesting indicator of User Perception. T: As an aside from this investigation…
  26. C: RUM data showed a 10 sec swing in “Time to Onload”! Another case where we have debunked “Time to Onload” Just another Indicator! T: To summarize this.
  27. C: No impacts to user perceived Performance. T: We’ve covered some really interesting observations, so what have we learned?
  28. C: Increase Frequency of Measurements! Enable quick response! Budgets are an indicator and a CALL TO ACTION! User Timing marks would have enabled us to know more accurately what the user is experiencing. Give Users Extra content when It makes sense. Be mindful of data plan usage and battery power, but Delight Your Users! T:
  29. This is Mount Rainer, a dormant volcano in Washington state. A sleeping giant. Atop the pole on the right is the early warning system millions depend upon. These are lessons I’ve learned for you. I encourage all of you to implement budgets and enable your teams with their own early warning systems.
  30. Engineering Blog Tweet Slides We are Hiring! I’ll be available afterward for questions. Measure Early, Measure Often, and Measure while on a BUDGET. Thank you!