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
2
210
Why not to use Rails? (actually it's when not to use Rails)
My Rails Israel 2012 conference talk.
Arik Fraimovich
November 12, 2012
Tweet
Share
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
75
Measure Everything
arikfr
2
81
Other Decks in Programming
See All in Programming
Kotlin 2.2が切り拓く: コンテキストパラメータで書く関数型DSLと新しい依存管理のかたち
knih
0
270
なんでRustの環境構築してないのにRust製のツールが動くの? / Why Do Rust-Based Tools Run Without a Rust Environment?
ssssota
14
47k
3年ぶりにコードを書いた元CTOが Claude Codeと30分でMVPを作った話
maikokojima
0
750
オンデバイスAIとXcode
ryodeveloper
0
380
Node-REDのノードの開発・活用事例とコミュニティとの関わり(Node-RED Con Nagoya 2025)
404background
0
110
CSC509 Lecture 08
javiergs
PRO
0
280
開発組織の戦略的な役割と 設計スキル向上の効果
masuda220
PRO
10
2k
CSC509 Lecture 10
javiergs
PRO
0
160
Software Architecture
hschwentner
6
2.4k
Towards Transactional Buffering of CDC Events @ Flink Forward 2025 Barcelona Spain
hpgrahsl
0
120
エンジニアに事業やプロダクトを理解してもらうためにやってること
murabayashi
0
120
自動テストのアーキテクチャとその理由ー大規模ゲーム開発の場合ー
segadevtech
0
200
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Site-Speed That Sticks
csswizardry
13
940
Designing for Performance
lara
610
69k
Thoughts on Productivity
jonyablonski
72
4.9k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Raft: Consensus for Rubyists
vanstee
140
7.2k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
Unsuck your backbone
ammeep
671
58k
4 Signs Your Business is Dying
shpigford
186
22k
The Cost Of JavaScript in 2023
addyosmani
55
9.1k
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