Confident Code
This is great, but I'm a little worried about the custom Maybe function that slipped in about halfway through. Unless it's part of a standard framework (like ActiveSupport), if you use it in your projects you're likely going to find that:a) Integrating with other codebases that don't use Maybe will result in code with an inconsistent style, andb) If Maybe (or something like it) catches on enough, you'll hit collisions where two projects or libraries have different ideas of what Maybe means. (Maybe one uses NilClass, the other the custom NullClass, for example.)(The PHP community has taken this to the extreme, with developers getting burnt over and over again with differing "standard" components using the same set of names.)