6. The average attention span
of a human being dropped
from 12 seconds in 2000 to
8.25 seconds in 2015.
- National Center for Biotechnology Information at the US National Library of Medicine
8. Document Complete
What it means depends highly on what the
page actually does. For example:
“The page was completely blank at onload
and the content was all rendered afterward
in JavaScript”
https://www.webpagetest.org/forums/showthread.php?tid=13266
9. Critical Resources
The main blockers to fast rendering are stylesheets and
synchronous scripts.
Stylesheets block all rendering in the page until they
finish loading.
Synchronous scripts (e.g., <script src="main.js">)
block rendering for all following DOM elements.
Synchronous scripts in the HEAD of the page block the
entire page from rendering until they finish loading.
https://www.stevesouders.com/blog/2016/02/10/critical-metric-critical-resources/
10. a bug:
fire drill when things are broken
a criteria at all stages:
UX → development → production
a continuous process:
Monitoring → learning → improvement
Performance is…
11. Fast is good… Faster is better
Google Dev Summit
@wesleyhales
16. Local vs. Remote Monitoring
@wesleyhales
Real User Monitoring (RUM)
• Provides a restricted subset of performance API’s
and metrics.
• It’s restricted because such data may reveal
private or sensitive information about the visitor.
17. Local vs. Remote Monitoring
@wesleyhales
Just because something is possible to
measure, and perhaps is even highly
desirable and useful to many developers,
does not mean that it can be exposed as
a RUM API.
23. Navigation is about how user
agents convert the requested
HTML, CSS, and JavaScript into
rendered pixels, which is one of
the most critical steps for users
to navigate a document.
@wesleyhales
From the spec…
25. Measurements are in HRT
• All measurements are at microsecond
precision.
• Does not depend on system clock or DOM
processing
• Example: perf.now.html
performance.now()
@wesleyhales
44. Synthetic RUM
• Use Speedgun.io as
centralized server
• All docker nodes send
beacon with:
• Current container CPU and
memory usage
• API demo...
http://wesleyhales.com/blog/2015/04/24/Speedgun/
45. Continuous Perf Monitoring
• Use Speedgun.io as
centralized server
• All docker nodes send
beacon with:
• Current container CPU and
memory usage
• API demo...