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
430
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
85
Contract-Driven_Development.pdf
francescostrazzullo
0
600
Domain-Driven Frontend
francescostrazzullo
0
1.9k
Strategic Testing Decisions
francescostrazzullo
0
350
A DIY Guide To Building Your Own Rendering Engine - CityJS2021
francescostrazzullo
2
92
Technical Decision-making Anti-patterns - Avanscoperta Meetup 2021
francescostrazzullo
0
420
How to Choose Your Next Technology Stack
francescostrazzullo
0
1.6k
The Definition of Framework
francescostrazzullo
1
1.6k
How to Choose Your Next Technology Stack
francescostrazzullo
1
260
Other Decks in Programming
See All in Programming
猫と暮らすネットワークカメラ生活🐈 ~Vision frameworkでペットを愛でよう~ / iOSDC Japan 2025
yutailang0119
0
220
LLMとPlaywright/reg-suitを活用した jQueryリファクタリングの実際
kinocoboy2
4
670
2025年版 サーバーレス Web アプリケーションの作り方
hayatow
23
25k
overlayPreferenceValue で実現する ピュア SwiftUI な AdMob ネイティブ広告
uhucream
0
110
開発生産性を上げるための生成AI活用術
starfish719
1
170
ネイティブ製ガントチャートUIを作って学ぶUICollectionViewLayoutの威力
jrsaruo
0
130
高度なUI/UXこそHotwireで作ろう Kaigi on Rails 2025
naofumi
4
3.5k
いま中途半端なSwift 6対応をするより、Default ActorやApproachable Concurrencyを有効にしてからでいいんじゃない?
yimajo
2
340
2分台で1500examples完走!爆速CIを支える環境構築術 - Kaigi on Rails 2025
falcon8823
3
3.1k
ポスターセッション: 「まっすぐ行って、右!」って言ってラズパイカーを動かしたい 〜生成AI × Raspberry Pi Pico × Gradioの試作メモ〜
komofr
0
950
プロダクト開発をAI 1stに変革する〜SaaS is dead時代で生き残るために〜 / AI 1st Product Development
kobakei
0
490
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
130
Featured
See All Featured
RailsConf 2023
tenderlove
30
1.2k
Designing for Performance
lara
610
69k
How to train your dragon (web standard)
notwaldorf
96
6.3k
Building Applications with DynamoDB
mza
96
6.6k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
30
2.9k
Agile that works and the tools we love
rasmusluckow
331
21k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
Git: the NoSQL Database
bkeepers
PRO
431
66k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
850
Navigating Team Friction
lara
189
15k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
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
[email protected]