Meet the Sun you don’t know
Charlie opened with defining Enterprise Ruby as something that is sold by salespeople using “Steaks and Strippers” (third time today I’ve heard that phrase from a speaker). He spent a lot of time introducing a ton of great things that Sun is doing to help and support developers and a number of great open source packages that Sun funds in part or in whole. He also mentioned starting to blog and releasing code to take back Enterprise Ruby for developers. That really hit home because that’s exactly what I’m going for on this blog. So thanks to Charlie for caring about community above all else.
Ruby Hero Awards
Next were the guys from RailsEnvy to present the new Ruby Hero Awards. They gave out 3 awards for library and program developers and 3 awards for people who provide great support, editorial, and educational content. I’ll list the winners here:
- Evan Weaver – Terrific blog that I subscribe to. Highly recommended
- Tom Copeland (RubyForge) – Award delivered via IM
- James Edward Gray II – Award delivered via IM
- Ilya Grigorik – Definitely one of the best Ruby programming bloggers out there. I read his posts religiously and reference them constantly. I aspire for my blog to be half as good as his (which I’m doing very poorly at given how little code is on my site so far)
- Yehuda Katz
- Ryan Bates – Probably the best known name of all the winners. Ryan puts out the weekly Railscast screencasts.
David Heinemeier Hansson
The Great Surplus
DHH started by talking about how there is a surplus of productivity when developing with Rails. Ruby on Rails is still a very small community compared to other platforms/frameworks/etc out there, but we can produce so much more and we can turn that productivity into additional revenue. He hit on a terrific point that the reason our community is so great because Rails developers have realized that we are all trying to ‘climb the same mountain’. None of us are all that special and the more we can help each other the better. We as developers have realized how to ‘cede flexibility’. He put it very concisely that “People like choices a lot better than actually having to choose”. What we want is something that is standardized and works without having to evaluate options.
He discussed the paradigm of ‘Convention over Configuration’. I constantly hear about how Rails __forces__ you into its way of thinking. DHH makes it clear that Darn Right! “Make the choice once and then move on”. These are choices on things that don’t really matter. So Rails has been nice enough to pick one for you that is good enough. He goes on to say that Rails lets you ‘pick your choices when you care, but otherwise it picks it for you’. “We offer everything you need as one coherent package” This makes a great comparison to Linux and Ubuntu. Linux used to require a system user/administrator to choose what software package they want to use for everything. Vi/Emacs, Gnome/KDE, the list goes on. Ubuntu is, although not the first, certainly the best at giving you a system where you have to make zero choices before getting exactly what you’re looking for: a system that just works.
David continued by addressing that “the surplus won’t last forever”. This advantage can’t be held forever. He proposed several ways that might occur:
- The mainstreem copies Rails – Not very likely he says. It’s been tried and has failed a lot.
- Dramatic alternative arrives – Possible, but by the time we know it, it’s probably too late.
- Rails becomes mainstream – DHH is obviously very supportive with Rails NOT becoming mainstream. By staying
“If you’re a company competing with another company: You want them to be using crappy tools”
So we know that the surplus can’t last forever. What can we do? Give up? Turn crappy? Run at 110% forever to keep up? No, instead David proposes using the surplus we have know to our advantage as much as possible. He equates it to the current explosion in Dubai. I think this is a great comparison. Dubai is using its huge surplus of cash from oil on building an ‘instant’ modern day metropolis. In the same way, David says, we must invest the surplus that we have now in ourselves. By doing so, the surplus will last longer. And when it runs out we will survive thanks to that investment.
So how do we invest in ourselves using this surplus? DHH proposes:
- Recharge Tangentially – Do something else besides sitting in front of your computer all day. 37 Signals is supporting their employees in doing things besides programming (including one employee who is getting their pilot’s license…I wish MY company would have subsidized my flight training! Heck, the AIR FORCE wouldn’t even subsidize my flight training!).
- Sleep More – Pretty self explanitory. For my part, I swear by 8.5-9 hours of sleep per night. No matter what. The last time I DIDN’T have that many hours in bed for more than one night in a row was 7 months ago while travelling to a funeral. And I believe this is one of the prime reasons that I believe I can do awesome ‘peak’ programming work for 4-6 hours a day.
- Read Paper – It’s important to expain your body of knowledge. On life in general. On other talents. On basically anything. DHH specifically recommended The Secrets of Consulting – Gerald M Weinberg
- Program Less – If you do the other items in the list, this one becomes pretty easy. If you cut in half the amount of time you can spend on a project, then it becomes painfully obvious if you are using your time as effectively as you possibly can.
- Start from Scratch – Being stuck on the same project
- Share – This is the one that is probably the greatest strength of the Rails community. You can only gain knowledge by sharing. You can not lose knowledge.
Finally, DHH discussed the four day work week that 37 Signals recently implemented. It’s been written about fairly extensively, but he summed it up very well:
“The amount of time you put in has a very weak correlation to the amount of productivity you get out”
I feel really good that I’ve so far done quite well at ‘spending my surplus’ appropriately in the past year or two. But there’s always ways to improve and I got some great ideas from his presentation. I hope you all took it to heart as well.