I am mostly addressing James's response, but there are a few things
that I wanted to address in Matt's response.
Matt Pattison wrote:
I've been a little ashamed to be a part of the Ruby community
reading the narrow-minded denials and excuses people have been
given when they voiced their concerns about Ruby's speed. One of
the things I've liked the most about the ruby-talk mailing list
over the 5 years I've been a part of it has been the incredilble
politeness and open-mindedness of its participants, possibly
following the great example set by people such as matz, nobu,
Dave Thomas, etc.
Reading respected people in the ruby community such as Austin
Ziegler mouthing off at people's valid speed concerns like he is
all-knowing and they are "full of it", [...]
At no time have I ever dismissed that there are valid speed concerns
in Ruby. Please reread the thread. I *have* dismissed that the
alioth benchmarks are an accurate measure of Ruby's performance
problems. I know the performance issues in Ruby at least as well as
anyone else with PDF::Writer. I have *seen* how long it takes to do
things that, if I granted myself the luxury of doing some of this in
C, would be much faster than it is. But that would also limit my
distribution and slow down my development.
[...] that benchmanks are "crap" or "bullshit", that people who
support them are "fools", (quotes from the recent Python/Ruby
benchmark threads) [...]
I do hold these opinions and stand by them. I especially hold them
about the alioth benchmarks for a wide variety of reasons; I suspect
Zed Shaw would understand some of those reasons (see his recent
rants on the lack of understanding of statistics by programmers;
most "reliable" benchmarks are designed with statisticians, and I
don't consider most of them reliable in any case). Note -- I'm not
saying that Zed would agree with my stance on benchmarks, but that
he might understand why I am annoyed at the rigorous lack of effort
that the alioth folks put into their shootout.
There are a lot of reasons -- that I've enumerated -- to think that
benchmarks are useless. Also note that I distinguish between
benchmarks and performance measurements and algorithmic analysis
(e.g., big-O notation). Benchmarks are to the latter two as
advertising is to the truth. Advertising sometimes tells the truth
-- but it almost always obscures as much as it reveals.
I thought, has the Ruby community changed now that it's grown in
size? You can get this sort of narrow-minded flame-war mentality
any day of the week on Slashdot, but I can't remember reading
this sort of stuff before on ruby-talk from long term posters,
and I'm surprised it hasn't been challenged more than it has.
People are people, and even the best will, on occasion, express
ideas or opinions of such a nature, or in such a way, as to
surprise and disappoint. But, this still being a largely
good-natured and tolerant group, such occurrences are understood
for what they are: the exception, not the norm.
Yes. I have *very* strong opinions on benchmarks. I also have very
strong opinions (and great exhaustion) about the people who come in
-- without fail -- every quarter mouthing off about the alioth
shootout and Ruby's performance. Their problem is that they simply
take the numbers at face value. Alioth's problem is that while they
exert editorial control over the algorithms they choose to highlight
and the implementations they accept, they don't actually bother to
understand the implementations and explain the numbers. They cop out
short of their responsibility of putting up such numbers and claim
that it's the reader's responsibility. So, without fail, we get
people who take the alioth shootout as gospel and don't even have a
clue as to what "acceptable performance" might be. I'm not just
picking on the alioth shootout; before the shootout, it was some
random text processing utility (that often needed a bit of tuning).
Some people want to find fault with Ruby no matter what. It gets
more than just a little tiring.
I was drawn to the Ruby-talk community half by the fantastic
language which is Ruby, which I found so intuitive and elegant
(even if it always had a few rough edges being actively worked on
in terms of library support, speed, etc.), but equally by the
incredibly open-minded and diverse group which make up the Ruby
community, where people have a wide variety of interesting views
I can learn from, but always tend to resolve their differences in
a much more polite and educated way than any of the other mailing
lists I've been a part of.
I believe that is still true, but I'm biased.
I also believe that it's true. But it's also hard to keep one's cool
in the face of determined ignorance. Is that an excuse? Maybe. I
call it a reason, personally, because I've never pretended that I'll
keep my cool when people are -- to my mind's eye, at least --
willfully ignorant, as I believe the people who have been defending
the alioth shootout have been.
I would be very disappointed if this politeness and open-
mindedness, which I think is one of the key appeals of the Ruby
community, was lost, due to the vocal efforts of a minority, who
try to force their opinions down everybody else's throats in a
rude and closed minded way.
This being a text-based medium, I don't really see much *forcing*
going on. People are free to believe what they like, and configure
their kill files as the need.
I do not believe that I am forcing anything. If anything, might I
point out that I was pretty much the *only* person speaking out in
detail in the face of know-it-all self-important ridicule (that's
you, Mr Jenkins). I'm not the only person to have said anything, and
I know that I said it more harshly than others might have, but I
also gave more detail than most others.
I don't really care whether the Alioth Shootout benchmarks are an
accurate representation of Ruby's performance, whether PostgreSQL
is divine and MySQL is demon spawn, whether FreeBSD or OSX are
the only decent operating systems, whether Emacs is better than
Vi(m)
What I care about is whether somebody who has an
opinion (which I may well disagree with), has the right to
politely express it, and receive polite responses in return
rather than abuse for holding an ideologically incorrect opinion.
Well, politeness is to be desired, but not everyone has the same
notions of exactly what that is, and there may be times when
politeness really isn't the best choice.
I'd be more concerned if abject rudeness was the standard here,
but, really, things are nowhere close to that.
And I would agree. I have been carrying on other discussions without
any of the heat that the alioth shootout has generated. And I *do*
thank Matt for pointing this out. I acknowledge that I have
generated heat in that discussion, and that may have annoyed some
people. I won't apologise for it -- I stand by my words. But I will
be more aware of it in the future. I can't promise to keep my
temper, but I will try to be aware that strident responses to what I
consider to be ignorance is not appreciated by at least some people
on ruby-talk and I will try to moderate it to some degree.
For this reason I am making a small protest, here at the end of
my email where nobody will probably read it:
"Austin Ziegler does not speak for me"
I'm pretty sure Austin speaks only for Austin, and no one is
presuming otherwise. I wouldn't worry about anyone thinking that
any one person on this list is somehow representative of the
whole.
Yes. I do speak only for myself. I'm not even sure that matz would
be bold enough to say that he speaks for the Ruby community. How
matz has been able to keep his cool despite repeated invocations of
the "Principle of Least Surprise" by people who don't even
understand it, I'm not sure. Maybe he's just a better man than I am,
that way.
-austin
···
On 6/14/05, James Britt <james_b@neurogami.com> wrote:
--
Austin Ziegler * halostatue@gmail.com
* Alternate: austin@halostatue.ca