I've had to learn some Ruby to support automated testing written in Ruby and Cucumber.
I hate Ruby.
Ruby feels like someone took Perl and intentionally made it even worse.
The syntax is awful. Pipes and hashes and at symbols everywhere. The documentation is not good. Many packages - I'm sorry, "gems," because we have to be cutesy - don't have documentation at all, not even in the source code. Typing? What's typing? Everything is an object! That's all the type you need, right? Curly braces? Pffft. Those are to passe. You need to close things with an 'end'. Methods with ? in the name? Sure, why not. It gets really fun when you're using that character as a method name and an operator.
I can forgive the anti-curly-brace thing, but everything else about the language feels like it was developed by an 8 year old watching bad hacker movies. So much language-specific crap that does utterly nothing to enhance readability or ease of development.
The day I never have to touch Ruby again will be a great day.
Whats really wrong with having a ? in a function name? Other than C didn't do it in 1971...
Written in another language, people often prefix boolean-return functions with is_, e.g. obj.is_deposit - to me its much more readable and clear that your "asking a question" by writing obj.deposit?
Again, pipe is just a chracter - whats wrong with using it? They are used to denote blocks, e.g.
0.upto(10) do |i|
Also, I'd be curious to know what "language specific crap" you're referring to, theres plenty to like..