Zed's So #{@expletive} Awesome

by Gregory Brown

If you don't mind 'bad' language and a little bit of hate, go check out Zed Shaw's rant,Rails is a Ghetto.

I'm not quite sure what his intent was with the article, I'm not sure that even matters. What I know is that it has shock value, it made me laugh, and that a number of things in it ring true with me, even if a bit magnified.

Zed and I have had at least a couple conversations about the Ruby / Rails communities before, and I'd say philosophically, we're mostly on the same page. The key difference is that Zed is... umm... Zed.

One thing that he pointed out as a difference between us is that I don't really challenge the status quo. This is true, I prefer to slowly bend the rules rather than shatter them, and see where that takes me. My response though was that I like to challenge the folks who try to suppress those who would challenge the status quo.

So here's my challenge at a few responses, because everyone loves to stir things up!

Zed is so Ghetto:

However, such a hate-filled nasty person should not be allowed to terrorize the nice, pleasant, and generous Ruby community. Sure there are bad guys out there, there are in any community, but this type of rant is pure crap. Such arrogance and hate are self-destructive. I hope Zed’s self-destruction happens far away from my world, but I wish it would hurry up so the rest of us can get back to enjoying writing code.

Wait a second. Zed is getting in the way of you enjoying writing code? Is Zed Shaw standing there threatening Roundhouse kicks to the head while you try to type in some Ruby code?

Or is Zed distracting you because you're reading his blog and getting offended? If so... it seems that the solution is the same as if you don't like something on TV. Change the channel. Go outside and take a walk.

Wear some garlic, I heard Zed hates garlic. Something about how it steals his magic powers.

On a serious note though, saying that hating on people in public is self destructive is like saying that smoking crack is self-destructive. If you think that Zed doesn't know what he's doing, you've been duped.

I was going to go on and challenge a few more of Zed's haters. But you know what, I haven't found any. The closest thing is Giles Bowkett being concerned about how anger is bad for Zed's heart. There was also something from a consulting company which mostly agreed with Zed's points, with only minor disagreements.

I'm not defending Zed. As you can see from the posts, he'll physically defend himself if need be, so he doesn't need that. I'm also not much of a fanboy, I like mongrel but I can remember when it was just something we were chatting about and playing with at NYC.rb. Still, the real thing that I'd like to confirm here is that he has a point.

If the Ruby community starts to get up in arms when they see rants like this, that's even more of an indication of the fact that the lines between the Ruby and Rails communities have blurred, and that we're going to increasingly turn away our best hackers who are interested in real community, beginning a slow slip all the way to JavaOne.

The good news of course is that Technorati lists a number of links to Zed's rant with comments like "entertaining", "hilarious", and other such praises. Every strong community needs heroes and anti-heroes. My question is only who will replace Zed.


2008-01-01 10:27:55
If the Ruby community starts to get up in arms when they see rants like this, that’s even more of an indication of the fact that the lines between the Ruby and Rails communities have blurred, and that we’re going to increasingly turn away our best hackers who are interested in real community, beginning a slow slip all the way to JavaOne.

Zed blurred the line himself when he conflated Ruby and Rails in his rant. He said:

This is that rant. It is part of my grand exit strategy from the Ruby and Rails community. I don’t want to be a “Ruby guy” anymore, and will probably start getting into more Python, Factor, and Lua in the coming months. I’ve got about three or four more projects in the works that will use all of those and not much Ruby planned.

Sounds to me like he is abandoning the Ruby community *and* the Rails community.
2008-01-01 10:45:07

If the Ruby community starts to get up in arms when they see rants like this, that’s even more of an indication of the fact that the lines between the Ruby and Rails communities have blurred, and that we’re going to increasingly turn away our best hackers who are interested in real community, beginning a slow slip all the way to JavaOne.

So, completely offensive, personal, expletive laden rants are the way to real community?

I think Zed is brilliant and generally a great guy, but crap like this is the poison that we need to be squeezing from the community. If this is how he's going to treat fellow hackers, then good riddance (unfortunately).

2008-01-01 10:46:19
I didn't particularly like the post because it (and, well, Zed in general) violates the one iron clad law of the Ruby community that I know of:

Matz is nice, so we are nice.

Personally, I think he's trolling. So it's probably a good thing he's being mostly ignored.

Gregory Brown
2008-01-01 10:47:20

Oh, I can see how maybe it sounded like I was saying the lines haven't been blurred. That's not what I meant. :)

What I mean is that despite the amount of shaky ground we're standing on, it's refreshing to see that some people out there still have a sense of humour.

Gregory Brown
2008-01-01 10:55:07

Of course not. But absence of it is an indication of an active echo chamber, an effect which I think you and I have both seen in the Ruby community (and more-so in the Rails community) over the last couple years.

I see this as a harbinger of things to come, and I embrace it rather than hide from it.


MINASWAN is an ideal, not an ironclad law. If you've been seeing the same Ruby community I have, you'll notice MINASWAN is more an echo of the past than a present 'law'. We say we're so nice, but really, it's only some of us that are being nice. Matz is of course, still nice. As are many Rubyists I know, but to say the Ruby community is categorically 'nice' is quite misleading these days.

Besides, I'm starting to doubt the existence of a single, unified Ruby community. This is perhaps just evolution, this is perhaps that community doesn't scale... But at RubyConf 2005, I felt like I got to know most everyone there, and at 2007, even if there was some of the same spirit, there was no way I could say it was the same thing.

We need to be willing to accept change, and to steer things based on what's really happening, not what we wish we could restore from the past.

2008-01-01 13:06:45

Who is the nr 1 again?

2008-01-01 14:24:32
I made my comment because this crap is distracting. Normally when I encounter people like Zed in real life I would just walk the other way. In this case, I can't get away from this story! It's on almost every blog I read, it's on Twitter, it's on IRC, it's in mailing lists, it's everywhere! Who does the media think he is, Paris Hilton? Please, everyone, just let it go.
Gregory Brown
2008-01-01 14:43:25

If you met Zed in person, you might like him.

Again, seems like people take things way too seriously... or take the wrong parts seriously at least.

2008-01-01 16:32:52
@Greg: Maybe. I have been out of Rubydom for a while, having become preoccupied with a non-Ruby (but still awesome) job.

I'll keep perpetuating MINSWAN though.

Gregory Brown
2008-01-01 16:56:46

And I think you should. It's one of the things that drew me to Ruby in the first place. MINASWAN is a wonderful ideal and I think if we can perpetuate it in our local users groups, our own projects, and other areas of our life, things will be much better for it.

Zed is obviously nowhere near interested in such things. :)
Though it'd pain me to see the majority of the community act as he is with these rants, I do think it has its place. I suppose you can't take the stuff said there at face value though...

A friend asked me via private email if I think Zed is being rhetorical or if he really means what he's saying there. My answer to him will simply be that it doesn't matter. I see his post as a polemic and we should take heed with respect to what it means, even if we have to separate the personal attacks and possibly insane stuff from the legitimate complaints.

But that's just my opinion, I could be wrong.

2008-01-01 17:12:33
I disagree MINASWAN is an ideal. You can get a point across and express dissatisfaction without resorting to sounding like it's Friday and your mom just took away your car keys.

MINASWAN doesn't mean "being nice and conforming to everyone's whim." You can disagree and point out faults in someone's view and still be nice about it. For example, look at what I'm doing right now. :)

Rants like this only provoke thought rather guide thought or make a stand like reasoned, balanced, discussion would. It seems like if he took his meds, got a snack, took a nap, then wrote this blog post, then perhaps it would come out sounding more like a dissatisfied community member rather than a douche.

Gregory Brown
2008-01-01 17:21:18

What I'm saying is it's not a law. While I'll say I respectfully disagree with you, I can't stop Zed from telling you to go fuck yourself. There are no netcops in RubyLand.

It's true if he wrote this post in a calm way it might be more constructive, but who says he's trying to be constructive? I think it takes a mature community to see that sometimes, people aren't nice. That they're a giant douche. The Lord Douchington of Doucheland.

But even douches can make points worth listening to. It takes a certain maturity to wade through crap to find the core points, and I'm asking Rubyists to do that. If you disagree, I totally understand. But maybe then it's time to take the other approach, which is to just be quiet.

Either we embrace conflict or we try to avoid it. Getting all upset because someone broke the rules isn't going to fix anything. :)

2008-01-01 17:32:38
@Greg: I met Zed at a conference, but given his distaste for Ruby conferences I probably didn't meet the friendly Zed, if such a creature exists. ;)
Gregory Brown
2008-01-01 17:47:14

I don't know that there is a friendly Zed. Just a likable one...

2008-01-01 19:24:50
Hey, I liked his rant, I wish he had put more time into it because at times it reads like a stream of consciousness narrative which seems to lose coherence in parts. However, he does make some good points.

My personal opinion is that this is Rails community's loss (and Ruby if he is leaving for good). I don't think he'll have trouble finding work, and this will weed out the kind of companies that he shouldn't be working with anyway.

I have listened to a couple of podcasts and he seems like a pretty reasonable guy. Same for his mailing list posts.. Maybe I have a higher threshold for ranting (I find it to be a legitimate form of expression )

Some people have asked him to take a look in the mirror, I would recommend the same thing for the so called ror 'community'. Treat him as a Jeremiah, and heed his warnings.

2008-01-01 20:59:31
But even douches can make points worth listening to. It takes a certain maturity to wade through crap to find the core points, and I'm asking Rubyists to do that. If you disagree, I totally understand. But maybe then it's time to take the other approach, which is to just be quiet.

This is true, and why I didn't immediately close his post as soon as he got around to making his first point. He's got some beef that's valid.

He's getting more attention for his tone than his content though, you have to admit. Perhaps it would be a worthy exercise in blogging to attempt to run that (and the subsequent) post through a de-Zed filter, to extract the nougaty goodness. I shall make an attempt myself at a more civilized hour.

Gregory Brown
2008-01-01 21:06:39

And that's what I meant where when I said I thought perhaps Kevin had been duped. When facing a polemic, it's pretty important to look past the shock value and see what is actually left underneath.

The real purpose of my post here was to encourage people to read the thing, get pissed off, get offended, or whatever, but then take a second pass through and find the real content.

I fear that it's easy to not do that, because Zed's tone was a little too effective at being bitter and hateful.

But yeah, if someone summarizes his points in a less emotionally charged way, I think the community could learn something.

But they'll miss out of the fun of seeing all the words you can't say on television used to describe programmers, companies, and other things that usually don't weather such hostilities. :)

anonymous coward
2008-01-02 13:43:30
It's a rant. You can't take rants seriously, for they are not serious.

But what truly puzzles me is why people are all up in arms defending how "nice" the Ruby community is. Even before I'd ever heard of this Zed guy, I've heard more profanity from the Ruby programmers I've met in the past 3 months than I have from any other group.

I come from Python, Lisp, and Java. Only Java comes anywhere close, though I know a single Tcl programmer who could almost single-handedly tip the profanity balance to Tcl. Ruby programmers are a heated bunch!

I don't hate the Ruby community, but I do find it funny that all the Ruby coders I know stopped swearing at their computers and their programs and each other just long enough to curse out Zed. :-)

Dejan Dimic
2008-01-02 13:44:53
Every one of us should think about our agenda in our life.
Some are govern by money, some by community respect, some would like to make a difference and leave a mark in history, some would like 5 minutes of glory and some … make your pick.

Nikola Tesla was misunderstand, sabotage by mediocre people most of his live but still manages to produce great achievements for mankind without to menu sorrow words. The same is with Aristotle, Plato, Michelangelo and probably all great people throughout history and even all of us ,ordinary people, has been in similar situation.

The key question is why the sorrow words? What is the motivation here? What he is trying to achieve?

Have you ever do something for common good with no compensation?
Have you ever be involved with mediocre people on a project?
Have you ever been misunderstood?
Has your great idea been ruin by inadequate personal or management?
Have you ever been not paid for the work that you have done?
Have you ever been misled?

CARPE DIAM is my motto.
Do not waste time and energy explaining that all odds are against you because they always are.

And one final thought, Zeds post is not about Ruby or Ruby on Rails as I expected to be but unfortunately about something totally…

P.S. I love Mongrel, it’s a good peace of software and for that Zed has all my respect.

James Edward Gray II
2008-01-07 09:50:55
I don't want to get involved in the debate, but I know some facts that reader's of Zed's rant sure need to consider:


2008-01-13 20:34:26
Give a moment or two for the angry young man
With his working class ties and his radical plans
He refuses to bend, he refuses to crawl,
And He's always at home with his back to the wall.
And he's proud of his scars and the battles he's lost,
And he struggles and bleeds as he hangs on his cross-
And he likes to be known as the angry young man.

--Billy Joel

2008-01-22 10:31:52
Who cares if he is nice in reallife?

He is exposing ruby as a bad language in his blog.

Why should he be praised for this?

(And yes, he did not distinguish between RoR and Ruby, basically claiming that this
community was one. I am not sure why some people defend him. He has the guts to stand
up for his opinion, so he should be man enough to recieve the rightful flames.)

2008-01-25 15:38:14
I think Zed convinced me not to focus on learning Rails or Ruby as a professional endeavor right now, for more than one reason. The primary one is his is claim that we got duped. As Rails popularity has picked up, I cannot tell you the number of times I've hit Rails sites on a fast connection and received the famous HTTP 503 message. I even confirmed it by requesting the same resource again....and it comes back fine. So, is it Rails/Ruby or do they have bad hosts/poor config? It's probably some of both. But now I'm skeptical enough to stand back and watch for now.