Ruby has an intersting problem with accessing Hashes with Symbols vs Strings. Right now Symbols and Strings are in fact two different objects. Rails took an effort to eliminate this disparity through HashWIthIndiferentAccess, which will take :key or ‘key’ and make sure it points to the same value.
Rails 1.9 now includes the fix:
:symbol.is_a? String => true
Hope that helps.