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
A DIY Guide To Building Your Own Rendering Engi...
Search
Francesco Strazzullo
May 09, 2019
Programming
0
390
A DIY Guide To Building Your Own Rendering Engine - JsDay Verona 2019
Francesco Strazzullo
May 09, 2019
Tweet
Share
More Decks by Francesco Strazzullo
See All by Francesco Strazzullo
Strategic Testing Decisions - Build Stuff 2021
francescostrazzullo
0
76
Contract-Driven_Development.pdf
francescostrazzullo
0
570
Domain-Driven Frontend
francescostrazzullo
0
1.3k
Strategic Testing Decisions
francescostrazzullo
0
340
A DIY Guide To Building Your Own Rendering Engine - CityJS2021
francescostrazzullo
2
80
Technical Decision-making Anti-patterns - Avanscoperta Meetup 2021
francescostrazzullo
0
410
How to Choose Your Next Technology Stack
francescostrazzullo
0
950
The Definition of Framework
francescostrazzullo
1
930
How to Choose Your Next Technology Stack
francescostrazzullo
1
250
Other Decks in Programming
See All in Programming
コミュニティ駆動 AWS CDK ライブラリ「Open Constructs Library」 / community-cdk-library
gotok365
2
250
Drawing Heighway’s Dragon- Recursive Function Rewrite- From Imperative Style in Pascal 64 To Functional Style in Scala 3
philipschwarz
PRO
0
120
たのしいSocketのしくみ / Socket Under a Microscope
coe401_
8
1.4k
もう少しテストを書きたいんじゃ〜 #phpstudy
o0h
PRO
19
4.2k
データベースのオペレーターであるCloudNativePGがStatefulSetを使わない理由に迫る
nnaka2992
0
240
お前もAI鬼にならないか?👹Bolt & Cursor & Supabase & Vercelで人間をやめるぞ、ジョジョー!👺
taishiyade
7
4.2k
Serverless Rust: Your Low-Risk Entry Point to Rust in Production (and the benefits are huge)
lmammino
1
160
苦しいTiDBへの移行を乗り越えて快適な運用を目指す
leveragestech
0
1.1k
ファインディLT_ポケモン対戦の定量的分析
fufufukakaka
0
940
.NET Frameworkでも汎用ホストが使いたい!
tomokusaba
0
200
良いコードレビューとは
danimal141
7
3.9k
Datadog DBMでなにができる? JDDUG Meetup#7
nealle
0
150
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Embracing the Ebb and Flow
colly
84
4.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Navigating Team Friction
lara
183
15k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Gamification - CAS2011
davidbonilla
80
5.2k
Designing Experiences People Love
moore
140
23k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
650
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Transcript
A DIY Guide To Building Your Own Rendering Engine
Francesco Strazzullo (AKA Strazz) @TheStrazz86 (Follow me on Twitter!) Ego
Slide
WE DEVELOP DIGITAL PROJECT TOGETHER WITH YOU.
Start With Why
Why should you learn to build a Rendering Engine?
Let me tell you a story...
None
Some years ago, we had to create a new front-end
application on top of an old Java Framework...
None
We couldn’t add new dependencies...
None
The only available libraries were jQuery and underscore
None
We delivered the project, but our team was unhappy
Photo by George Bonev on Unsplash
Microwave spaghetti bolognese by BBC Food
We panicked
“Never Manipulate the DOM” Every JavaScript Developer
Manipulating DOM is hard
None
Manipulating DOM is important for a frontend developer
We should be able to “own” rendering code
None
Principles
Choose a simple Architecture
None
YAGNI (You aren't gonna need it)
“Premature optimization is the root of all evil” Donald Knuth
Performance is UX
None
stats.js http://mrdoob.github.io/stats.js/
None
Eat The Frog
https://github.com/francesco-strazzullo/jdsay-talk-2019
What's next?
Event Handlers
Web Components
What I learned
Manipulating DOM is (not so) hard
A custom Rendering Engine can live in harmony with frameworks
It’s not a black or white solution
How to decide if it’s a good solution?
To be continued... https://medium.com/@TheStrazz86/framework-compass-chart-d3851c25b45d
One last thing...
https://www.apress.com/it/book/9781484249666
http://frameworklessmovement.org/
Thanks! Francesco Strazzullo strazz@flowing.it