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
The brief seeds of Padrino
Search
aereal
December 10, 2011
Technology
3
720
The brief seeds of Padrino
at 2011/12/10, Padrino Sabbath in Kyoto
aereal
December 10, 2011
Tweet
Share
More Decks by aereal
See All by aereal
盆栽転じて家具となる / Bonsai and Furnitures
aereal
0
3.7k
How to send distibuted traces to Datadog using build own OpenTelemetry-Lambda distribution
aereal
3
240
好きな技術《コト》で、 生きていく技術 / life with what you like
aereal
5
3.2k
qron: Cloud Native Cron Alternativeの今
aereal
2
2.3k
自動作曲入門 / introduction to programatic music composition
aereal
1
530k
はてなブログ タグとCDK / The epic of AWS CDK and Hatena Blog Tag
aereal
3
200k
はてなブログ タグの技術選択 / The technical details of Hatena Blog Tag
aereal
3
200k
ブログサービスのHTTPS化を支えたAWSで作るピタゴラスイッチ / The construction of large scale TLS certificates management system with AWS
aereal
3
400k
AWSではてなブログの常時HTTPS配信をバーンとやる話 / The Epic of migration from HTTP to HTTPS on Hatena Blog with AWS
aereal
14
18k
Other Decks in Technology
See All in Technology
アジャイル開発とスクラム
araihara
0
170
ホワイトボードチャレンジ 説明&実行資料
ichimichi
0
130
現場で役立つAPIデザイン
nagix
33
12k
JEDAI Meetup! Databricks AI/BI概要
databricksjapan
0
110
個人開発から公式機能へ: PlaywrightとRailsをつなげた3年の軌跡
yusukeiwaki
11
3k
(機械学習システムでも) SLO から始める信頼性構築 - ゆる SRE#9 2025/02/21
daigo0927
0
130
現場の種を事業の芽にする - エンジニア主導のイノベーションを事業戦略に装着する方法 -
kzkmaeda
2
2.1k
Larkご案内資料
customercloud
PRO
0
650
SA Night #2 FinatextのSA思想/SA Night #2 Finatext session
satoshiimai
1
140
偶然 × 行動で人生の可能性を広げよう / Serendipity × Action: Discover Your Possibilities
ar_tama
1
1.1k
速くて安いWebサイトを作る
nishiharatsubasa
10
13k
インフラをつくるとはどういうことなのか、 あるいはPlatform Engineeringについて
nwiizo
5
2.6k
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
Bootstrapping a Software Product
garrettdimon
PRO
306
110k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
How to Ace a Technical Interview
jacobian
276
23k
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
The Language of Interfaces
destraynor
156
24k
For a Future-Friendly Web
brad_frost
176
9.5k
A better future with KSS
kneath
238
17k
Bash Introduction
62gerente
611
210k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.1k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Transcript
THE BRIEF SEEDS OF PADRINO by @aereal, at Padrino Sabbath
in Kyoto
WHO AM I? @aereal id:aereal GitHub: aereal Undergraduate student majoring
(Cognitive) Psychology Part-time (Rails) engineer at Happy Elements K.K. see also: kerare.org/
WORKS Padrino::Validation::HTML5 Add supports HTML5 form validations to Padrino github.com/aereal/padrino-validation-html5
Hated mocking server which can be utilized for Hatena Diary github.com/aereal/hated
TABLE OF CONTENTS The essentials of developing a Web Application
The History of Web Application Frameworks Padrino and Sinatra Padrino and Rails Padrino and Others
THE ESSENTIALS OF DEVELOPING WEB APPLICATION
THE ESSENTIALS OF DEVELOPING A WEB APP. Fast Compact Portable
FAST? Reading Coding Setting-up Loading Deploying
COMPACT? Application Code Framework Code Dependencies Architecture
PORTABLE? Dependencies Hosting Services Size of Application (and Framework)
“Less is more.” Ludwig Mies van der Rohe (1886-1969)
I MEAN Keep developing a web app: Fast Compact Portable
Then you take a delight in!
THE HISTORY OF WEB APPLICATION FRAMEWORK
History repeats itself
DRY = Don’t Repeat Yourself
We should learn from the History
THE HISTORY OF WEB APP. FRAMEWORK (CGI, Common Gateway Interface)
Full-stack (Minimal) Micro-framework
FULL-STACK FRAMEWORK Rails (Ruby) Django (Python) Catalyst (Perl)
FULL-STACK FRAMEWORK Forms the big cultural sphere Relieves your mind
by hiding what you mind You’ll never know them unless you will
MICRO-FRAMEWORK Sinatra (Ruby) Juno (Python) Mojolicious::Lite, Amon2 (Perl) Loli (!)
-> Miku (!!!) (Haskell) Scalatra (Scala)
MICRO-FRAMEWORK Forms small/open cultural sphere Relieves your mind by showing
what you do You should write/know only what you do
!!! Rails vs. Sinatra !!!
IMAGINE!
ੜଘઓུʙ
SURVIVING STRATEGY Rails doesn’t kill Sinatra Rails doesn’t have small
spin-up Sinatra doesn’t kill Rails Sinatra doesn’t have the order
your_desires << small spin-up your_desires << fast spin-up your_desires <<
the order your_desires << scaling
Padrino.include?(your_desire) # -> true
PADRINO AND SINATRA
PADRINO IS BUFFET
PADRINO IS BUFFET Routing (Named, Multiple Format) Helpers Logger Admin
Apps (like Django) Reloader (It’s smart!) see also: www.padrinorb.com/#introduction
PADRINO IS FXXKIN’ SHIT? Extending Sinatra through Public / Safe
API but Padrino::Routing is like a abyss ... use (Rack Middleware) register (Sinatra Extension)
Sinatra’s World?
THE DOMAIN OF SINATRA = HTTP
KEEP IT LESS No DBs No helpers No anything luxurious
LESS IS NOT IMPOSSIBLE DB / ORM View Helpers You
can use it with Sinatra!
ON THE SINATRA Sinatra discovered potential / real needs Sinatra
built them Specifications beat Conventions
PADRINO AND RAILS
PADRINO AND RAILS Rails is full-stack Padrino can be full-stack
This means you can use Padrino as not full-stack
RAILS IS THE INNOVATOR Discovered many important things Spirit of
DRY, or CoC ActiveRecord, ActiveSupport, etc. Sometimes it makes a detour The innovation involves pains
PADRINO IS THE GODFATHER
PADRINO IS THE GODFATHER He glues the components of Web
Applications Test Frameworks ORM etc. He guards Sinatra’s World
ROUTING Rails config/routes.rb resource[s] (>= 3.0) Padrino & Sinatra HTTP
Verbs (get, post, etc ...)
VIEW Rails ActionView Padrino & Sinatara Tilt (>= 1.0)
HERITAGES Architectures and Spirits MVC DRY Luxuoriousness
CONCLUSIONS Padrino is on the Sinatra’s World Rails’ heritages are
behind Padrino, Sinatra, and Rails should be all in harmony
SEE ALSO Padrino Official Web (www.padrinorb.com) Padrino Official Web (ja)
(jp.padrinorb.com) Padrino on GitHub (github.com/padrino/padrino- framework) Padrino Recipes (github.com/padrino/padrino-recipes) Sinatra The Book (sinatra-book.gittr.com)
SEE ALSO @udzura’s Blog (blog.udzura.jp/) and, my blog :) (aereal.hateblo.jp)