Hacker News new | ask | show | jobs
by burlesona 2035 days ago
I love watching people go deep on Ruby and start to understand how it works under the hood. It’s a beautiful and very powerful language.

I will say one thing, though. When you learn how to use all of the dynamic dispatch, meta-programming etc. it can sound like fun to find places to do this stuff in prod.

I think it’s better to recognize that all of Ruby exists at runtime, all the time. A lot of the really nifty stuff in Ruby is best thought of as debugging and testing tools. Some parts may be appropriate for framework or library code, but only in very specific situations. Production code should normally be very vanilla and use only the core of the language.

It’s true that most other languages don’t offer you this power, and if you don’t have it you can’t abuse it. And that can be a good thing too.

Ruby is a language full of power tools and very sharp knives. It trusts you to make your own decisions with that power, and doesn’t protect you from yourself. When you understand that, you can approach it with care and have a uniquely wonderful programming experience.