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
0
130
Model, View, Whatever.
Some ideas to help you build complex javascript applications that don't ruin the internet.
Dominic Barker
January 08, 2015
Tweet
Share
More Decks by Dominic Barker
See All by Dominic Barker
Introduction to functional programming with Javascript
dakuan
0
56
Atomic Architecture
dakuan
3
150
Somewhat Stylish
dakuan
1
61
Other Decks in Programming
See All in Programming
NixOS + Kubernetesで構築する自宅サーバーのすべて
ichi_h3
0
750
階層構造を表現するデータ構造とリファクタリング 〜1年で10倍成長したプロダクトの変化と課題〜
yuhisatoxxx
3
1k
Web フロントエンドエンジニアに開かれる AI Agent プロダクト開発 - Vercel AI SDK を観察して AI Agent と仲良くなろう! #FEC余熱NIGHT
izumin5210
3
530
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
310
Introducing ReActionView: A new ActionView-Compatible ERB Engine @ Kaigi on Rails 2025, Tokyo, Japan
marcoroth
3
1k
What's new in Spring Modulith?
olivergierke
1
150
育てるアーキテクチャ:戦い抜くPythonマイクロサービスの設計と進化戦略
fujidomoe
1
170
「ちょっと古いから」って避けてた技術書、今だからこそ読もう
mottyzzz
10
6.7k
CSC305 Lecture 05
javiergs
PRO
0
210
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
350
Writing Better Go: Lessons from 10 Code Reviews
konradreiche
0
1.2k
2分台で1500examples完走!爆速CIを支える環境構築術 - Kaigi on Rails 2025
falcon8823
3
3.6k
Featured
See All Featured
How GitHub (no longer) Works
holman
315
140k
Docker and Python
trallard
46
3.6k
Become a Pro
speakerdeck
PRO
29
5.5k
Being A Developer After 40
akosma
91
590k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Typedesign – Prime Four
hannesfritz
42
2.8k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
189
55k
The Cult of Friendly URLs
andyhume
79
6.6k
How to Think Like a Performance Engineer
csswizardry
27
2k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
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