litany against fear
coding with spice ¤ by nick quaranto
Sinful Ruby Notes
published 19 Nov 2008
Part of my series of notes from the Professional Ruby Conference. See them all here.
This is a talk from Will Koffel from Sermo.
Sermo is in the health industry and builds a social network for licensed physicians in the US. They have roughly a quarter of all professionals in the field signed up in the country. (100,000!) Creates a unique model for other businesses to come and get opinions from hundreds of doctors. Built with traditional Java setup. J2EE. JBoss. Moving to Ruby now.
- Lust. Why would you bring Ruby into your business? Don’t jump in blind to it. Keep it professional! Top-down adoption in the organization: CEO latched on first by polling VCs. Choose it for the right reasons.
- Gluttony. Teach it who’s boss. Is Rails too opinionated for your business? They have some interesting decisions that they didn’t want to change: No production SVN, sprocs/funcs. Make conscious choices about what to use.
- Greed. Don’t need to take the plunge and go 100% Ruby if you don’t need to. Slowly brought Rails in through some ugly iframe hacking and session cookie reading. They use Thrift from Facebook in house to let Java and Rails talk to each other. Uses the Thrift server front-end to talk to the Rails app sitting in the background.
- Sloth. Rewriting your front-end in Ruby just isn’t enough. Architecture, services, and data are still critical. Plenty of new constraints since they’re using two languages.
- Wrath. Leads a trail of technological tears for the former stuff in use. JSP is being phased out, but destruction is sure to happen.
- Envy. Change is hard. Ruby training offered for all developers. Some of the code has an ‘accent’. Build inclusive systems first. Lots of differences between Java developers that are stuck in a inheritance/package paradigm instead of Ruby mixins.
- Pride. The deadliest sin! Don’t let the love morph into hate of other languages! Be PROUD though! Find the right ways to introduce Ruby into your organizations. Give back to your Ruby community! Start or join a usergroup! Help the language mature, it’s going to have the same problems.