View
731
Download
0
Category
Tags:
Preview:
DESCRIPTION
A talk I gave at the
Citation preview
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 stuffMonday, November 12, 12
for large web applicationor 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 wantMonday, November 12, 12
EnginesMonday, November 12, 12
WagonsMonday, 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
Recommended