When it comes to debugging, you can fight with Ruby’s dynamic nature… Or you can embrace it. A little just-in-time metaprogramming can give you a clear window into unexpected behavior.

When it comes to debugging, you can fight with Ruby’s dynamic nature… Or you can embrace it. A little just-in-time metaprogramming can give you a clear window into unexpected behavior.