Reading/Web/Projects/Performance/Lazy loading secondary content

From mediawiki.org
< Reading‎ | Web‎ | Projects

Hypothesis[edit]

Certain content doesn't necessarily need to be shipped to the user upfront and sometimes not at all. A good example is the navbox content (this content also is not optimised for mobile but that's a secondary concern and out of scope for this test). We can remove this HTML from the initial page load and lazy load it if and when needed.

Progress[edit]

We initially tested doing this on our beta environments.

An expanded version of this test was re-run in production.

As of Wednesday 16th March 2016 (00:11 PST) we experimented with stripping secondary content from HTML to reduce the HTML bytes shipped to users. The results were not conclusive, but they showed a small improvement in fully loaded time. It was not clear on how this impacted the bytes we shipped to users.

Next steps[edit]

When it's possible for NavigationTiming to collect bytes shipped we may want to run an A/B test to show the benefits of removal.

Given the small benefits, post images and references changes we may want to revert it and work with the community to get to a place where we can make the navbox template more useful for mobile screens.