Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Dear performant app,
Search
Nishu Goel
August 03, 2021
Programming
0
92
Dear performant app,
Talks the optimisation techniques for your dear frontend application
Nishu Goel
August 03, 2021
Tweet
Share
More Decks by Nishu Goel
See All by Nishu Goel
Diagnosing INP & Breaking down long tasks
nishugoel
0
510
The Angular Router - TrivandrumTechCon20
nishugoel
4
180
Creating Libraries in Angular
nishugoel
0
190
CRUD operations in Angular 7
nishugoel
1
320
ngIndia - HostBinding() and HostListener()
nishugoel
0
210
Other Decks in Programming
See All in Programming
Pydantic x Database API:turu-pyの開発
yassun7010
1
570
Re:PandasAI:生成AIがデータ分析業務にもたらすパラダイムシフト【増補改訂版】
negi111111
1
920
Competitionsだけじゃない! Kaggle Notebooks Grandmasterのすすめ
corochann
1
140
게임 개발하던 학생이이 세계에선 안드로이드 개발자?
pangmoo
0
110
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
1.2k
Cohesion in Modeling and Design
mploed
3
200
Introduce dRuby
ledsun
0
110
CSC509 Lecture 04
javiergs
PRO
0
140
2024-10-02 dev2next - Application Observability like you've never heard before
jonatan_ivanov
0
180
自分だけの世界を創るクリエイティブコーディング / Creative Coding: Creating Your Own World
chobishiba
2
1.1k
선언형 UI를 학습할 때 알아둬야하는 키워드들
l2hyunwoo
0
140
DjangoNinjaで高速なAPI開発を実現する
masaya00
0
510
Featured
See All Featured
Documentation Writing (for coders)
carmenintech
65
4.4k
Making the Leap to Tech Lead
cromwellryan
131
8.8k
In The Pink: A Labor of Love
frogandcode
139
22k
Fireside Chat
paigeccino
32
3k
The Invisible Side of Design
smashingmag
297
50k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
No one is an island. Learnings from fostering a developers community.
thoeni
19
2.9k
Being A Developer After 40
akosma
84
590k
Visualization
eitanlees
143
15k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.8k
Designing Experiences People Love
moore
138
23k
Navigating Team Friction
lara
183
14k
Transcript
Nishu Goel Dear non-performant app,
Nishu Goel Dear app, performant non-performant
Nishu Goel @TheNishuGoel NishuGoel
Why are discussing performance? bit.ly/dear_performant_app
Why are discussing performance?
Core Web Vitals - loading, - interactivity, - and visual
stability bit.ly/dear_performant_app
LCP Largest Contentful paint 2.5 seconds 4 seconds
FID First Input delay 100 ms 300 ms
CLS Cumulative layout shift 0.1 0.25
LCP (Largest Contentful paint) 2.5 seconds 4 seconds let’s work
towards the we need to unblock our render, and make it show up faster
LCP (Largest Contentful paint) 2.5 seconds 4 seconds let’s work
towards the Inline fonts Inline critical CSS Optimise files Preload important resources Lazy load resources Serve adaptive navigator.connection.effectiveType === '4g' <link rel="stylesheet" href="app.css" media="print" onload=“this.media=‘all’">, critters <link href="https://fonts.googleapis.." rel="stylesheet"> use imagemin, use CDN, responsive images, newer formats (webp, jpeg2000) <link rel="preload"… loading="lazy"
FID (First input delay) 100 ms 300 ms let’s work
towards the Our page needs to be interaction ready and respond quicker
FID (First input delay) 100 ms 300 ms let’s work
towards the Defer unused Javascript (code splitting, async/defer) Minimise unused polyfills import {lazy} from “React” const AddEditWebsite = lazy(() => import(‘./add-edit-website')); type=module / nomodule <script defer….. /> <script async….. />
CLS (Cumulative layout shift) 0.1 0.25 let’s work towards the
Our page elements need to NOT jump and please the users’ eyes
CLS (Cumulative layout shift) 0.1 0.25 let’s work towards the
Give dimensions to images, iframe etc. elements dynamic content only when user is expecting it bit.ly/dear_performant_app
Weak Ref & Finalizers https://nishugoel.medium.com/heard-of-weak-refs-in-javascript-1132b3c1c44 bit.ly/dear_performant_app
thank you. bit.ly/dear_performant_app