Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Performance Empathy

Performance Empathy

Performance Empathy at JSConfEU

Houssein Djirdeh

June 02, 2019
Tweet

More Decks by Houssein Djirdeh

Other Decks in Programming

Transcript

  1. Median JS: ~350 KB Sum of transfer size of all

    external scripts on mobile in 2019 (median) - HTTP Archive
  2. 50% ship over 1MB of JS (251,283 origins) Sum of

    all scripts (mobile) for sites that use Angular, React or Vue (04/2019) - HTTP Archive bit.ly/bytes-js-query
  3. #1 You get an idea Scenario You find out how

    to build it You start building
  4. Learning a new tool Launching your first website Launching your

    10th website Noticing performance issues Performance awareness
  5. • There are way too many slow sites • Are

    developers “sloppy” when they ship slow experiences? Advocate
  6. • Can focus on a million things with performance being

    one of them • Are advocates “out-of-touch”? Developer
  7. Header Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aliquam

    fringilla magna at dolor dignissim iaculis. Donec lacinia in libero quis dignissim. Etiam tempor efficitur orci. Aenean a tempor ante, nec sagittis elit. Integer tristique, massa blandit ullamcorper accumsan, nulla dui efficitur nunc, et aliquam purus mi sit amet quam Eu finibus turpis feugiat. Pellentesque diam risus, iaculis ac est eget, varius <img src=“raptors.jpg" loading="lazy" /> 1 We need better defaults • Browser-level
  8. amet, consectetur adipiscing elit. Aliquam fringilla magna at dolor dignissim

    iaculis. Donec lacinia in libero quis dignissim. Etiam tempor efficitur orci. Aenean a tempor ante, nec sagittis elit. Integer tristique, massa blandit ullamcorper accumsan, nulla dui efficitur nunc, et aliquam purus mi sit amet quam Eu finibus turpis feugiat. Pellentesque diam risus, iaculis ac est eget, varius congue justo. Etiam hendrerit, lorem non luctus porttitor, tellus elit dictum orci, a rutrum nisl <img src=“raptors.jpg" loading="lazy" /> 1 We need better defaults • Browser-level
  9. 1 We need better defaults <virtual-scroller id='scroller'> <div>Item 1</div> <div>Item

    2</div> ... <div>Item 1000</div> </virtual-scroller> • Browser-level
  10. 1 We need better defaults <virtual-scroller id='scroller'> <div>Item 1</div> <div>Item

    2</div> ... <div>Item 1000</div> </virtual-scroller> • Browser-level
  11. 1 We need better defaults <virtual-scroller id='scroller'> <div>Item 1</div> <div>Item

    2</div> ... <div>Item 1000</div> </virtual-scroller> • Browser-level