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
Model, View, Whatever.
Search
Dominic Barker
January 08, 2015
Programming
130
0
Share
Model, View, Whatever.
Some ideas to help you build complex javascript applications that don't ruin the internet.
Dominic Barker
January 08, 2015
More Decks by Dominic Barker
See All by Dominic Barker
Introduction to functional programming with Javascript
dakuan
0
58
Atomic Architecture
dakuan
3
170
Somewhat Stylish
dakuan
1
63
Other Decks in Programming
See All in Programming
PCOVから学ぶコードカバレッジ #phpcon_odawara
o0h
PRO
0
280
2026_04_15_量子計算をパズルとして解く
hideakitakechi
0
130
10年分の技術的負債、完済へ ― Claude Code主導のAI駆動開発でスポーツブルを丸ごとリプレイスした話
takuya_houshima
0
2.7k
リセットCSSを1行消したらアクセシビリティが向上した話
pvcresin
1
110
GitHubCopilotCLIをはじめよう.pdf
htkym
0
300
t *testing.T は どこからやってくるの?
otakakot
1
830
AI時代のエンジニアリングの原則 / Engineering Principles in the AI Era
haru860
0
880
Programming with a DJ Controller — not vibe coding
m_seki
3
650
Cache-moi si tu peux : patterns et pièges du cache en production - Devoxx France 2026 - Conférence
slecache
0
320
Explore CoroutineScope
tomoeng11
0
120
AIエージェントで業務改善してみた
taku271
0
550
Firefoxにコントリビューションして得られた学び
ken7253
0
110
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.4k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
820
Test your architecture with Archunit
thirion
1
2.2k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
230
How to Ace a Technical Interview
jacobian
281
24k
Designing for Timeless Needs
cassininazir
0
210
Code Review Best Practice
trishagee
74
20k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.7k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.2k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
320
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
Transcript
Model, View, Whatever. *Document Object Model - not me! or
how I learned to stop worrying and love the DOM*
We ♥ Single Page Applications
• Complex UI • Feel really fast • Comparable to
native mobile apps • Can work offline • Cool MVC MVW frameworks galore
But…
None
• Javascript :( • Initial page load • Duplicated code
• < noscript /> • IE <9 Internet Explorer • Deep linking • Error handling • SEO
Another way is possible.
None
• Render a full working web page on the server
• For all routes, not just the first hit of index page • Bind SPA afterwards • SPA uses the same markup • Client and server use same templates
• Real forms! • Real links! • No duplicated templates!
• No white screen of death! • Error recovery for free! • Cheap integration tests! • Maximum dev gibberish: Isomorphic Application
None
Dom Barker Software Engineer @ Quill Content @mostlyharmlessd www.dombarker.co.uk www.github.com/dakuan
www.npmjs.com/~dakuan