Six bottles of RUM: surprising stories of real world mobile performance

Thanks to abstraction, web developers enjoy a remarkably homogeneous development environment even across browsers and computing architectures. But abstraction only provides the illusion of a common platform: the implementation complexities of browser, operating system, hardware and wireless network can turn development best practices into anti-patterns.  

Real world measurement at scale is the only reliable way for web engineers to understand the performance behaviour of routine techniques, considered to be best practices in desktop web development, on smartphones running on cellular data networks. 

In this talk, I'll go over surprising results of real world RUM tests on modern mobile web browsers with millions of samples answering questions such as: 

* How long does it take the average phone to download content from a "cold" connection?
* Is domain sharding a best practice for mobile? 
* When should you use data URIs? 
* Should you use CSS sprites on mobile?
* Should you bother with a cookie-free domain?
* How much impact does CSS complexity have on mobile page load time?