Q&A with David Heinemeier Hansson (DHH)
If you’re learning Ruby on Rails like me, you’re bound to come across the name David Heinemeier Hansson or DHH as he’s known in the Ruby community. His bio is impressive for someone his age. He’s the creator of Ruby on Rails, partner at 37signals, best-selling author, public speaker, race-car driver, hobbyist photographer … and so on.
Even though I’ve never met him before, he was gracious enough to answer 7 questions I had for him. Here’s a glimpse inside DHH’s journey as a programmer. Enjoy!
Q1: How did you learn programming?
DHH: I taught myself Microsoft ASP as part of working on content management systems for a gaming site I was running at the time. I had dabbled with Basic and other things before, but ASP was probably the first “real” piece of mini programming I did. Then I moved on to PHP, later Java and a few other languages through university. But it wasn’t until Ruby that I really owned being a programmer as a long-term proposition.
Q2: What’s the story behind Rails? How was it created?
DHH: I created a system called Basecamp.com back in 2003. It was my first project in Ruby and I had to build a lot of things myself to make that happen. Ruby didn’t have a lot of good web libraries or frameworks at the time. Half way through the development of Basecamp, I realized that I had built enough stuff to release it as Rails under an open source license.
Q3: What is your all-time favorite Gem?
DHH: Activesupport — it’s my playground for extending the Ruby language. Matz was kind enough to open his language such that 3rd party developers such as myself could extend his creation and nobody could tell the difference.
Q4: What are your favorite tools to use as a web developer? For instance, if we were to look at your computer and desk, what kind of setup would we see?
DHH: I use a 11″ Macbook Air when I’m not at a desk and a 27″ iMac when I am. I still use TextMate 1 and love it.
Q5: What is the number one tip you have for beginners learning Ruby on Rails?
DHH: Learn by building a real application you care about.
Q6: How do you envision the future of Rails? How will Rails change in the next few years? Maybe some highlights of Rails 4?
Q7: How do you manage to do so much stuff (race car driver, dad, write books, speak, etc.)?
DHH: By realizing that most people waste most of their time doing stuff that doesn’t matter. I try to waste less time. It’s amazing how much is left over for productive endeavours then.