Like Eric Burke (via)
I read Martin Fowler's RubyPeople page and was similarly
miffed by the criticism of Python's friendliness (and based on hearsay
at that).
Eric makes a very good point: Ruby people aren't as nice as bunny
rabbits. The obvious corollary is that raising bunny rabbits is
better for the spirit than programming Ruby.
Eric's other conclusion is that everyone thinks they themselves are friendly.
But to be fair, some communities aren't that friendly. I'm sure most
Perl people are nice -- all the one's I've met are -- but some of
their forums (mailing lists, newsgroups, etc) can be a bit on the mean
side. And they recognize this. That's really something in the nature
of the specific communities and forums, not necessarily the individuals. (And sometimes
it's just a reflection of the medium -- large IRC channels seem to
breed meanness.)
Or another instance -- PHP isn't very monolithic as a community, but
it seems like internally to many PHP projects there can be a lot of
strife, moreso than I see in other languages. I don't know any
language with as many forked projects as PHP, and each of those is
usually the result of some social breakdown. Something is going on
there.
And at times people on comp.lang.python have had bits of
soul-searching about it becoming less friendly. I think that really
has happened -- the group isn't as friendly as it once was. The best
explanation I've seen is donors' fatigue. The community changes as it becomes bigger and older,
the weight of past decisions becomes heavier, and as the original core
community moves on. How many 'bots are left in comp.lang.python these
days?
Now I'm not saying comp.lang.python is a mean-spirited place. But
Python has calcified in certain ways that Ruby has not. Just like a
child is more flexible than an adult, the Ruby community is more
flexible than the Python community. I think there's more open space
in Ruby than Python, there's more openness to some new ideas, there's
more acceptance of the opinion of outsiders. The barriers to
contribution are smaller. Backward compatibility? Not as big a deal
with Ruby. Add new syntax? Suggestions along those lines won't be
dismissed for Python, but all new syntax is met with extreme
suspicion; all the moreso if you aren't aware of past conversations on
the matter. And there are lots of past conversions on just about
any new syntax you'll think of -- which makes it hard to jump in and
contribute ideas on that level. So I suspect you'll get a more
friendly reaction from Rubyists on syntax. But then, the cutting edge
of Python hasn't been the core language for a long time (by design).
So I don't think it's wrong to think about these things and compare.
I think it's also worth recognizing slip, and trying to rectify it
(though I'm not pointing out anything useful on that regard here;
just noting that such criticism could usefully exist)