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
Why not to use Rails? (actually it's when not t...
Search
Arik Fraimovich
November 12, 2012
Programming
220
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Why not to use Rails? (actually it's when not to use Rails)
My Rails Israel 2012 conference talk.
Arik Fraimovich
November 12, 2012
More Decks by Arik Fraimovich
See All by Arik Fraimovich
Reversim Summit 2014: re:dash a new way to query, visualize and collaborate on data
arikfr
0
130
String Calculator Kata
arikfr
0
82
Measure Everything
arikfr
2
91
Other Decks in Programming
See All in Programming
改善しないと、タスクが回らない。 “てんこ盛りポジション” を引き継いだ情シスの、入社3ヶ月の業務改善録
krm963
0
100
アルゴリズムは何を圧縮しているのか ─ Haskell から育った「圧縮代数」というメンタルモデル
naoya
16
3.6k
【やさしく解説 設計編・中級 #1】一つの車に、運転手は一人 ~ある倉庫システムの事例から~
panda728
PRO
0
190
数百円から始めるRuby電子工作
tarosay
0
100
GDG Korea Android: 2026 I/O Extended ~ What's new in Android development tools
pluu
0
100
任せる範囲はこう広がった / How the Scope of AI Delegation Has Expanded
nrslib
1
270
はてなアカウント基盤 State of the Union
cockscomb
1
1.3k
AI時代、エンジニアはどう育つのか -未経験エンジニアの成長を間近で見て考えたこと-
thasu0123
0
140
『コードを書く以外の』エンジニアリング〜課金基盤移行プロジェクト推進のためのTips4選
yuriko1211
0
530
What's New in Android 2026
veronikapj
0
140
Hatena Engineer Seminar #37「言語モデルの活用に関する研究」
slashnephy
0
540
AIエージェントで 変わるAndroid開発環境
takahirom
2
710
Featured
See All Featured
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
380
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
770
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.9k
Typedesign – Prime Four
hannesfritz
42
3.1k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.3k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
270
Optimising Largest Contentful Paint
csswizardry
37
3.8k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
340
Navigating Weather and Climate Data
rabernat
0
400
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
640
How to make the Groovebox
asonas
2
2.3k
Transcript
Rails Israel 2012 Why not to use Rails? Monday, November
12, 12
Arik Fraimovich @arikfr TRuby Podcast Monday, November 12, 12
actually... Why use Rails at all? Monday, November 12, 12
Monday, November 12, 12
• Community Monday, November 12, 12
• Community • Ruby Gems Monday, November 12, 12
• Community • Ruby Gems • Simplicity Monday, November 12,
12
• Community • Ruby Gems • Simplicity • Convention over
configuration Monday, November 12, 12
• Community • Ruby Gems • Simplicity • Convention over
configuration • Choices that are made for you Monday, November 12, 12
• Community • Ruby Gems • Simplicity • Convention over
configuration • Choices that are made for you Monday, November 12, 12
Monday, November 12, 12
When not to use Rails? Monday, November 12, 12
general purpose libraries (gems) Monday, November 12, 12
for the simple stuff Monday, November 12, 12
for large web application or anything that isn’t a web
application Monday, November 12, 12
“Our tools shape our thinking.” @drnic Monday, November 12, 12
Monday, November 12, 12
• Everything is sort of global, no need for require
• (Usually) no namespacing • Everything in the context of HTTP request Monday, November 12, 12
No need to require? Monday, November 12, 12
• Sounds nice at the beginning No need to require?
Monday, November 12, 12
• Sounds nice at the beginning • But then it
starts to creep on you and everything becomes sllllowww... No need to require? Monday, November 12, 12
• Sounds nice at the beginning • But then it
starts to creep on you and everything becomes sllllowww... • Slow boot time No need to require? Monday, November 12, 12
• Sounds nice at the beginning • But then it
starts to creep on you and everything becomes sllllowww... • Slow boot time • Slow specs No need to require? Monday, November 12, 12
• Sounds nice at the beginning • But then it
starts to creep on you and everything becomes sllllowww... • Slow boot time • Slow specs • Slow everything No need to require? Monday, November 12, 12
Solution? Spork (Zeus?) Monday, November 12, 12
Solution? Spork (Zeus?) Monday, November 12, 12
The common Rails app. Monday, November 12, 12
The Rails app you want Monday, November 12, 12
Engines Monday, November 12, 12
Wagons Monday, November 12, 12
What about the everything in “HTTP context”? Monday, November 12,
12
Good question. Monday, November 12, 12
No good answers* * from me. yet. Monday, November 12,
12
Some Pointers Monday, November 12, 12
Some Pointers • Actor Model - “easy” concurrency. Popular implementation
in Ruby: Celluloid Monday, November 12, 12
Some Pointers • Actor Model - “easy” concurrency. Popular implementation
in Ruby: Celluloid • JRuby Monday, November 12, 12
Some Pointers • Actor Model - “easy” concurrency. Popular implementation
in Ruby: Celluloid • JRuby • TorqueBox Monday, November 12, 12
Wrap up Monday, November 12, 12
• Use Rails, but remember there are other things out
there Wrap up Monday, November 12, 12
• Use Rails, but remember there are other things out
there • Use Rails “carefully”, as your project grows Wrap up Monday, November 12, 12
• Use Rails, but remember there are other things out
there • Use Rails “carefully”, as your project grows • Don’t forget that not everything is a nail Wrap up Monday, November 12, 12
• Use Rails, but remember there are other things out
there • Use Rails “carefully”, as your project grows • Don’t forget that not everything is a nail • And most important: keep using Ruby. It’s awesome Wrap up Monday, November 12, 12
Questions? @arikfr Monday, November 12, 12
• Architecture The Lost Years • Wrangling Large Rails Codebases
• Hexagonal Rails • Celluloid • JRuby • TorqueBox • About concurrency and the GIL • Images taken shamelessly from Google. Monday, November 12, 12