The Humble Print Statement
My initial troubleshooting tool of choice is a plucky little Ruby method called p. Perhaps you’ve heard of it.
I realize that to many of you, debugging with the p statement sounds like trying to fix your television by kicking it. In the p method’s defense, it’s dirt-simple, works anywhere, and is infinitely adaptable to your current troubleshooting needs. An elegant weapon for a more civilized age, so to speak.
The p method calls inspect on its argument and then outputs it to STDOUT using Ruby’s even-more-primitive puts. I prefer p to puts because the extra call to inspect generally results in more readable output. (Though in poking around, it looks like puts does a better job with mixed data these days than it did ...