This doesn't necessarily need to be changed, but I find it hard to decipher an unless with more than one condition. I know its probably written in a style guide somewhere, but a quick google revealed an article by 37signals that sums it up.

http://37signals.com/svn/posts/2699-making-sense-with-rubys-unless