Todd Huss Winner RPCFN #3

by Satish Talim on November 23, 2009

In this brief interview, Satish Talim of RubyLearning talks to Todd Huss of USA, winner of the third Ruby Programming Challenge For Newbies.

Todd Huss

Satish>> Welcome Todd and thanks for taking out time to share your thoughts. For the benefit of the readers, could you tell us something about your self?

Todd>> Thanks Satish for the opportunity. I am 36 years old and for the past couple of years have been spending half the year living on our sailboat in Mexico (with my wife and daughter). During hurricane season in Mexico we haul the boat out and come back home to San Francisco, where we work as independent contractors. I keep a work related blog and my current contract is working as the interim CTO of Common Sense Media.

Satish>> How did you get involved with Ruby programming?

Todd>> My interest in Ruby started when I was the VP of Technology at Greatschools.net and we were looking to move from our homegrown Perl environment to an MVC platform with OR Mapping and a testing framework. This was in 2004 the early days for Rails, and while we ended up going with Java/Spring MVC/Hibernate, I was really impressed with both Ruby and Rails. As Rails matured and new projects came up I started using both Ruby and Rails whenever I could because I found that I really enjoyed coding in Ruby and was really productive in Rails.

Satish>> Could you name three features of Ruby that you like the most, as compared to other languages? Why?

Todd>> As a CTO-type my favorite feature of Ruby is less about the language and more about the community. It’s the way in which test (and more recently behavior) driven development are considered essential in the Ruby community. Having seen first hand how testing reduces bugs, forces us to write cleaner code, and in the end helps us ship features more quickly, is really exciting. No other language community (that I’m aware of) has embraced testing to the degree the Ruby community has. Second, I love how Ruby lets you write highly expressive DSL’s which helps express the intention of our code, making it far more maintainable when another developer needs to work with it. Lastly, Ruby really taught me the value of blocks and closures and it drives me crazy when I have to work in a language without that now.

While Ruby is hands-down my first choice of language, I do want to be balanced and say that when working with dynamic languages like Ruby, I find doing big refactorings more labor intensive. My opinion is totally subjective and unscientific but generally when working with statically typed languages I shoot for 70-80% test coverage whereas with dynamic languages I find you really need to be close to 100% test coverage to do a big refactoring with confidence. That said, IDE’s like Rubymine and Netbeans have come a long way in helping ease the pain of big refactorings and the productivity of Ruby far outweighs the additional effort of refactoring.

Satish>> How was experience of taking part in the Ruby Programming Challenge For Newbies (RPCFN)?

Todd>> Thanks so much for hosting the Ruby Challenge! I’ve participated in all 3 so far and really enjoyed focusing not only on solving a problem, but figuring out how to solve it elegantly. With each challenge I’ve learned something new and exciting about the language. This time around I learned about Ruby’s support for infinity which was great because it allowed me to compare paths without having to use nil (and therefore extra nil? checks) for dead-end paths.

Satish>> What are your future plans?

Todd>> We’re planning to go back to our boat in Mexico and then sailing her to Hawaii, Alaska, and then back home to San Francisco in 2010. Our daughter is getting close to high-school age so we’ll be settling back down and I’ll be looking for a full-time job again. I’m also thinking of coming up with a new language and web framework, because my daughter already has a name for it- “Emeralds on Tightropes”.

Thank you Todd. In case you have any queries and/or questions, kindly post your questions here (as comments to this blog post) and Todd would be glad to answer.

Technorati Tags: , , , , ,

Posted by Satish Talim

{ 3 comments… read them below or add one }

Gautam Rege November 23, 2009 at 5:24 pm

Hi Todd,
It was really great to see your solution – an instant winner !

“Emeralds on Tightropes” :) Really liked the name – hope you do plan to make it give Ruby on Rails a run for its money. The name much better than Groovy on Grails — that sounds lame!

Do sync up with me sometime – I would like to help you out in your new work!

Reply

Christopher Pickslay November 24, 2009 at 10:49 pm

Nice work, Todd! Good to know all that CTO-ing hasn’t made you soft.

Reply

Michael Kohl November 25, 2009 at 4:03 pm

As part of the “jury” for the RPCFN I have to agree with Gautam, your solution was an instant winner! Very nice code, a well-deserved win! Congrats!

Reply

Leave a Comment

{ 7 trackbacks }

Previous post:

Next post: