The Bane of All Developers: Bad Error Messages

One thing that really irks me when developing is bad error messages. Bad as in unhelpful. Bad as in vague. Bad as in “WTF, I fixed the problem, but I still don’t know what that error message meant.”

Screen shot 2009-12-23 at 1.41.04 PM

That message was caused by me passing in a hash instead of an array of hashes. Luckily, I realized my mistake after reading some documentation, but really, what am I supposed to make of that error message. Is “type ‘i'” an integer? An imaginary number? I didn’t pass in any type named ‘i’ in my original code.