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
740
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
4.7k
How to send distibuted traces to Datadog using build own OpenTelemetry-Lambda distribution
aereal
3
270
好きな技術《コト》で、 生きていく技術 / life with what you like
aereal
5
3.9k
qron: Cloud Native Cron Alternativeの今
aereal
2
2.7k
自動作曲入門 / 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
実践! AIエージェント導入記
1mono2prod
0
110
IAMのマニアックな話 2025を執筆して、 見えてきたAWSアカウント管理の現在
nrinetcom
PRO
4
620
Uniadex__公開版_20250617-AIxIoTビジネス共創ラボ_ツナガルチカラ_.pdf
iotcomjpadmin
0
120
CSS、JSをHTMLテンプレートにまとめるフロントエンド戦略
d120145
0
160
ObsidianをMCP連携させてみる
ttnyt8701
2
130
Amazon Q Developer for GitHubとAmplify Hosting でサクッとデジタル名刺を作ってみた
kmiya84377
0
3.5k
DenoとJSRで実現する最速MCPサーバー開発記 / Building MCP Servers at Lightning Speed with Deno and JSR
yamanoku
1
160
Navigation3でViewModelにデータを渡す方法
mikanichinose
0
140
原則から考える保守しやすいComposable関数設計
moriatsushi
3
480
本部長の代わりに提案書レビュー! KDDI営業が毎日使うAIエージェント「A-BOSS」開発秘話
minorun365
PRO
14
2k
vLLM meetup Tokyo
jpishikawa
1
250
DroidKnights 2025 - Jetpack XR 살펴보기: XR 개발은 어떻게 이루어지는가?
heesung6701
1
150
Featured
See All Featured
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
6
690
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
Bash Introduction
62gerente
614
210k
Building an army of robots
kneath
306
45k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
4 Signs Your Business is Dying
shpigford
184
22k
Making Projects Easy
brettharned
116
6.2k
Making the Leap to Tech Lead
cromwellryan
134
9.3k
The Invisible Side of Design
smashingmag
299
51k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
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)