User Reviews

[3 total ]
over 3 years ago Avatar
Great fun, with some quirks

    by GrumpyOldMan

After coding for decades, I've been using Ruby for about a year and am thrilled with it. It's my first-choice language for any new project.

The language is very compact and elegant, and you can express a lot of code with very little typing. Unlike some other languages, though, this compact code isn't hard to understand. Ruby code "reads" nicely, and you can write code that looks very much like simple English instructions.

That ... [More] said, the Ruby language has some gotchas.

Performance is a real concern, and you'll spend an enormous fraction of your CPU time in the garbage collector.

Ruby's flexibility can get you into a lot of trouble. If you get too enamoured with Ruby's reflection and runtime malleability, you'll really confuse yourself. Evil library authors might redefine an API method without your knowledge and screw up your code. The behaviour of objects that implement "method_missing()" can be hard to predict. Etc...

The core language itself has a somewhat cluttered API. Time and date classes are a confused mess, and some library method names are unexpected and hard to recall. Unicode support is non-existent.

Quirks aside, though, Ruby's where it's at these days for web site code and scripting. [Less]

8 of 9 users found the following review helpful. Was this review helpful to you? |

over 2 years ago Avatar
Ruby - the artful language

    by Matt Zukowski

Coming from Python, I was at first mildly annoyed by how "loose" Ruby felt. The liberties one is allowed to take with the syntax can seem alarming, especially to someone used to Python's nazi-like enforcement of strict conventions.

Eventually though it all falls into place, revealing a beautiful language where concepts and processes easily lend themselves to natural representation. It just *feels* right. What's more, once mastered, the ... [More] language's messiness encourages the kind of creative problem solving that other languages can only dream about. In Ruby, doing something in a clever way actually feels intrinsically rewarding -- you *want* to make your code concise and clean, and it feels good to do it (unlike in other languages that attempt to strong-arm you into writing good code but only end up getting in the way).

My only gripe would have to do with the occasional awkwardness one encounters when trying to implement dynamically-generated extensions to objects'/modules' behaviour (for example, dynamically generating some methods when a particular module is included). [Less]

5 of 6 users found the following review helpful. Was this review helpful to you? |

4 months ago Avatar
Has it's place

    by Nathan Crause

Ruby as a language has it's place - and people need to remember that. I honestly can't count the number of times I've had people cram the idea down my throat that Ruby is the alpha and omega of programming. This simply is not the case. It's great at what it does - SCRIPTING! (be it small utilities or web pages). I certainly wouldn't want to use it to write a RDBMS engine.

It's not quite as "English" as people would claim (e.g. how "<" ... [More] means extend in the English language is a stretch of the imagination at best [doesn't "<" mean "less-than"?], and "{||}" isn't a very friendly looking "English" thing to see when you start programming in it).

True, a lot can be accomplished with very little code - but not if you are writing a framework which should screen for invalid information, especially since some of the class hierarchies don't make sense (e.g. TrueClass and FalseClass do not extend the same parent class, so checking that an object is a boolean isn't very straight forward).

Keep perspective and be honest about it's strengths and limitations, and you may very well enjoy the ride. [Less]

0 of 2 users found the following review helpful. Was this review helpful to you? |