From: Seebs Date: 2010-02-03T11:05:15+09:00 Subject: Re: Why Ruby? On 2010-02-02, Jim Maher wrote: > I've asked several friends and associates (application developers) what > programming language they recommend for new development. The most > prevalent answer was Ruby (with Ruby-On-Rails a close second). This was > surprising to me, since my understanding is that Java and C (et al) are > most prevalent. Seems plausible. > Is Ruby a good programming language for general purpose usage? That is, > is it worth the time and effort to become proficient? I think so. Background: I'm a pretty decent shell programmer (I wrote a book on portable shell scripting), and a pretty decent C programmer (was on standards committee for quite a while, also I actually write code). I love working in C. It's a very comfortable language for me. However, it's sort of a hassle to do some kinds of things, like string manipulation. You can, and if you do it carefully you can have it be both bulletproof and reasonably efficient... But it's a lot of work. So sometimes I like to use scripting languages. Obviously, I learned perl, way back when perl5 wasn't even out yet. I've also done C++ (only a little), Java (a bit more), Objective-C (a fair bit), and a few others. Ruby is a really pleasant language to work in. It's expressive, and well-suited to putting things clearly without a lot of extra verbiage. The language favors writing tiny little helper functions which make it easy to express things clearly, and help you avoid repeating yourself. The object model is clear and, well, pretty. It avoids the hassle Java has with some things being Objects and other things being Not Really Objects, partially through trickery. A big part of the fun of Ruby is that it doesn't feel all half-baked and rushed. It seems to attract programmers who think a lot about the developer experience of using an interface, rather than treating it as a checklist of necessary functions, haphazardly named. A strong sense of effective style and good conventions (the ? and ! suffixes on method names), for instance, makes Ruby code often much more readable. -s -- Copyright 2010, all wrongs reversed. Peter Seebach / usenet-nospam@seebs.net http://www.seebs.net/log/ <-- lawsuits, religion, and funny pictures http://en.wikipedia.org/wiki/Fair_Game_(Scientology) <-- get educated!