Just wanted to post this, mostly since I just completely realized it myself after programming in Rails/Ruby for a couple of years. Amazing. Also, wanted to post something since this blog isn’t very bloggy. Also wanted to get this onto teh internet more - just in case some poor bastard out there is wondering, maybe this will save him 2 seconds. Who knows, it could add up. We all need to do what we can.

Anyway - in Ruby you cannot overload methods like you can in Java. Ruby won’t complain if you do, I believe it will just use the last implementation of the method it loaded. And when you pass the wrong type in, it will just blow up. This has been the hardest part for me, in transitioning to Ruby from Java. I still use Java for my day job and one nice thing about it is when something goes wrong the stack trace usually tells you exactly what caused it. Ruby’s stack trace has the answers as well, but you need to figure out exactly what you did wrong. Ruby will give you the rope and let you hang yourself. Ok its not that dramatic, just requires a different kind of debugging.