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
100
0
Share
A Tale of Two Frameworks
https://github.com/sausheong/server-frameworks
Sau Sheong Chang
February 19, 2014
More Decks by Sau Sheong Chang
See All by Sau Sheong Chang
Genetic Algorithms with Go
sausheong
0
180
Programming Complexity
sausheong
0
1.1k
Rollicking Ruby Robots Rule the World
sausheong
0
290
3 Things You May Not Know About The Go Template Engine
sausheong
0
390
Money, Sex and Evolution (v3)
sausheong
0
130
Polyglot
sausheong
0
110
Developing Web Applications with Go
sausheong
7
850
Money, Sex and Evolution
sausheong
1
130
Ruby, Rock and Roll
sausheong
3
310
Featured
See All Featured
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
780
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
150
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
70
39k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
180
Agile that works and the tools we love
rasmusluckow
331
21k
Chasing Engaging Ingredients in Design
codingconduct
0
190
Building Adaptive Systems
keathley
44
3k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.2k
Paper Plane (Part 1)
katiecoart
PRO
0
7.3k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
910
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
520
Accessibility Awareness
sabderemane
1
110
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?