Let's hash this out
A compelling case for sticking to Ruby’s plain old Hash as much as possible. I’ve lived the pain of serialization errors in higher level of abstractions, so I’d vouch for sticking to low level primitives as much as possible when it comes to persistence.