An open API service indexing awesome lists of open source software.

https://github.com/hom3chuk/voronezh-talk

Voronezh webperf tools talk links, snippets and stuff
https://github.com/hom3chuk/voronezh-talk

perfmatters performance performance-tools rum taki talks webperf wpt

Last synced: 3 months ago
JSON representation

Voronezh webperf tools talk links, snippets and stuff

Awesome Lists containing this project

README

        

Voronezh webperf tools talk stuff.

# Links
## Why?
[Google article with some links to research](https://www.thinkwithgoogle.com/marketing-resources/experience-design/mobile-page-speed-load-time/)

## Tools
### Synthetic
- [Google PageSpeed](https://developers.google.com/speed/pagespeed/insights/) and here's a [shiny version for your boss](https://testmysite.withgoogle.com/intl/en-gb)
- [GTmetrix](https://gtmetrix.com/)
- [Pingdom](https://tools.pingdom.com/)
- [WebPageTest](https://www.webpagetest.org/) (WPT)
- Built on top of WPT: [SpeedCurve](https://speedcurve.com/) and [MachMetrics](https://www.machmetrics.com/) (disc: me and MM do webperf case studies together)

### RUM (Real User Monitoring/Measurements)
- [Google Analytics](https://analytics.google.com/analytics/web/#report/content-site-speed-overview/)
- [New Relic](https://newrelic.com/)
- [AppOptics](https://www.appoptics.com/)
- [Taki](https://takiapp.com/) (disc: I'm on the team ๐Ÿ™‹๐Ÿป)

# Slides
- [Online version](https://hom3chuk.github.io/voronezh-talk/index.html)
- [slideshare](https://www.slideshare.net/EugeneChekan/webperf-the-missing-manual-vrn)
- [Keynote app file](https://github.com/hom3chuk/voronezh-talk/blob/master/voronezh.key)

# Other links
[Critical rendering path Udacity course by Ilya Grigorik](https://developers.google.com/web/fundamentals/performance/critical-rendering-path/) ([GitHub](https://github.com/igrigorik))

# Snippets
## Enable 100% sampling for RUM in GA


// This is your generic GA snippet
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

ga('create',
'UA-xxxxxx', // Your Universal Analytics ID
ย {'siteSpeedSampleRate': 100} // <- this is the magicย ๐ŸŒ
);
ga('send', 'pageview');

## Insert non-critical CSS and JS on Request Animation Frame
```




// Here we load'em
var loadDeferredStyles = function() {
var addStylesNode = document.getElementById("deferred-resources");
var replacement = document.createElement("div");
replacement.innerHTML = addStylesNode.textContent;
document.body.appendChild(replacement);
addStylesNode.parentElement.removeChild(addStylesNode);
};

var raf = requestAnimationFrame || mozRequestAnimationFrame ||
webkitRequestAnimationFrame || msRequestAnimationFrame;
if (raf) raf(function() { window.setTimeout(loadDeferredStyles, 0); });
else window.addEventListener("load", function() { window.setTimeout(loadDeferredStyles, 0)});

```

# Reach out
- [Twitter](https://twitter.com/fast_wordpress)
- [Email](mailto:[email protected])
- [Damn Fast WordPress: the Book](https://damnfastwordpress.com/the-book/)
- Telegram `hom3chuk`