Qwik
Instant-on, resumable WebApps
I am Miško Hevery
CTO at Builder.io
About me
Confidential
But… is this really a problem?
Existing correlation between:
Existing correlation between:
And…
https://www.builder.io/c/performance-insights
The bottleneck is JS
Big O() notation for frameworks
Resumable
Current trend is linear because
current frameworks are O(n)
Amount of JS growing as sites require more functionality
What if frameworks were O(1)?
Correlation broken between functionality and amount of JS
Past
Current
Future
Rendering and interactivity separated
Render and interactivity united into a single framework.
Rendering done at the server by:
Interactivity:
Very performant
Slow development, error prone, duplicated logic…
Unified model, fast development, scales in complexity
Uses hydration, to enable interactivity. App runs twice.
Unified model, fast development, scales in complexity
Uses resumability, performance scales well. O(1)
App runs twice in server and client using the same tech:
App runs once, client only executes minimal bites of interactivity.
Render and interactivity united into a single framework.
DX ⬆️⬆️
PERF ⬆️⬆️
Resumable
1
Progressive
2
Virtual Machines�are awesome
Resumability�(just like VMs)
HTML
Hydration = replay app
Rendering runs twice. All logic needs to be downloaded.
Same
Resumability = resume app
Leverage what already ran in the server.
No initialization code, rendering, diffing, setting up listeners needs to run in the client.
Server serializes app state then it resumes.
Resumable
1
Progressive
2
Progressiveness
Resumable
Replayable
Runtime Perf
Startup Perf
Mitosis
Demo time
CAP theorem
Consistency
Availability
Partition Tolerance
CAP theorem
frontend
Capabilities
API
Startup�Performance
f
Frontend new paradigm
Capabilities
API
f
Startup�Performance
Thank you
Follow me
@mhevery
https://qwik.builder.io
npm init qwik@latest
BACKUP�SLIDES
Why the world needs a new solution?
Who is responsible for slow sites?
Developers?
Tools?
Frameworks?
Framework�Mental Model
Tools
Developers
Component-based development-model
Resumable Framework
Why are we building Qwik?
Web Application
�startup performance
Big O() notation
Let's talk about Frameworks
Replayable�(hydration)��vs��Resumable
O(1) frameworks are not new! but…
Wiz is an internal framework at Google:
Amazon can not use existing frameworks for its main site
All Frameworks�claim that they are�FAST
Runtime Perf
Startup�Perf
Server-side
cake baking
analogy
“baking a cake in a datacenter”