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
Jankety Jank
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Ben-Cooper
August 25, 2015
Programming
0
130
Jankety Jank
Whistle stop tour of the rendering pipeline & app lifecycle.
Ben-Cooper
August 25, 2015
Tweet
Share
More Decks by Ben-Cooper
See All by Ben-Cooper
Engineering Yourself
17bc17
0
39
Internal-CSS-Talk.pdf
17bc17
0
100
Mobile Web Performance
17bc17
0
76
So much to learn!
17bc17
0
74
Other Decks in Programming
See All in Programming
Fragmented Architectures
denyspoltorak
0
150
「ブロックテーマでは再現できない」は本当か?
inc2734
0
930
AWS re:Invent 2025参加 直前 Seattle-Tacoma Airport(SEA)におけるハードウェア紛失インシデントLT
tetutetu214
2
110
React 19でつくる「気持ちいいUI」- 楽観的UIのすすめ
himorishige
11
7.3k
Fluid Templating in TYPO3 14
s2b
0
130
AI巻き込み型コードレビューのススメ
nealle
1
150
疑似コードによるプロンプト記述、どのくらい正確に実行される?
kokuyouwind
0
380
MUSUBIXとは
nahisaho
0
130
AI Schema Enrichment for your Oracle AI Database
thatjeffsmith
0
260
Honoを使ったリモートMCPサーバでAIツールとの連携を加速させる!
tosuri13
1
180
Spinner 軸ズレ現象を調べたらレンダリング深淵に飲まれた #レバテックMeetup
bengo4com
1
230
[KNOTS 2026登壇資料]AIで拡張‧交差する プロダクト開発のプロセス および携わるメンバーの役割
hisatake
0
270
Featured
See All Featured
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
65
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Everyday Curiosity
cassininazir
0
130
Automating Front-end Workflow
addyosmani
1371
200k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
How to Ace a Technical Interview
jacobian
281
24k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
160
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
1
49
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Transcript
Jankety Jank
0
Jank?
Aalreet! means hello
? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
None
100ms to 10s
Frame Budget 1000 / 60 = 16.6ish
The Rendering Pipeline Warning - browser internals are around the
bend.
Renderer Process GPU Process
Renderer Process GPU Process Compositor Compositor Worker Thread/s Main Thread
GPU Thread
None
Parsing Converting code to various tree structures
Tokeniser Parse Tree DOM Script Exe
“Scripts at the bottom”
html head meta link body p hello world DOM +
CSSOM body font-size: 16px p display: none = Render Tree body
Layout Calculate position and size of nodes in tree.
None
Batched & Immediate Browser batches changes. Certain things force an
immediate layout.
Tread Carefully Forced sync layout. Layout thrashing. http://bit.ly/1TbWsmx Batch operations.
FastDOM
Paint
Two Step Process
Draw Calls
Rasterization
Compositing
Update Layer Tree Image Decode Major GC Evaluate Script Minor
GC Timer Fired
Interval
Continous.
R.A.I.L
Example
Load - 1s
Idle - 50ms chunks
Animation - 16.6ms 8ms
You the compositor
Reduce Paint Areas will-change: transform, translateZ(0)
F.L.I.P bit.ly/1TJ4VAv
Response 100ms
e.preventDefault()
All weighted equally
Go Explore
Go Educate
Context is key
Thanks