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
62
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
83
Programming Complexity
sausheong
0
700
Rollicking Ruby Robots Rule the World
sausheong
0
210
3 Things You May Not Know About The Go Template Engine
sausheong
0
230
Money, Sex and Evolution (v3)
sausheong
0
63
Polyglot
sausheong
0
52
Developing Web Applications with Go
sausheong
7
720
Money, Sex and Evolution
sausheong
1
67
Ruby, Rock and Roll
sausheong
3
270
Featured
See All Featured
How GitHub (no longer) Works
holman
304
140k
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
155
14k
KATA
mclloyd
15
12k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
125
32k
The Mythical Team-Month
searls
216
42k
Robots, Beer and Maslow
schacon
PRO
155
7.9k
Raft: Consensus for Rubyists
vanstee
132
6.3k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
Designing for humans not robots
tammielis
248
25k
Unsuck your backbone
ammeep
663
57k
No one is an island. Learnings from fostering a developers community.
thoeni
16
2.1k
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?