Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

How to sneak clojure into your rails shop


Published on

This is the lightning talk I presented at Clojure/West 2013. In it, I cover how to utilize JRuby, Torquebox, and the Immutant Overlay project to introduce Clojure, gradually, into an environment where Rails is the norm.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

How to sneak clojure into your rails shop

  1. 1. HOWTO SNEAK CLOJUREINTOYOUR RAILS SHOP...and ImproveYour Rails Hosting Along the Way
  2. 2. ABOUT ME• Joshua Ballanco• Live in Ankara,Turkey• Chief Scientist at Burnside Digital• We do Clojure
  4. 4. LEARN FROM RAILS• Better to ask forgiveness than permission• Use Clojure whenever it’s the best tool for the job• ...and even when it’s just the right tool for the job• Don’t be afraid to show off!
  5. 5. STEP 1: JRUBY• Convince your Rails guys to use JRuby:• Better tooling• Better performance (in many cases)• Java ecosystem• Lots of hosting options
  6. 6. STEP 2:TORQUEBOX• Stupid Simple Deployment: torquebox deploy && torquebox run• JBoss strength and stability• All the bells and whistles baked right in• HornetQ for queueing, workers• Infinispan for shared memory cache• Quartz for scheduling
  7. 7. STEP 3: IMMUTANT OVERLAY• Immutant isTorqueBox’s Clojure Counterpart (and so much more!)• lein immutant install && lein immutant overlay• Comes with: JBoss, Immutant,TorqueBox, and JRuby• set some environment variables, then...• torquebox deploy• lein immutant run – Runs deployed Clojure and Ruby apps
  8. 8. STEP 4: OPENSHIFT• From Red Hat• Like Heroku, but open source (and you have ssh access)• Deploy with a git push• Use the ployglot-openshift-quickstart (• Deploy Ruby and Clojure based applications to the same instance
  9. 9. STEP 5: MAKE CLOJURE ANDRUBYTALK• HornetQ +TorqueBox/Immutant messaging libraries• Infinispan +TorqueBox/Immutant caching libraries• Higher-level abstractions(keep an eye on
  10. 10. STEP 6: SHOW OFF• Once it’s working, tell everyone why its so great!• Sends alerts and receives confirmation when an alert is read• Manage users, groups, organizations, permissions, etc.• Separation of concerns improves stability and scale
  11. 11. THANKYOU!Joshua BallancoBurnside Digital