
The Cancers In The Ruby Community - txus
http://blog.txustice.me/2012/04/the-three-cancers-in-the-ruby-community/
======
mechanical_fish
Some incidental writerly advice: Avoid using the word _cancer_ metaphorically,
unless you're deliberately trying to parody the writing style of, say, Adolf
Hitler. Otherwise it's like trying to use a howitzer to dig postholes in your
yard.

I first began to notice the dangerous power of this word when I was working in
cancer research. To a cancer researcher, cancer is a thing one deals with all
day long, but at a very safe emotional distance. You're used to cancer cells;
you study them all the time. You spend quite a lot of time carefully raising
them in dishes. You give excited talks about how they work. Still, it's hard
not to notice that when you tell a stranger on the street what your research
is about, there's this little intake of breath.

And then I grew a bit older, and some friends and I lost relatives to cancer,
so we got the chance to actually experience the process from the patient's
point of view. (An opportunity which, fortunately, many young people don't
get.) And I gradually realized, at a gut level, what all the fuss was about:
Cancer is _really_ awful. Dying of it is awful, and not dying of it is also
pretty damned awful, because the treatments are painful, often damaging, often
disfiguring, and _dreadfully uncertain_.

Don't use the word unless you mean it. And you probably don't mean it.

~~~
txus
I didn't need to grow old to watch relatives and friends fighting cancer. I
know how serious it is, and I really admire that you're working in that
particular field. That said, I used the metaphor on purpose, because of its
power, because I think it's a perfectly valid analogy.

~~~
sk5t
I still think you lack perspective -- maybe standing "back from the fire" a
bit. I would never, ever use that word to express anything about a lousy
programming topic.

~~~
mechanical_fish
Agreed, but more importantly: I would never use that word unless I was trying
to start a fight. And trying to use the word to _stop_ a fight is just
backwards.

(Like all rules for writing, this one has exceptions: For example, if it's in
the service of a great pun, like:

 _Syntactic sugar causes cancer of the semicolon_

well, that's different.)

------
petercooper
It's the latest attempt to define a singular "Ruby community" from a tiny
subset someone has encountered and pin FUD on it, giving ignorant third
parties a bad impression of Ruby in general.

I frequently encounter people who say things like "Ruby is all drama", "I
chose Python because Ruby is full of bickering hipsters" or "I've always found
rails programmers rather arrogant." Lies (or gross generalizations at best)
but at least an understandable opinion when sentiment like this keeps doing
the rounds.

~~~
txus
I didn't mean to give a bad impression of Ruby. I think (and many people have
pointed out) that the problems I outline are valid for many developer
communities, if not all of them. In the end, those communities are human, and
share a good amount of our defects.

~~~
sleight42
You do the Ruby community that you seek to improve a disservice when you use a
title that troll baitish. In fairness, you're not the only one I see doing
this. There are many bloggers who use the same tactic. I have occasionally
been guilty of this in the past though I cautiously avoid the practice now.

More specifically, have you attended any regional Ruby conferences? It is
almost certainly a community unto itself: those developers who take the time
away from their jobs and families to attempt to better themselves by learning
from others. The (Ruby) conference-going community is demonstrably better than
at least two out of your three arguments.

As for the Pareto principle, it seems unfair to paint the "Ruby community"
with such a broad brush while then going on to say the same of the OSS
community at large. It's a universal problem. It should not have been raised
in the context of your post.

Finally, you provided no constructive advice in your blog post. How was this
post supposed to be helpful?

I for one am tired of the negativity.

This post, by providing only destructive criticism, ironically only serves to
exacerbate the public image that some paint Rubyists with.

~~~
txus
I am currently organizing the Barcelona Ruby Conference, and have attended
many other conferences in Europe. I know a lot of people put much effort in
doing things right. But that's not the majority of the community,
unfortunately. I also agree that the Pareto principle (and many other points
raised in my post) are a universal problem, not just Ruby's.

I did provide constructive advice. If you read the post thoroughly, you can
see a call to improve our learning manners, stay away from hot trends, and
even a simple pattern you can use in your day to day to compare technologies,
or to understand better some debates (like threads-processes-reactors).

------
salimmadjd
Maybe because rails is like a religion-based on faith. As an old-timer who
started web programming on perl/cgi I've always found rails programmers rather
arrogant and a bit off-putting. I say rails because this seems to be the main
driver behind Ruby's growth.

Rails seems to work magically for first-timers and without knowing what's
happening it allows anyone to build sophisticated web applications. It
basically expects you to have faith it will work and as such perhaps it creats
a faith based following.

What the author is describing is all sympthomatic of many religious groups :)

~~~
mattbriggs
Honestly, the magic thing is really overstated. The most magical thing in
rails is that methods are defined on your models based on the framework
reading your schema when it launches, which granted, is pretty magical, but
ActiveRecord aside there isn't much else.

I spent some time doing ASP.net Webforms, now THAT is a magical framework. To
the point where I would say only around 1% of the people who used it had the
slightest clue as to what was actually happening. Rails doesn't hold a candle
to webforms in terms of magic, but for some reason it is always referred to
that way, and I have never heard anyone say anything like that for webforms
(or seaside, or lift, or yesod)

------
GussyGusGus
All three of those things are merely symptoms of the real problem: a lack of
professionalism.

~~~
tomjen3
Please.

Professionalism is what is killing great languages like C# and decent
languages like Java.

It is just an excuse for those in suits to look down on the rest of who create
software because we fucking like it, in a way we like, rather than in a way
that doesn't threaten them.

~~~
protomyth
Professionalism has very little to do with the "suits". In fact, I have seen
that programmers are made to do our least professional work when some out-of-
touch manager makes their decisions.

------
LoneWolf
Maybe not just the ruby community, I feel the same about the node community,
from my rather short experience, most of the time I see a lot of them praising
ruby/node/etc as the ultimate solution to everything, and that makes me run
from those communities and consequently the languages/frameworks, and that is
the main reason I dont have much experience with ruby/node the community ends
up making me avoid the technologies that may be good or not, I'm not going to
argue that.

Looking into other communities, specifically Java, C# and PHP I don't see this
kind of behavior, yes sometimes someone like that shows up, but from my
experience it's less than the previously mentioned.

Please note that this is merely my personal experience, but I would like to
know other people experiences with these communities.

------
pluies_public
Interesting article, though the point could have been carried across just as
well without all this motherflippin' swearing.

~~~
nupark2
Well, he _is_ a part of the Ruby community, and they do often seem to often
favor emotional arguments conveyed through harsh language.

~~~
petercooper
What a crass, and inaccurate, generalization.

~~~
nupark2
Now, I'm not equipped to perform a statistically valid sampling of all
conference talks, but pervasive anecdotal evidence lends credence to this
notion.

Specifically, this comes to mind:

[http://lifehacker.com/5859392/swearing-to-make-your-
point-a-...](http://lifehacker.com/5859392/swearing-to-make-your-point-a-tale-
of-fk-and-sht)

As well as this:

[http://www.zedshaw.com.sharedcopy.com/rants/51489cec9386f7c1...](http://www.zedshaw.com.sharedcopy.com/rants/51489cec9386f7c13f69b3a58cd50b02.html)

And this:

<http://david.heinemeierhansson.com/posts/15-potty-mouths>

There are more, but I don't think I need to internet-sleuth the entire set of
well-known Ruby / Web personalities to demonstrate the point: a base lack of
professionalism abounds.

~~~
petercooper
Even thirty more examples would not neccessarily mean Rubyists are "often"
like this. There are tens of thousands of them.

If ruby-talk, #ruby-lang, ruby-core, and Ruby conference talks were typically
littered with swearing, there'd be a point. As it is, it's a generalisation
formed off the back of a handful of cases. Stereotyping, if you will.

I've been covering the news in the Ruby world for about 6 years now, almost
full time. People are inventing these silly stereotypes as a way to discredit
the language and it's users, it's not based in reality.

------
tarr11
I wish that the author would provide some examples

------
danneu
Maybe the ruby community is a secret sanctum I've yet to be granted access,
but I've never identified with or understood these sort of posts.

Granted, I'm a superficial participant in things ruby. But if this vogue
opinion of the ruby community is only something you can see in some deeply-
heated debates in some Google Group or pull-request comments on some
repository, your blog post seems more applicable to all of humanity.

    
    
        The three virtues of a programmer: laziness, impatience, and hubris. -- Larry Wall

------
cafard
I agree that "cancer" is over the top.

I would also say that you are probably better off with the Pareto rule, unless
ability and industry are evenly distributed within the community.

(I speak as someone who uses Perl and Python for most of his scripting needs,
by the way, and is definitely not part of the Ruby community.)

------
sycr
And with that, I'm getting back to work. I enjoy writing with Ruby, and Rails
has made web development a joy for me. Beyond that, I don't find these kinds
of things interesting in the least. I'd wager that most of its user base (Ruby
that is) feels much the same way.

~~~
txus
The 80% I was talking about.

------
VeejayRampay
s/ruby/programming/

~~~
div
s/ruby//

