why not to use rails? (actually it's when not to use rails)

44
Rails Israel 2012 Why not to use Rails? Monday, November 12, 12

Upload: arik-fraimovich

Post on 16-May-2015

732 views

Category:

Technology


0 download

DESCRIPTION

A talk I gave at the

TRANSCRIPT

Page 1: Why not to use Rails? (actually it's when not to use Rails)

Rails Israel 2012

Why not to use Rails?

Monday, November 12, 12

Page 2: Why not to use Rails? (actually it's when not to use Rails)

Arik Fraimovich@arikfr

TRuby Podcast

Monday, November 12, 12

Page 3: Why not to use Rails? (actually it's when not to use Rails)

actually...Why use Rails at all?

Monday, November 12, 12

Page 4: Why not to use Rails? (actually it's when not to use Rails)

Monday, November 12, 12

Page 5: Why not to use Rails? (actually it's when not to use Rails)

• Community

Monday, November 12, 12

Page 6: Why not to use Rails? (actually it's when not to use Rails)

• Community

• Ruby Gems

Monday, November 12, 12

Page 7: Why not to use Rails? (actually it's when not to use Rails)

• Community

• Ruby Gems

• Simplicity

Monday, November 12, 12

Page 8: Why not to use Rails? (actually it's when not to use Rails)

• Community

• Ruby Gems

• Simplicity

• Convention over configuration

Monday, November 12, 12

Page 9: Why not to use Rails? (actually it's when not to use Rails)

• Community

• Ruby Gems

• Simplicity

• Convention over configuration

• Choices that are made for you

Monday, November 12, 12

Page 10: Why not to use Rails? (actually it's when not to use Rails)

• Community

• Ruby Gems

• Simplicity

• Convention over configuration

• Choices that are made for you

Monday, November 12, 12

Page 11: Why not to use Rails? (actually it's when not to use Rails)

Monday, November 12, 12

Page 12: Why not to use Rails? (actually it's when not to use Rails)

When not to use Rails?

Monday, November 12, 12

Page 13: Why not to use Rails? (actually it's when not to use Rails)

general purpose libraries (gems)

Monday, November 12, 12

Page 14: Why not to use Rails? (actually it's when not to use Rails)

for the simple stuffMonday, November 12, 12

Page 15: Why not to use Rails? (actually it's when not to use Rails)

for large web applicationor anything that isn’t a

web application

Monday, November 12, 12

Page 16: Why not to use Rails? (actually it's when not to use Rails)

“Our tools shape our thinking.”

@drnic

Monday, November 12, 12

Page 17: Why not to use Rails? (actually it's when not to use Rails)

Monday, November 12, 12

Page 18: Why not to use Rails? (actually it's when not to use Rails)

• Everything is sort of global, no need for require

• (Usually) no namespacing

• Everything in the context of HTTP request

Monday, November 12, 12

Page 19: Why not to use Rails? (actually it's when not to use Rails)

No need to require?

Monday, November 12, 12

Page 20: Why not to use Rails? (actually it's when not to use Rails)

• Sounds nice at the beginning

No need to require?

Monday, November 12, 12

Page 21: Why not to use Rails? (actually it's when not to use Rails)

• 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

Page 22: Why not to use Rails? (actually it's when not to use Rails)

• 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

Page 23: Why not to use Rails? (actually it's when not to use Rails)

• 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

Page 24: Why not to use Rails? (actually it's when not to use Rails)

• 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

Page 25: Why not to use Rails? (actually it's when not to use Rails)

Solution?

Spork (Zeus?)

Monday, November 12, 12

Page 26: Why not to use Rails? (actually it's when not to use Rails)

Solution?

Spork (Zeus?)

Monday, November 12, 12

Page 27: Why not to use Rails? (actually it's when not to use Rails)

The common Rails app.Monday, November 12, 12

Page 28: Why not to use Rails? (actually it's when not to use Rails)

The Rails app you wantMonday, November 12, 12

Page 29: Why not to use Rails? (actually it's when not to use Rails)

EnginesMonday, November 12, 12

Page 30: Why not to use Rails? (actually it's when not to use Rails)

WagonsMonday, November 12, 12

Page 31: Why not to use Rails? (actually it's when not to use Rails)

What about the everything in “HTTP context”?

Monday, November 12, 12

Page 32: Why not to use Rails? (actually it's when not to use Rails)

Good question.

Monday, November 12, 12

Page 33: Why not to use Rails? (actually it's when not to use Rails)

No good answers*

* from me. yet.

Monday, November 12, 12

Page 34: Why not to use Rails? (actually it's when not to use Rails)

Some Pointers

Monday, November 12, 12

Page 35: Why not to use Rails? (actually it's when not to use Rails)

Some Pointers

• Actor Model - “easy” concurrency. Popular implementation in Ruby: Celluloid

Monday, November 12, 12

Page 36: Why not to use Rails? (actually it's when not to use Rails)

Some Pointers

• Actor Model - “easy” concurrency. Popular implementation in Ruby: Celluloid

• JRuby

Monday, November 12, 12

Page 37: Why not to use Rails? (actually it's when not to use Rails)

Some Pointers

• Actor Model - “easy” concurrency. Popular implementation in Ruby: Celluloid

• JRuby

• TorqueBox

Monday, November 12, 12

Page 38: Why not to use Rails? (actually it's when not to use Rails)

Wrap up

Monday, November 12, 12

Page 39: Why not to use Rails? (actually it's when not to use Rails)

• Use Rails, but remember there are other things out there

Wrap up

Monday, November 12, 12

Page 40: Why not to use Rails? (actually it's when not to use Rails)

• Use Rails, but remember there are other things out there

• Use Rails “carefully”, as your project grows

Wrap up

Monday, November 12, 12

Page 41: Why not to use Rails? (actually it's when not to use Rails)

• 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

Page 42: Why not to use Rails? (actually it's when not to use Rails)

• 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

Page 43: Why not to use Rails? (actually it's when not to use Rails)

Questions?

@arikfr

Monday, November 12, 12