Raise-driven development. Patches Kernel#raise to automatically inspect the argument.
Nick Sutterer
MIT