http://stackoverflow.com/questions/612189/why-are-exclamation-marks-used-in-ruby-methods

Methods that change the internal state of the object use exclamation. Nothing to do with whether they raise exception or not.  I can take it out if you are still annoyed by it.