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

1,041 views
945 views

Published on

A talk I gave at the

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,041
On SlideShare
0
From Embeds
0
Number of Embeds
33
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

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

  1. 1. use Rails? hy not to WRails Israel 2012Monday, November 12, 12
  2. 2. Arik Fraimovich @arikfr TRuby PodcastMonday, November 12, 12
  3. 3. actually... Why use Rails at all?Monday, November 12, 12
  4. 4. Monday, November 12, 12
  5. 5. • CommunityMonday, November 12, 12
  6. 6. • Community • Ruby GemsMonday, November 12, 12
  7. 7. • Community • Ruby Gems • SimplicityMonday, November 12, 12
  8. 8. • Community • Ruby Gems • Simplicity • Convention over configurationMonday, November 12, 12
  9. 9. • Community • Ruby Gems • Simplicity • Convention over configuration • Choices that are made for youMonday, November 12, 12
  10. 10. • Community • Ruby Gems • Simplicity • Convention over configuration • Choices that are made for youMonday, November 12, 12
  11. 11. Monday, November 12, 12
  12. 12. When not to use Rails?Monday, November 12, 12
  13. 13. general purpose libraries (gems)Monday, November 12, 12
  14. 14. for the simple stuffMonday, November 12, 12
  15. 15. for large web application or anything that isn’t a web applicationMonday, November 12, 12
  16. 16. “Our tools shape our thinking.” @drnicMonday, November 12, 12
  17. 17. Monday, November 12, 12
  18. 18. • Everything is sort of global, no need for require • (Usually) no namespacing • Everything in the context of HTTP requestMonday, November 12, 12
  19. 19. No need to require?Monday, November 12, 12
  20. 20. No need to require? • Sounds nice at the beginningMonday, November 12, 12
  21. 21. No need to require? • Sounds nice at the beginning • But then it starts to creep on you and everything becomes sllllowww...Monday, November 12, 12
  22. 22. No need to require? • Sounds nice at the beginning • But then it starts to creep on you and everything becomes sllllowww... • Slow boot timeMonday, November 12, 12
  23. 23. No need to require? • Sounds nice at the beginning • But then it starts to creep on you and everything becomes sllllowww... • Slow boot time • Slow specsMonday, November 12, 12
  24. 24. No need to require? • Sounds nice at the beginning • But then it starts to creep on you and everything becomes sllllowww... • Slow boot time • Slow specs • Slow everythingMonday, November 12, 12
  25. 25. Solution? Spork (Zeus?)Monday, November 12, 12
  26. 26. Solution? Spork (Zeus?)Monday, November 12, 12
  27. 27. The common Rails app.Monday, November 12, 12
  28. 28. The Rails app you wantMonday, November 12, 12
  29. 29. EnginesMonday, November 12, 12
  30. 30. WagonsMonday, November 12, 12
  31. 31. What about the everything in “HTTP context”?Monday, November 12, 12
  32. 32. Good question.Monday, November 12, 12
  33. 33. No good answers* * from me. yet.Monday, November 12, 12
  34. 34. Some PointersMonday, November 12, 12
  35. 35. Some Pointers • Actor Model - “easy” concurrency. Popular implementation in Ruby: CelluloidMonday, November 12, 12
  36. 36. Some Pointers • Actor Model - “easy” concurrency. Popular implementation in Ruby: Celluloid • JRubyMonday, November 12, 12
  37. 37. Some Pointers • Actor Model - “easy” concurrency. Popular implementation in Ruby: Celluloid • JRuby • TorqueBoxMonday, November 12, 12
  38. 38. Wrap upMonday, November 12, 12
  39. 39. Wrap up • Use Rails, but remember there are other things out thereMonday, November 12, 12
  40. 40. Wrap up • Use Rails, but remember there are other things out there • Use Rails “carefully”, as your project growsMonday, November 12, 12
  41. 41. Wrap up • 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 nailMonday, November 12, 12
  42. 42. Wrap up • 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 awesomeMonday, November 12, 12
  43. 43. Questions? @arikfrMonday, November 12, 12
  44. 44. • 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

×