Dan Doel wrote:
> Brandon J. Van Every wrote:
>
>>> The Master said: "The noble-minded worry about their lack of
>>> ability, not about people's failure to recognize their ability."
>>>
>>> Confucius, The Analects, XV, 19
>>>
>>
>> Then IIUYC, you think using Ruby is about "nobility."  Personally,
>> I'm not shopping for a noble language, I'm shopping for a useful
>> one.  In my world view, and that of a lot of other people,
>> deployment is part of utility.
>>
> I think more correctly:  Use Ruby (or don't) because it's a good
> language (or isn't). Don't worry about
> whether other people use it.  But maybe I'm misinterpreting.

Of course, my view is, you *should* worry about whether other people use a
language.  It affects the monetary value of your skills, the amount of your
life you spend retraining, the amount of industrial support you get for your
programming efforts, the availability and cost of good tools, etc.  To a lot
of us, disappearing into your own corner to program is not real world.

> Maybe: Use Ruby now because it's good now. If something better comes
> along and supplants it, use that.
> It's hard to tell what will happen very far in the future.  If you get
> some big marketing behind stuff like with,
> say, Java, you get some stability, but who's to say that Java will be
> around in 1, 5 or 20 years.

Pointedly: does Ruby have enough critical mass to survive?  By way of
comparision, the survival of Python is assured.  But in the face of Java and
C# mindshare, vitality is not assured.  Survival, but stagnantion, is an all
too realistic scenario.  The problem is, when the rest of the world thinks
it should be programming in something else, the talent goes there.

> And, learning a new language is always beneficial.

No it is not.  Learning a new language is a time sink, and time sinks are
*never* a priori beneficial.  They have to be justified somehow.

> I think what he means is, if you can't use it at work, and you don't
> use it at home, how can you really know anything about the language?

You can know some things about its user base.  What the advantages are
perceived to be.  What problems they tend to tackle and have tackled
successfully.  What jobs the language is acknowledged to be bad at.  What
tools and libraries they have available.  What the job market is.  And above
all, the degree to which the language has survived baptism by fire.  I know
an awful lot about the industrial trajectory of Python, for someone who
still hasn't coded a line of it.

> When I was first learning Java, it was difficult to figure out why OO
> principles are useful.

Well I cut teeth on C++ so OO was no big whoop to me.  I read OO books, did
OO things, even though I was always working on low-level problems.

Java never interested me as a language.  It was a "web thing."  It didn't
have anything to say about 3D graphics.  It promised the moon on
portability.  I decided to sit back and wait, until someone could show me
why I should care.  That day never came.  Recently, I've realized that
languages without garbage collection are a complete waste of time. (*That's*
the point where the Ruby FAQ is wrong about Python, now I remember.
IIRTFAQC.)  Plus modern computers can handle it from a performance
standpoint, if you're not stupid.  So I'm moving on from C++.  I'm going to
be more productive and less efficient.  But friends I trust tell me Java is
boring.  They like Python.  Game developers use Python for real stuff, not
Java.  And people who know about Python know about Ruby.  That's why I'm
here.  Meanwhile, there's C# and .NET, which seem awfully pragmatic coming
from a C++ background.  Java made its pitch for my mindshare and will likely
never get me.

-- 
Cheers,                         www.3DProgrammer.com
Brandon Van Every               Seattle, WA

20% of the world is real.
80% is gobbledygook we make up inside our own heads.