------art_20005_16544146.1149539195106
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Both you and someone else asked what I meant by saying that the Python
community is ahead of us in some important respects. It didn't haven't even
the slightest thing to do with resumes. I'm not sure if you're applying your
skepticism and cynicism to your case. You're not applying it to mine. (I
haven't written a resume in 15 years. I used to make my living selling my
programming skills but now I'm mostly a buyer of the programming skills of
others. I guess that makes me a crappy business person.)

What I meant was that Python has achieved a degree of respectability in
corporate environments that Ruby hasn't yet. And this doesn't happen by
itself, and it certainly doesn't happen just because a language is
particularly well-done or particularly nice for programmers to use. I think
you may be underestimating the degree to which technology choices in large
organizations are driven by the need to reduce the perception of risk. It's
not universally true that a programmer who "delivers the goods" will get to
pick his technology.

But the question gets asked here time and again: who cares if people in
corporations don't use Ruby, as long as I can use it on my own projects?
Entirely valid. But if you really like using a language, wouldn't you want
to use at work as well as at play? And to get that kind of acceptance for
Ruby will take some serious advocacy. With the rise of Rails, that may be
starting to happen, but it's too soon to tell.

Because I'm a businessperson, I'm always struck that people would question
the value of achieving greater acceptance for anything. Different strokes
for different folks, of course. But at some level, I have to think about
protecting the investment that I make in people who learn Ruby while working
on my projects, which I've done several times in the three-plus years I've
been shipping commercial software written in Ruby. Although I personally
love programming in Ruby and do it whenever I can, your points really throw
the larger business questions into relief.

(For the little that it's worth, we shipped a pair of apps in Rails, and
coudn't get past the performance issues, so we now ship web apps in
handwritten Ruby with our own handwritten web servers.)

And to your point about programmers who deliver the goods: I've been
privileged at several times to have some of those magical crazy people
working for me who can deliver almost anything on almost any schedule. And
although the sample set is small, those I have known all share this key
characteristic: the programming language DOESN'T MATTER. An individual who
really understands software development doesn't pick a programming language
to concentrate on. He's productive in anything you tell him to use, and he
doesn't particularly care either.

On 6/5/06, Giles Bowkett <gilesb / gmail.com> wrote:
>
> >> Many capable Rubyists that I know are of the opinion that nothing
> >> matters but the joy of programming Ruby. True enough as far as
> >> it goes, and that alone will drive significant acceptance of the
> >> language. But not as fast or as far as I would like. I realize I'm
> >> throwing down a gauntlet here, but the Pythonists have been
> >> better at this than we have so far.
> >
> > Not sure what "this" is.  Corporate acceptance?
>
> "This" appears to be resume-padding usefulness.
>
> Two corrections: first, it's Pythonistas, not Pythonists. I don't know
> why, but it is. Second, my experience of the two communities is that
> while these statements might be perceived as a gauntlet being thrown
> down in the Python community, that perception seems much less likely
> in the Ruby community.
>
> Anyway -- to answer your main question -- I have a very skeptical,
> cynical side which believes that the real question here is "how much
> padding will my resume gain if I learn Ruby?" That's such a bad
> question. The real benefit in learning a new language is not the
> ability to get better jobs but the ability to write better programs.
> If you're learning a language simply because it has a bright future,
> you're investing your effort in the language's future rather than your
> own.
>
> Two of the best languages to learn are Smalltalk and Lisp. Neither one
> of these languages has virtually ANY future, but if you learn them,
> you will become a better programmer, and YOU will have a brighter
> future, because your work will improve. Invest time and energy in YOUR
> future. I'm new to Ruby too but one thing I really like about it is
> that I'm learning a LOT more from my beginner steps in Ruby than I
> learnt from my beginner steps in Python (or indeed at almost any stage
> in coding Java).
>
> DHH was able to write in Ruby, even though at the time the language
> had no mainstream acceptance. Avi Bryant has an entire company running
> on Smalltalk, even though that language has no mainstream acceptance.
> Paul Graham sold a company for $40 million after writing every line of
> its code in Common Lisp, even though that language had no mainstream
> acceptance either (and probably never will). Coding in a language
> because it has mainstream acceptance is putting the cart before the
> horse.
>
> Good programmers produce business results. Business people don't
> understand what the difference is between languages in the first
> place. They don't care -- in fact since they can't even tell languages
> apart in any meaningful sense, they don't even have the ability to
> care. The crappy ones say various things as if they really cared but
> the truth is they're just BSing to protect themselves in various
> ridiculous corporate environments -- and the truth is you don't want
> anything to do with crappy business people anyway. If you produce the
> business results, you can use any language you want, and if you don't
> produce the business results, you're just screwing around -- in which
> case, again, you might as well use any language you want.
>
> Long story short, focus on your SKILL. Focusing on whichever trend is
> most popular with corporations at any particular moment is a recipe
> for turning yourself into a bad programmer. Don't believe me? Learn
> Java!
>
> --
> Giles Bowkett
> http://www.gilesgoatboy.org
>
>

------art_20005_16544146.1149539195106--