On Friday, Ben
and I returned to Falls Church after a week-long trip to Berlin for the 2nd annual European Rails Conference
. Berlin was a lot of fun and the conference was a blast – again, the folks from both Ruby Central
and O'Reilly Media
organized another great event. Thanks to FiveRuns
and their Try and Fly
contest, we were fortunate enough to attend. After experiencing a packed schedule in Portland, we knew that this time around we had to get out and enjoy some local German culture (and beer). We started our adventure off with the excellent Bratwurst on Rails
event held at Kalkscheune
and hosted by the Berlin Ruby User Group
with support from ELC Technologies
and O'Reilly. It was great to see some familiar faces and connect with new people from around Europe at the event. In the following days we visited some chilling historical spots
, checked out some local cuisine, and tried our best at becoming Berliners – all while being painfully aware of how bad our German was. Despite all our extracurricular activities, I was
able to catch up on some aspects of Rails development at the conference:
- RSpec – Dan, David, and Aslak did a great job providing a history of Behaviour-Driven Development and demonstrating how to use the RSpec framework to exercise BDD in Ruby. I had seen David give a live demo of RSpec at LSRC the week before, but the 4-hour tutorial format at RailsConf really helped fill in some of the missing pieces.
- Rails 2.0 – Though I missed David's keynote (it wasn't me, it was the Pilsner!), he announced the upcoming release of Rails 2.0 in the coming months in addition to some new features since 1.2.3. While it was good to finally hear that 2.0 is on the horizon, we've actually been ahead of the curve now that we're building our greenfield apps against the current "edge" release.
- Capistrano – Though our deployments have made use of Capistrano 2.0 for quite some time (thanks, Mark), I was able to pick up some new tips from the useful recipes that Ferdinand discussed. Selfishly, the highlight for me was when he mentioned his affinity for Mark's RSync deployment strategy that he's been using for a majority of his deployments – it's always great to see people in the community benefiting from our open-source efforts.
- Metaprogramming – Fresh off his RejectConf performance in Portland, Dr. Nic discussed some great metaprogramming techniques in Ruby and demo'ed his Magic Model Generator plugin as well as some controversial uses of metaprogramming.
- Amazon Web Services – Johnathan's talk again reminded me that I need to start looking more into the EC2 and S3 platforms that Amazon offers to anyone who needs quick access to additional computing or storage needs. The availability of AWS along with the RightScale platform promises to make multi-server scaling less painful.
- Selenium – Till Vollmer (of MindMeister) got me thinking about using Selenium (on Rails) again for automated UI testing. The MindMeister application has some pretty complicated AJAX functionality, and he was able to clearly demonstrate the benefit of using Selenium on an application with such a complex user interface.
- (A) Presenter Pattern – I had never heard Jay Fields speak at a conference before, but I do follow his blog and thought this would be a good talk to attend. I had seen Marcel discuss his presenter pattern in January at the Rails Edge conference and I was interested in seeing how Jay's implementation differed. After his 15 minute talk, and at his own urging, Jay's "solution" is not something that we will pursue.
Due to a scheduling issue, one of the sessions was transformed in to an hour-long lightning talk session. At Chad's
request, Ben was able to give a quick demonstration of Sandstone
, his new CMS plugin, to a responsive crowd. This format is always a big hit with the attendees, so it was nice to see it happen again at the European conference. From what I can remember, my experience in Berlin was a great one. Thanks again to the guys from AutoScout
, Rails for All
, and FiveRuns
for the beers, food, and good times.