I'm well into day 2 of RailsConf. I would like to keep live posting about each session, but I'm getting a bit overloaded. Here is some info from the sessions I've gone to so far.
First was Ajax on Rails by Justin Gehtland. This session covered the ActionView ajax helpers and some RJS. Justin's presentational skills were great and his talk was well polished. The information wasn't new to me, but he did show off a couple of cool things. He's working on a replacement for scaffolding that is very ajaxy. I was very impressed and can't wait to play around with it. At a glance it seems like it has a lot more to offer than AjaxScaffold. Justin said that it would be released at OSCON next month and you can watch the streamlined site for details.
Next was Domain Specific Languages by Steven Hammond. He covered what a DSL is, and some examples. Rails examples are the framework itself, migrations, RJS, acts_as_state_machine, and game_dsl (the last two being plugins).
Bill Katz then dug deeper into DSLs, and other topics, with his presentation on Metaprogramming Writeopia. The talk centered around how he designed and implemented a DSL for his authorization plugin. Bill's DSL is interesting because it wasn't based on Ruby at all. There would be something like a call to see if someone has a permission:
permit "admin of :meeting or admin"
As you can see the DSL is contained within the string passed to permit. Bill caught some flack for using a string instead of tweaking ruby syntax. He said a string was better suited for the exact syntax he was aiming for, and I think the result is very readable.
I then went to Rails Deployment presented by Ezra Zygmuntowicz. Ezra started with a case study of his work on The Yakima Herald. Some things that I heard about in this session: use a VPS (virtual private server) instead of a shared host. Make sure your VPS provider is using Xen. Xen is fast and the provider won't be able to oversell the server so you can get guaranteed resources. Mongrel cluster + Apache 2.2 == the new hotness. I actually knew this already from talking to Zed Shaw at the nyc.rb meetings, but I'll put it out there for everyone else. BackgroundDRb is a project that Ezra has been working on for running background worker tasks in Rails applications. I'll definitely be checking this out. Ezra is working on a new hosting company called EngineYard. It's all based on VPS and it looks like they're aiming for pushbutton deployment of Rails clusters for serving up highly available, fault tolerant, high traffic rails applications. Cool stuff.
Hopefully I'll have time next week to go through and actually process all of this information I'm pulling in.
Technorati Tags: RailsConf