This was the final day.
Cyndi Mitchell's talk about "Bringing Ruby to the Enterprise" was innovative (Wish I could get a copy of her slides!) and really good. I reckon she could have talked for longer.
The "best practices" lecture afterwards (Michael "Koz" Koziarski and Marcel Molina Jr.) was less impressive. It seemed to advocate refactoring an entire application into a completely bottom-up approach. Most of the (contrived) examples were bad ones and readability was not helped at all by the code changes. It's in everyone's best interests to develop their own sense of "best practice" and stick to it. Be ready to re-evaluate and update code if a new technique comes along.
The pair advocated controllers with no more than 7 actions of 7 lines each. It is not a bad thing to have many lines of code in your controller if it's relevant to the action. Having a switch statement to handle various cases of input (especially for polymorphic models) is good. It doesn't help to have a Car controller, a FourWheeledCar controller, a ThreeWheelCar controller, a DiselFourWheelCar controller and so on. They all subclass Car and they should all be in the common controller. When lines should be trimmed is when the same programmatic steps are being repeated: special formatting of return data, emptying a shopping cart (when there is more than one way to empty the cart!) and so on.
I also abstract controller code into libraries when there's a task that I need to do over and over in the console to help other guys on my devteam do their job. This also helps with creating modular application code for multiple clients.
The bottom line is: Who cares as long as everything is tested to meaning, you can understand your code and it won't take someone else who has to maintain the code a month to figure out what it does.
Okay lecture guys, but most if it seemed to be creating work for work's sake, especially the proxy class...
Unfortunately the Ruby on Rails Security lecture by Heiko Webers was...dull. The material Heiko covered seemed to be basic web security. Perhaps it was meant for newcomers?
After that things got interesting. Selenium and Watir!
Selenium was up first in Browser-based Testing by Till Vollmer. This is a REALLY cool utility and I'm sure we'll (at work) take a good hard look at it and see if it meets our needs. In any event it's cool technology nontheless. Kind of like integration testing on steroids. Very cool.
Afterwards Continuous Validation by Dane Avilla was up. His lecture touched on the same topic as Till's but it was from another approach angle: validating HTML, CSS, JavaScript and using a distributed technique to remote control browsers (with Watir) to click through a form. I imagine this could be as complex as Till's demo with a little work. How cool is it to have a farm of all browsers set up to be run after every commit through rake test and report any failures in tests across browsers!
After the Watir one I called it a day.
Railsconf has been very interesting this year. It's been my first time and I may come back, perhaps for the American version, though since Germany is a little intimidating for someone who speaks no German! But we'll see what next September has in store.