nuclearsandwich's

Mad scribblings and inexpert musing

Why Ruby Needs Heroes

published: 19 Aug 2011 03:08:00PM

A reflection on the Ruby community's tendency to celebrate individual developers and what good comes of it.

The Ruby community isn't unique in its tendency for celebrating rockstar developers but after examining the communities history it would seem that we burn them out bright and fast.

When I first became involved in the community I had heard of almost no one. My first hero is my friend Erik Ostrom to whom I owe a great deal for my first and second introductions to Ruby. Without you Erik I would be missing out on the most fun, passionate, and rewarding hacking I have ever done. I have you to thank for my introductions to rhe MVC pattern, idiomatic programming, and the process of developing software. I also owe you a big thanks for pointing me to _why's (Poignant) Guide to Ruby.

Which leads nicely into my second hero _why the lucky stiff. The Guide when I first read it was the most refreshing and maddeningly beautiful piece of technical literature I had ever encountered and remains so to this day. Never before had I seen a language presented side by side with English hold its expressiveness the way Ruby did. It took me three tries to finish the Guide but I have read over its pages many times reminding myself to "use what Ruby gives [me]" and it is still my goto for explaining nil, truthiness, and falsiness in Ruby. If I were to teach programming in an art department, The Guide would be my textbook. But _why gave me more than the guide. Through Camping I was able to study "magic" and be exposed to the raw untamed power of metaprogramming in Ruby. Even though I had missed the whole hullabaloo surrounding _why's exit from the community by a matter of weeks his work has had a lasting and profound effect on me and I thank him.

Like many developers my first full application in Ruby and real test of what I learned was using Ruby on Rails. Rails 2.3.5 to be precise. This marks me as a new kid on the block I know, but let's face it, I am. I have been living with Ruby for little more than two years. But that's the evolution of community without new blood it dries out. Anyway through this early stage I had a collection of mentors. The most prolific of which wasn't even aware of it at the time.

Ryan Bates, your Railscasts helped guide me not only on specific challenges I was facing building my first production app but also provided my first exposure to lots of quality Ruby code and process. One thing the Ruby community gets on a fundamental level is that process matters and you were my first big introduction to that. You also introduced me to rvm and by extension my next hero.

Wayne Seguin, rvm is a colossal undertaking. Managing development environments has always been a pain and you shaved one of the biggest, hairiest yaks ever to stand in the middle of the room. MixedMetaphorException: "Yaks aren't elephants."

You are also a fabulous example of a project maintainer I don't have a specific IRC story of my own but that only speaks to the quality of your work. You're also a wonderful example of a polyglot Rubyist and really show what can happen when Rubyists take their knowledge and experience and apply it to funny little languages like bash.

Last April I had the pleasure of meeting Steve Klabnik at the very first CodeConf. One of the coolest things about you Steve is that you're pretty much my age. It was so inspiring to see you, such an obviously accepted member of the Ruby community, so close to my own age. You indirectly informed me that the amount of effort required to really get involved and make a difference wasn't in the depressingly distant future and this has motivated me substantially in my efforts to give back even as I receive.

Thanks man, you rock

Lately I have been reading a lot of stuff from Avdi Grimm. You're style is so refined and decisive. Few people think about the meaning and reason behind their code and design decisions as you clearly do. Lately I have been turning to your writings when I find myself wondering about the best way to do something.

So my journey through Ruby has brought me across the paths of these heroes and so many more. But what motivates me to think of these fine folks this way even when they may not want the attention. How many feel overly pressured by or undeserving of their status. When thinking on this, I am reminded of Firefly. (If you haven't seen it, seriously do yourself a favor and watch it.)

Specifically the Hero of Canton episode in which Jayne, the least noble of the protagonists, is remembered as a folk hero on a backwater mining colony for accidentally dropping crates of money over the mining camps. At the end Jayne can't understand what they see in him when dropping the money at all was simply a dishonest mistake as the episode wraps up he's told that the statue in his honor isn't for him, it is for the miners. We build heroes out of you because we see qualities in you we hope to someday find in ourselves. So please, whether you're a Jayne Cobb or Malcom Reynolds, if someone thinks of you as their hero, just be proud that you've done something extraordinary and they hope to follow suit.

Happy _whyday, Steven!