Last weekend I headed to New Orleans with part of the rest of the Highgroove team for RubyConf 2010. I won't go into quite the same amount of details that I did for Velocity 2010, but given how new I am to Ruby, I learned a lot and had a blast. First all of course, New Orleans is a pretty fun place. There is great food everywhere as well as the energetic street atmosphere (assisted by the fact that it's legal to get beers 'to go' from bars). Here's a random street corner:
Over the 3 conference days, I met a lot of people, from those that build and run Pivotal Tracker and GitHub, to John Britton (who worked on Gallery with me a while back with Google Summer of Code but that I'd never met in person.), to someone that's going to be our next hire at Highgroove, to people the people that wrote both Ruby and Rails.
Most the of presentations I went to were informative, entertaining, and well done. Here's a sample of a few that really stood out:
Hotspots with MetricFu
Jake Scruggs spoke about MetricFu which is a ruby tool that pulls together a bunch of metrics that give insight into code complexity and places where developers might need to look into code because it "smells" and is likely a source of problems. I've been using rails_code_qa which pulls in a smaller subset of metrics, but MetricFu looks like a potential replacement.
Objects Are Just Objects, Aren't They?
Rick DeNatale spoke about a bit of the history of Object Oriented design and how Ruby stacks up against other languages. This talk was very interesting and included things like comparing how Lisp message passing works and implementing things in both Lisp and Ruby that showed how Ruby is not just an Abstract Data Type language.
Building Scalable Cloud Infrastructure with Ruby - How we build VMforce
Derek Collison from VMWare gave a talk on the motivations and design that went into building VMforce. The coolest part of this was a demo where all it takes is one command to take an application (Ruby on Rails/Sinatra/JAR/etc), upload it to their cloud, deploy it, and spin up 100 copies of it to handle load. It looks pretty similar to Heroku but with support for lots of other languages, and with the full force of VMware behind it. I'm looking forward to seeing when this service goes live and what they do with it next.
Grammars, Parsers, and Interpreters. In Ruby
Michael Jackson (a tough guy to Google for!) spoke about building his parsing expressions tool for Ruby: Citrus. For situations where you need to do pattern matching for something that is more complex than what a readable regular expression can handle, Parsing Expressions are the right tool for the job. This is particularily useful for building Domain Specific Languages to use within Ruby, but I spoke a little bit with him after his talk about the potential for using it to convert between data encodings like XML and JSON, and that's likely something I'll be playing with in the future
Pwrake : a Distributed Workflow Engine for e-Science
Masahiro Tanaka, while certainly not a native English speaker, gave a solid presentation on Pwrake which uses Rake to parallelize complex scientific tasks across as many machines as possible. This immediately reminded me of a presentation I saw on Microsoft's DryadLINQ at no:sql(east) 2009 (blog post), and was very cool. While I don't have any massively parrallizable scientific tasks with complex interdependencies, plenty of people in academia do and it's great to see tools like this coming together to bring supercomputing resources to anyone that can think of a new way to solve a big problem.
So You Think You Can Code?
This was a panel of several important people in the Ruby community (Rein Henrichs, Evan Phoenix, Yossef Mendelssohn, John Barnette, Aaron Patterson, Ben Bleything) and was officially described as "Five jerks on stage with alcohol and topics they don't agree on." As unhelpful as they tried to be, it was pretty informative and I enjoyed hearing opinions on Monkey Patching, indenting 'private' and private methods, and plenty of other things. No write up of this panel will do it justice, so this is a video to watch online when they're available
From Artist To Programmer
Keavy McMinn, a fine-artist by training turned Ruby developer gave a great talk on her experiences switching between the two environments. I really enjoyed the surprising fluid juxtaposition of two seemingly different fields (programming and fine-art) that are actually pretty similar: Those that excel at either are driven by the drive to tinker and create. This is also a talk you should watch on video when it's available.
There were too many more to list, but (once they're uploaded) you can get videos of all the sessions over at Confreaks.
Here's Matt's writeup on the Highgroove blog: ZOMG ROFLscale Rubyconf OR Why you missed out.
I didn't take any photos during the technical parts of the conference, but I did take some of the socialization: RubyConf 2010 photos. Good times had by all, and we all made it home alive!