Interview with the Creator of Ruby
Lisa writes: "Yukihiro "Matz" Matsumoto talks about Ruby's history, the influence of Perl and Python on Ruby, and his new book, Ruby in a Nutshell. In the article he explains: "When I started the language project, I was joking with a friend that the project must be code-named after a gemstone's name (àla Perl). So my friend came up with "ruby". It's a short name for a beautiful and highly valued stone. So I picked up that name, and it eventually became the official name of the language. Later, I found out that pearl is the birthstone for June, and ruby is the birthstone for July. I believe Ruby is an appropriate name for the next language after Perl.""
there the ruby language home page and you can download the latest version.
free (as in mp3s) electronic music
From the article:
As long as some people feel happy using Ruby, that's enough of a reason for another language for me.
A-men.
It works for a lot of other things, too. Pick
a language, or political party, or religion, or
operating system, or city of residence, or
economic system, or mathematical notation, etc...
Seriously, folks, adopt this attitude, and the
world will sleep MUCH easier at night.
Libertarianism is rich wolves and poor sheep playing gambler's ruin for dinner.
I did. In 1995 I had a conversation with Bjarne Stroustrup (inventor of C++) and asked him the obvious layup "Which language should programmers seek out and learn?"
.I respect him as a writer, but I couldn't disagree with him more)
Instead of automatically plugging C++ he suggested something like this:
1. Learn (or read) at least one every year or two so you don't get pigeonholed into the limitations of the language you use every day. Different languages promote different approaches - and different approaches/designs are the toolchest of this industry.
2. At least try out one functional language (Lisp/Scheme), one OOP language(C++/Java), one procedural language. None is better than the other, they have different takes on the world and shine at solving different types of problems.
3. Sticking with one language (at the total exclusion of others)limits your output and stunts your learning curve. Looking at more than one also reminds you what languages are for -- expressing more succinctly and clearly the instructions you want the computer to heed.
This being said, I look at lots of languages and I've learned a lot from using Ruby (and I use it a lot now). The best ideas from Perl, Smalltalk, Python and C/C++ are all there. The downsides are not (Perl - clumsy OO, Smalltalk - high-priced/low acceptance, Python whitespace-significance/non-OO primitives, C/C++ - compilation, etc.). The user community is probably the most helpful and thoughtful I've been a part of as well.
As far as Ruby's success at translating your thoughts to working programs? I read posts where people claimed they wrote less code, got more functionality, and fewer bugs right away. At the same time, they claimed they generally produced cleaner solutions at a faster rate than they ever had before with Perl or Python. Skeptical at first, I tried it out. . . I was shocked to find it was true for me within 2 days - I was sold.(note - I really am baffled by Bruce Eckel's comments on Ruby. .
Final note: If you are interested in becoming a better programmer, you should get the book "The Pragmatic Programmer" and read it(It was previously and glowingly reviewed by Slashdot - and no, I'm not the author). Its full of great advice on how to approach new languages and the general art of programming. The authors also wrote the book "Programming Ruby" (The "pickaxe" book) and they are big fans of Ruby as well.