Page MenuHomePhabricator

[EPIC]: Improve mobile site performance
Closed, DuplicatePublic

Description

Why

Mobile site's performance is subpar compared to Desktop (takes longer to show useful content).

Taking into account the devices and network conditions that the site targets it should be much more performant given the slower network capabilities and less capable browsers that mobile devices feature.

Goals

  • Make mobile site performance at least on par with the Desktop version.

How

Methodology

  1. Measure, establish baseline data.
  2. Plan hypothesis.
  3. Implement, local measuring. If good deploy.
  4. Measure with change deployed. Evaluate impact. Write down results.
  5. Go to 1 or 2.

Objectives

  • Expose performance metrics for analysis and after-hypothesis measuring.
  • Network payload performance detailed reports.
  • Browser performance detailed reports.
  • Hypothesis gathering.
  • Prioritize and plan implementations.
  • Implement->Measure cycle.
  • Set up performance tracking tools (to identify regressions after Q1's work).

Notes from performance meeting

  • Don't brainstorm and blindly implement ideas. Usually any ideas we can come up with will imply complex changes (like only loading the lead section) but won't have the expected return.
  • Measure and report, identify key metrics.
  • Performance work is hard to measure (predict outcomes) beforehand, you usually never know how it's going to unfold.
  • Suggested workflow is: 1. Measure and analyze. 2. Formulate hypothesis based on concrete data. 3. Implement hypothesis and goto 1.
    • Seems like for being effective on accomplishing performance goals, a continued effort through quarter will be needed (considering ^ previous point) instead of a laser focused half quarter effort.
  • Broad first-sight insights:
    • Server side time (only accountable if cache miss or logged in) is negligible compared to other factors.
    • Browser side performance is mobile's site biggest bottleneck. Roughly half time (~2s) parsing script and (~3s) rendering.
      • Looks like there's wins to be gained from optimizing on browser performance.
      • We need to research and communicate before hypothesizing.
  • Tools:
    • Besides Grafana dashboards using the graphite data we'll coordinate with the Performance team to track other types of metrics coming from other tools like,
    • Speedcurve.com for browser/front-end based performance reports.
    • Maybe sitespeed.io for tracking regressions.
  • How to do it:
    • Measure, establish baseline data.
    • Plan hypothesis.
    • Implement, local measuring. If good deploy.
    • Measure with change deployed. Evaluate impact. Write down results.
    • Go to 1 or 2.

Related Objects

StatusSubtypeAssignedTask
ResolvedNone
OpenNone
Duplicate Jhernandez
ResolvedJdlrobson
ResolvedNone
Invalidphuedx
Invalidphuedx
Invalidphuedx
Resolvedphuedx
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
Resolved Gilles
ResolvedJdlrobson
Resolved bmansurov
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
Invalidmatmarex
ResolvedJdlrobson
DeclinedJdlrobson
OpenNone
ResolvedFlorian
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
DeclinedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
Resolved Gilles
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedFlorian
InvalidFlorian
ResolvedJdlrobson
ResolvedFlorian
ResolvedJdlrobson
ResolvedAlbert221
ResolvedJdlrobson
DuplicateNone
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
DeclinedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
DeclinedNone
Resolved Jhernandez
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
DeclinedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedPeter
DuplicateNone
ResolvedBBlack
ResolvedKrinkle
Resolved Jhernandez
DeclinedNone
ResolvedJdlrobson
Resolvedphuedx
Resolvedphuedx
DeclinedNone
DeclinedCenarium
DeclinedNone
ResolvedJdlrobson
DeclinedNone
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedNone
DeclinedNone
DuplicateNone
DuplicateNone
Resolveddr0ptp4kt
ResolvedJdlrobson
ResolvedJdlrobson
DeclinedNone
DuplicateNone
ResolvedPeter
ResolvedPeter
DeclinedNone
DeclinedNone
DeclinedNone
DeclinedNone
DuplicateJdlrobson
DeclinedNone
ResolvedJdlrobson
ResolvedJdlrobson
Resolved Jhernandez
Resolved Jhernandez
ResolvedJdlrobson
ResolvedPeter
InvalidNone
DeclinedNone
ResolvedJdlrobson
DeclinedBBlack
ResolvedJdlrobson
Resolvedphuedx
ResolvedJdlrobson
ResolvedJdlrobson
Resolved Jhernandez
Resolved Jhernandez
DeclinedBBlack
Resolved Nuria
DeclinedNone
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedSumit
DuplicateNone
ResolvedJdlrobson
ResolvedKrinkle
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
DuplicateNone
Resolved Jhernandez
Resolved Jhernandez
Duplicate Nirzar
Resolveddr0ptp4kt
DuplicateNone
Resolvedovasileva
DeclinedNone
Resolved Tbayer
ResolvedJdlrobson
Resolvedori
DeclinedNone
Declinedori
ResolvedJdlrobson
Resolvedphuedx
ResolvedJdlrobson
Resolved Jhernandez
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
ResolvedJdlrobson
DeclinedNone
DeclinedJdlrobson

Event Timeline

Jhernandez claimed this task.
Jhernandez raised the priority of this task from to High.
Jhernandez updated the task description. (Show Details)
Jhernandez subscribed.
Jhernandez renamed this task from Improve mobile site performance to WIP: Improve mobile site performance.Jul 1 2015, 9:51 AM
Jhernandez set Security to None.
Jhernandez renamed this task from WIP: Improve mobile site performance to Improve mobile site performance.Jul 1 2015, 10:08 AM
Jhernandez updated the task description. (Show Details)
Jhernandez moved this task from Incoming to 2016-17 Q2 on the Web-Team-Backlog board.
Jhernandez renamed this task from Improve mobile site performance to [GOAL]: Improve mobile site performance.Jul 31 2015, 4:25 PM
Jdlrobson updated the task description. (Show Details)
Jdlrobson subscribed.

@Jhernandez when you get back we should talk about resolving/altering this goal...

Jdlrobson renamed this task from [GOAL]: Improve mobile site performance to [EPIC]: Improve mobile site performance.Oct 9 2015, 7:35 PM

This will never be done.