Last night I went to a talk by Damian Conway.  (Wonderful
speaker, highly recommended.)  Afterwards I was chatting
with a number of members of the local PerlMongers.  The
topic of Ruby came up and what I heard rather strongly
bothered me.

It turns out that a Ruby user had just shown up on the
NY PerlMongers list, and started a flamewar with a post
called, "Why I program in Ruby" that just pointed to a
tutorial on how to program in Ruby.  The discussion (as
you might expect) only went downhill from there.  Several
points came to mind.

1. This was a Perl list.  Not a Ruby list.  If you show
   up on a list devoted to another language and start
   preaching, you are being an asshole, not an advocate.
   That activity is unwelcome and unwelcome for good
   reasons.

2. Anyone who thinks that this kind of behaviour will
   convert people to a new language is sadly mistaken.
   This kind of activity merely leaves a bad taste.

3. If you are going to talk about Ruby, at least get
   your facts straight!  For a random piece of
   misinformation, Ruby does have first-class functions.
   That is what class Proc is for.

4. There are valid reasons to program in multiple
   languages.  Ruby fans are working towards reducing
   some of those reasons (eg application support).  But
   if you tell people that they should use a tool that
   is not currently a fit for the job they are doing,
   they will be unimpressed for rather good reason.

Now most of this is just repeating what MJD said to Perl
people in http://www.perl.com/pub/2000/12/advocacy.html.
But I am hearing more and more signs that it is a lesson
that a lot of people who come to Ruby and then get pumped
about what the language does need to hear as well.

Now this does not mean that all advocacy is bad.  As many
here know, I am a respected poster on PerlMonks.  Several
times now the topic of Ruby has come up there.  When it
does I compare and contrast Ruby and Perl.  I generally
try to give an honest comparison of where they differ,
where they are similar, and mention a few advantages of
each.  As a result - without pissing people off - quite a
few people there have been exposed to Ruby and are trying
it that might not otherwise.  And a few more are inclined
to answer anti-Ruby comments with saying, "Well Tilly likes
it."  You know, people listen better when you have not just
pissed them off...

This isn't hard.  This isn't new.  For instance read the
Linux Advocacy mini-HOWTO:

http://www.linuxgazette.com/issue14/advocate.html

That is excellent advice to follow, no matter what you are
advocating.  If you don't think you are following those
guidelines, then stop.  Take a deep breath.  Point out to
yourself that "witnessing" for Ruby is going to do more to
keep people from taking an honest look at it than it is to
get people to use it.  Do something else for a bit.

Thank you for reading this far,
Ben
_________________________________________________________________
Get your FREE download of MSN Explorer at http://explorer.msn.com