There's more to Ruby's ensure keyword than just exception handling.
In the second of two episodes about predicate return values, we look at some of the subtle ways that non-boolean predicate return values can catch programmers by surprise.
Predicates return booleans, right? Not always, as it turns out. Part 1 of 2.
This cautionary episode demonstrates and explains a Hash gotcha that often comes as a surprise.