Trip Report: Shenandoah Ruby User Group

Last night Joe Meade and I road tripped up to the Shenandoah Ruby User Group (ShRUG) meeting in Harrisonburg, Virginia, hosted at the RosettaStone offices.Alex Herron kicking off ShRUG meetingWe went there to find out why there is a hotbed of Rubyists in rural Virginia! There were 20+ people at the meeting which was hosted in a conference room at RosettaStone. RosettaStone sponsors the group, kindly providing great sandwiches and soft drinks.

This weeks meeting was based around a Lightening Talk approch, so I of course spoke up and said Id be happy to do one!

Lightening Talk 1: Learning is a good resource for beginners to Ruby and rails.. Most books deep dive into Ruby very quickly, and this site provies some simpler materials. Also some vidoes, including free ones… is an online IDE plus platform for Ruby… So dont fight with the installation, just go through web interface to get that first hit of coding Ruby on Rails!

He had setup an account for us, the username is [email protected], and I have the password, however not sure if he wanted to publish it.. Email me and I can share it. You can see the deployed application at, right now its just an empty shell.

The idea of using Heroku as a learning tool really worked for me. I know anytime I teach someone Ruby on Rails we have the initial battle in getting SQLLite to work, or the right gems in place. And I always have to say: trust me, the rest is much easier. Especially when showing some on Windows Ruby for the first time… With Heroku they can get something up quickly, and get over the “I Suck” stage quicker.

I didnt catch the name of the presenter…

Lightening Talk 2: Open IDI talked about OpenID, starting with Code Monkey, because I like the line about “Maybe manager wanna write goddamn page himself” which is at second 28 of the clip. I did a demo of how HighTechCville uses OpenID, and showed a bit of the Ruby on Rails OpenID plugin, and how easy it is to integrate.

Lightening Talk 3: Prototype“Snuggs” did a presentation about how simple Prototype is, and showed us how he used it to quickly create a gallery of pictures that allows paging via Ajax and Javascript that is on his media site MonstarOnline The photowidget javascript all based on Prototype is at

Lightening Talk 4: IRBJeffMo talked about what IRB is and what we can use it for… He did a great session showing IRB and demonstrating how you can do things like spelunk what methods are available on your objects:

s =    s.methods

or search for a specific method

s.methods.grep /reverse/`

We also learned a bunch about how to use method_missing to catch methods that arent defined, and make intelligent decisions on what to do with them, as well as defining methods on the fly.

Lastly we saw a Domain Specific Language for playing Tic-Tac-Toe, all using dynamic methods and method missing! You can download the files and try it yourself from JeffMos site:

So, to sum up, while the Charlottesville RubyCodeJam has beer and cool shirts, and ShRUG has softdrinks, clearly were doing something wrong as they have double the turnout we usually do! It was great to meet some new people, and I hope some of them make it down to beCamp, which is THIS weekend!