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 Tale of Two Frameworks
Search
Sau Sheong Chang
February 19, 2014
0
75
A Tale of Two Frameworks
https://github.com/sausheong/server-frameworks
Sau Sheong Chang
February 19, 2014
Tweet
Share
More Decks by Sau Sheong Chang
See All by Sau Sheong Chang
Genetic Algorithms with Go
sausheong
0
150
Programming Complexity
sausheong
0
960
Rollicking Ruby Robots Rule the World
sausheong
0
260
3 Things You May Not Know About The Go Template Engine
sausheong
0
340
Money, Sex and Evolution (v3)
sausheong
0
100
Polyglot
sausheong
0
86
Developing Web Applications with Go
sausheong
7
810
Money, Sex and Evolution
sausheong
1
100
Ruby, Rock and Roll
sausheong
3
300
Featured
See All Featured
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Why Our Code Smells
bkeepers
PRO
340
57k
jQuery: Nuts, Bolts and Bling
dougneiner
65
7.9k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
GitHub's CSS Performance
jonrohan
1032
470k
Keith and Marios Guide to Fast Websites
keithpitt
412
23k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Code Review Best Practice
trishagee
72
19k
The Cult of Friendly URLs
andyhume
79
6.7k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.7k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
31
2.7k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Transcript
A Tale of Two Frameworks Chang Sau Sheong @sausheong
“It was the best of times, it was the worst
of times …”
None
How web frameworks work
Server Client Request Response Header Body Header Body HTTP methods:
GET, POST etc Status codes: 200, 404 etc
None
Parts of a server-side web framework
Models
Routes
Views
Assets
Minimalist Sinatra + Haml + Sequel + Postgres
Alternative Cuba + Mustache + Mongoid + MongoDB
Minimalist
Least effort
Code for humans
Principle of Good Enough
Sinatra
“Domain specific language for quickly creating web applications.”
None
*HTML abstraction markup language
“Markup should be beautiful.”
%section.container %h1= post.title %h2= post.subtitle .content = post.content <section class=”container”>
<h1><%= post.title %></h1> <h2><%= post.subtitle %></h2> <div class=”content”> <%= post.content %> </div> </section>
None
None
“Ruby object relational mapper.”
None
Migrate (Create the database tables)
Model
None
Alternative
Cuba
“Ruby microframework for web development.”
Hierarchical routes
Focus on matching
None
{ Mustache
“Logic-less templates.”
There are only tags.
None
None
“Document database with JSON- styled documents.”
Mongoid
“Ruby object document mapper for MongoDB.”
None
https://github.com/sausheong/server-frameworks
Questions?