Recovering from Enterprise: how to embrace Ruby's idioms and say goodbye to bad habits
by Jamis Buck
In 2004 I wrote a couple of libraries, Copland and Needle, each a different implementation of the
dependency injection pattern in Ruby. I then went on to build Net::SSH on top of Needle.
In the years since that date, I've come to regret both those libraries, and my decision to build
Net::SSH on top of Needle In the last year I finally rewrote Net::SSH to get rid of the dependency
on Needle, and found my code cleaner, faster, and easier to maintain. Why? Because in moving away
from patterns and habits formed in Java and other environments, I was able to embrace Ruby's idioms
and rediscover what Ruby does best: make programmers happy.
This talk will follow that journey, comparing idioms I brought with me from Java to idioms native to
Ruby, and showing why the native Ruby idioms are more appropriate. Along the way, maybe you'll
rediscover Ruby, too!
About Jamis Buck
Jamis has been tinkering with Ruby since 2001, and has been using it professionally since he was
hired by 37signals in 2005. He is the author of the sqlite and sqlite3 bindings for Ruby, as well as
the Net::SSH, Net::SFTP, and Net::SCP libraries, the Capistrano remote automation tool, and several
other miscellanea. He lives in Caldwell, Idaho, with his wife and three children.