« Ruby's Best Feature? | Main

Friday, October 31, 2008


Brian Marick

I do.

Lyle Johnson

First things first: I am as guilty as anyone of sometimes identifying too closely with the project that I work on, and taking it personally when people criticize it. Hopefully, on balance, I've been civil in how I've handled those criticisms.

I may be naive, but I don't think this schism that appears to exist in the Ruby/Rails community is as deep as some people are making it out to be. We shouldn't let the actions of one or two narcissists overshadow all of the good things that are going on in terms of cooperation and helping Ruby and Rails to evolve and mature.



Joe O'Brien

Very well put.

Thank You.


well said.

Matt Todd

Let me (try to) be the civil, dissenting voice here...

I respectfully disagree. ;)

I think in some ways we should identify with what we create: this is our art form and we definitely pour ourselves into what we produce, so we wouldn't be wrong for having an affinity for our products, shitty or otherwise.

Also, in a community, I definitely agree that we should be civil, but I also have to remind myself that civility is ambiguous in interpretation and some folks feel more comfortable with being severely socially awkward and stepping over others' boundaries. But this is natural and acceptable because it expands minds and views in a (mostly) constructive way... if we let it.

We can try to avoid conflict and put in a mask of faux civility but this is like shutting up your problems in the back of your mind: they're still there, haunting you, and driving you ever further into madness... it's completely unhealthy to suppress these problems you may have.

Now, I completely agree with you that we should be civil when we express these problems, especially publicly. However, I understand that we can lose our temper and behave a little irrationally or irresponsibly (perhaps, simply, imperfectly), but who can avoid that? When we're fucking upset, we're fucking upset!

Honestly, I much prefer honest and open disagreement than harbored resentment and suppressed anger... the latter can only lead to continued social awkwardness and even passive aggression, or, at the very least, discomfort.

I like outspoken disagreement because it makes the discomfort very real, very soon... Seems odd for me to say, but I appreciate it more because it brings to light problems sooner than hiding it away (obviously) and opens the door for resolution much sooner.

Or, at least, should. This is where civility comes in... either you behave civilly and try to resolve the issue or at least agree to not behave with malice towards each other, or you make an ass out of each other for the world to see.

Let me clarify, because I think I've misspoken... I don't condone public berating or condemnations... this shit should be handled privately first.

But, like I said, we sometimes lose our cool and behave irresponsibly, act childishly, etc. Some are more prone to it than others.

We should be able to say "that's weak, do that shit in private", but I don't think it's the sign of a weak or regressing community... it's merely a sign of the far corners clashing... which is fine. Thank science for the far corners being creating, producing interesting results, and doing the socially awkward things that most of us are too scared to do, or unaware of, or unconcerned about.

Respectfully and with the best intentions, though slightly distracted and mentally exhausted (with the risk of sounding retarded),


Matt Todd

Damn, that was too long... didn't even realize it.

Basically (TL;DR version): I disagree, I think it can be healthy and shouldn't be surprising when the far corners of the community clash (they are polarized, to some degree).


Matt ^_^

Adam Keys

Maybe we can bring the civility back to Ruby and then apply the lessons learned to bring it back to American political discourse. One can hope!

Richard Kilmer


I am not after everyone agreeing, or people being silent, but people being able to discuss things of complexity with potentially dissenting views with civility.

This does not remove passion from the equation...I am passionate about what I believe but I am not going to belittle you as a human being to win the argument. Actually, that's a logical fallacy and does not further anything.

I am also not saying we should not identify with what we create, or be proud of it, or defend it against criticism. We should do these things! The point is if your core value is based on whatever this thing is you create, and that thing is criticized, it can be devastating to the point of violence. This is a bad and sad thing.

You say "well that person is just weak...oh well" but the point is we should have boundaries in our community as we have laws in our society to deal with weakness that tends to inflict harm on others. I do completely agree that folks should discuss things in private first.

Thanks for your perspective!

Joe Grossberg

What really bothers me is that there's so much bad blood between prominent and talented Rubyists (and former Rubyists) in the first place, regardless of how polite they are about it.

Peter Cooper

I agree with the spirit of your post, but was it spontaneous (if so, bravo) or was it inspired by Giles Bowkett's blog post?

If the latter, then no matter how noble the intention, talking about someone else without using their name is not very civil in itself.


"The United States used to be a place where we could have vastly different views, but the conversations were civil."

I respectfully disagree. I don't know what time you're referring to, but from the time of the Founding Fathers until today I don't think your statement holds true as a blanket statement regarding our society. At the time of the Founding Fathers dueling was such a huge problem Washington was concerned it would hamper the war effort.

Pick any period in our history, and look at it closely; you'll see violent disagreements between politicians, and even entire sections of our society, simmering just underneath any perceived civility, and, of course, they've often boiled over into actual violence.

It feels like your overreaching by trying to draw a comparison between the current US political climate and the Ruby and Rails communities.

In real life extremists splinter off or get minimized in other ways, as they seldom have the power to destroy what the entire community wants. If the community gives them the power to destroy what they care about then they aren't extremists anymore. The real problem comes when the community itself is split into sections that can't or won't compromise, as this can result in fragmentation into smaller, weaker communities (at least initially) or civil war.

If the current problems are caused by a few people with horrible social skills and/or anger management problems, then you can either try to teach them the skills they need, put up with them, or shun them. If the current problems are so great that you anticipate the Ruby and Rails communities fragmenting, well, a lack of civility isn't the problem, just a symptom.

Matt Todd

"Actually, that's a logical fallacy and does not further anything."

So true, couldn't agree more.

One thing that all this doesn't account for is flavor... Giles has a special flavor to his ways, he's coarse, blunt, etc, and to great effect. Some others are subtle, quiet, or often invisible, despite being prominent. Either way, we accept this as long as it doesn't cross that invisible, "agreed" social line of "civility". To Giles, it's just par for the course, but if Chad were to write up an article like that, it would be uncharacteristic... either way it isn't a great thing, but it's not totally shocking that Giles would write something like that when he feels aggression pointed at him.

(Oops, I broke the rule about specificity. Meh, oh well... we all know where this started. ^_^)

"The point is if your core value is based on whatever this thing is you create, and that thing is criticized, it can be devastating to the point of violence. This is a bad and sad thing."

Definitely... there's no point in overreacting when someone dislikes our work or thinks our software is pointless or repetitive or unimaginative. (Most are, anyways, right?)

Not sure where this ties in to the civility issue other than as a psychological test for everyone to ask themselves if they're putting their work in the stead of their value and its acceptance in the place of their self-esteem. You're right, everyone should make sure we're keeping ourselves psychologically separated from our work.

"You say "well that person is just weak...oh well" but the point is we should have boundaries in our community as we have laws in our society to deal with weakness that tends to inflict harm on others."

Here I'm totally conflicted because I would hate to be the police of such a wonderful community, even the more eccentric, violent, etc. I honestly think dissension is healthy to some degree, even public lambasting (of sorts).

I think the right response is MINSWAN and leave it at that. Don't cover up this poop on the sidewalk with newspaper and try to ignore it... verbally warn the source and the community on your opinion of the situation with a friendly communication of opinion... "(I don't agree with this so I will remind them that) MINSWAN."

Maybe that's how we share opinions for the community... MINSWAN?

"Thanks for your perspective!"

You too!

I don't know how many more questions I can ask or process, so I probably won't respond... need to make sure I'm productive today... But obviously I think some discourse is healthy so I'm contributing opposing ideas as best I can. Hope it helps to average out the two ends into a more harmonic middle.

Thank science for the ends of the curve!

Giles Bowkett

Let's strive for honesty and accountability as well. Let's strive to avoid posts which obviously target specific individuals, yet never admit it. That's the major problem with Chad, the main thing I was objecting to in the first place, and it's a major problem with your post as well, Rich. If you're going to criticize, the right thing to do is take responsibility for your criticisms and say what you really mean.

Rich Kilmer


You seem to believe that my post is solely directed at you. In this you would incorrect. I believe that your post last night was not civil but there have been things written by others in the past as well. My goal was not to target you specifically even though your post was a catalyst for writing it. Honestly, I was not really interested in drawing attention to your post.

My post is general in nature because I am speaking in general about something that I have seen over and over again and not simply in our community although here I focus on that. Your response impugns my integrity, implying that in my general call for civility in the Ruby and Rails community I am being dishonest and unaccountable. That is unfortunate.

Bill Barnett

Thanks Rich,

It needed to be said and you said it well. Nonetheless, there will always be deadenders.

Thanks for your contributions to the community from one of the many beneficiaries...

Giles Bowkett

"Honestly, I was not really interested in drawing attention to your post."

I really find that hard to believe. I have to impugn your integrity because I think you're lying - or at least being very subtle, and deliberately so. You might not be interested in drawing attention to my post, but I think you are interested in criticizing it. This is exactly what I objected to in the first place - this idea that it's somehow appropriate to criticize people without openly acknowledging that you're criticizing them. In politics they call it dog whistles and it's widely recognized as a sleazy tactic. It's the kind of thing Sarah Palin does on the Rush Limbaugh show and not even McCain will stoop to. I think I deserve better than that. I think everybody deserves better than that. I think it's unrealistic to act surprised when your integrity gets impugned if those are the tactics you're using. Those aren't the kind of tactics that say "hey everybody, check out the integrity on me." Honest people say what they mean.

Giles Bowkett

Actually to be fair I re-read your post and there's dog-whistle criticism of Chad in there as well - it's true when you say that belittling another person's projects is mean-spirited and creates discord. That's one of my other criticisms from my rant. But again, why not just say it like it is? Chad was a dick and Giles over-reacted. That's pretty much everything, right there. I basically agree with you, but I think the way you say it is not the way to say this sort of thing.

Rich Kilmer


When I said I did not want to draw attention to your post (your *first* post) I meant that I had no interest in a broader public reading it. I would have preferred never to have read it myself. It was Dave Thomas' tweet that specifically motivated me to write my post, that the silent majority should not be silent, so I spoke.

You have read into my post that I lied or was very crafty and was using tactics that lacked integrity...and "dog-whistle" techniques (your words above). That is unfortunate because I am not lying, have been very straightforward, not trying to speak in "code words" and the only tactic that I am trying for here is some tact. I did not include in my post *any* examples to demonstrate uncivil discourse on purpose. I believe my post stands on its own without example.

My pastor once told me most conflict would be avoided if we interpreted others motives in the most gracious light possible. I try to do that.

Ryan Owens

I certainly agree with Rich.

To avoid being acused of whatever, I'll state up front that Rich and I have been friends for almost 20 years and that I consider Chad a personal friend as well. I also work with both of them.

I think it's basically pathetic that we're having this discussion at all. Giles, we met once and I actually enjoyed your talk at Ruby Nation. That said, after what you wrote in your blog, I have no interest in seeing you speak or reading your blog again.. For me, you have lost any right to make judgements on how other people express their opinions.

I think Rich was right not to mention you by name. It doesn't take a detective to know who he was referring to if you are familiar with the players. Normally I stay out of these things, but you should know that some people, maybe most, who read what you've written about Chad will simply write you off now. And that is entirely your own fault.

Civility should absolutely be a requirement in this, and any other community.

Giles Bowkett

Rich - there's something to be said for interpreting in the best possible light. I extended that benefit of the doubt to Chad for several years and I can certainly do the same for you. I hope in your case it turns out to be worth the effort.

Ryan - well, I'm sorry, dude, I call it like I see it. Chad insulted me in public several times and I'm tired of putting up with it. His methods rely on posts like these, where people don't say explicitly what's going on. I realize it's a well-intentioned approach but the road to hell is paved with good intentions. Chad abuses the benefit of the doubt he receives, and I'm unwilling to take any further abuse. See my latest post for detail, or, if you don't care, then don't care. It's no skin off my nose. I vote we lynch Chad. That's my vote. I get one vote. You get one vote. You vote your conscience, I'll vote mine.

Garry Dolley

More codin', less bickerin' people...

Peter Cooper

> My pastor once told me most conflict would be avoided if we
> interpreted others motives in the most gracious light possible.
> I try to do that.

I agree. If you had interpreted Giles' motives for writing his post in the most gracious light possible then, yes, perhaps this debate could have been avoided :)


"Now, when I say people have defined themselves, I literally mean that people see their own core value in what they have created, whether it be a service, a framework or a library."

Or conference.

Say something disparaging about RailsConf and see the reaction. It's pretty much the same without the blog post.

I won't defend Giles' actions here at all, but let's not act like we have "the civils" and the "the uncouths" here. Everyone is prone that sort of reaction at one time or another when they're heavily invested in something.

Rich Kilmer


"Or conference..."

I completely agree. This is why my post was written in general and specifically not targeted at anyone. This is why I called for folks to not be so close to something as to feel personally attacked if that thing is criticized. I know its hard sometimes but I am asking for *all of us* to do this. This is not a civils vs. uncouths...this is all of us, a call to be civil.

Ryan Owens

Giles, I know you removed the last paragraph or so of your original werewolf post, and I'm glad you did. That paragraph was so far over the line that it was actually a bit frightening. If it had never been included in the first place, I don't think we'd be having this discussion. Your more recent related post does make me wonder if you're going to punch me in the face next time I see you though.


Rich --
That's what I thought, and I was more or less wanting to gain clarification than attack you. I didn't mean to come across all catty on you. :)

I've just seen a lot of hate dumped on Giles, when everyone has the capacity to react that way even though they may not blog about it.

Matt Todd

All you need is love... and thick skin... la la la la la.

Cheers Rubyists, it's Saturday and we get another day to enjoy Ruby, bicker with old and new friends, play with interesting ideas, dissent, dissolve, be adventurous or stay in, believe in what we do, and do what we believe in.

All that said simply to remind everyone: if you're not enjoying what you're doing, you're doing it wrong. Don't get hung up on things, focus on enjoying life and what you do.


Excellent post.

Separating your own self-worth from the value of what you produce is really tough. I think Americans in particular are quite bad at it, especially compared to the British.

One side-benefit of cultivating this skill is that if you don't identify too closely with your code, you will encourage others to be more critical of it, which results in you getting more ideas for how to improve it. If you blow up every time something of yours is belittled, people just aren't going to be as honest about it.

Adam Keys

Giles, the flaw in your logic throughout this thread is the assumption that everyone is pre-occupied with your behavior. In fact, the Ruby community's civility has been in decline for a couple years. Zed's flare-up and your own actions are just manifestations of this trend.

Personally, one of the Ruby community's best qualities is the kindness exhibited by its members. The elephant in the room is not the behavior of one or two bad actors, but the erosion of kindness and civility that Rich is pointing out. Everyone is on the hook here - we could all stand to learn how to better disagree with each other.

I know I have spoken poorly about the efforts of projects within the Ruby community and that hasn't really helped anyone. I hope that everyone can see the need for a return to civility and return to the kindness that differentiated the Ruby community from other programming communities when I started using Ruby.

Zed A. Shaw

I agree. Ruby should be more civil. I personally don't care, but here's some things to work on for the good of the community (and to keep it civil I will not be specific):

1) When a rival conference starts up making fun of your established conference, it is considered less than civil to call many of the speakers and try to cajole them into not speaking.

2) When releasing an emergency security fix update to a system that everyone in the Ruby community uses, let's say, ruby itself, it is decidedly uncivil to not run any tests, break most applications, and then not fix the problem for months.

3) When you have made a mistake such as the one in #2, it is the Christian (or Mormon) thing to admit fault and repent for the harm you have caused others. It is definitely not civil to declare everything is alright and ignore other's cries for change and help in the future.

4) When giving a speech about Cargo Cults, it is important to not look into the eyes a volunteer who has donated code everyone uses and ask, "Why do we use Mongrel anyway?"

Oops, I was specific there.

5) When one member of the community reports a memory leak, and other members call him an asshole for it, the civil thing to do would be for established members to reprimand the bullies dutifuly.

6) When releasing a piece of software for many other people to use, it is important that one be honest about how often it crashes, rather than hiding that fact from everyone and telling them it's all their own fault.

7) When people post a bug about your project, say, a bug that assumes all months have 30 days, it is very uncivil to insult the submitter and yell that the bug is not a bug because the bug is documented as a bug.

8) When someone helpfully submits a patch that cleans up all memory leaks and performance problems in your Array implementation, it is important to accept the patch, rather than ignore it. If you do ignore it, please refer to #3.

9) Finally, while people shouldn't get to involved to their works, it is nice to get a thank-you from the people in charge. A simple, "Hey man, thanks for writing software that helps everyone run their massive businesses without asking for anything in return." would go a long way toward improving the civil tone of the whole operation.

I hope my advice helps those leaders in the Ruby community finally step forward and begin to lead by example. I believe that if the hyper competitive passive aggressive people running things were to possibly actually be nice, then maybe the rest of the community would follow suit.

Rich Kilmer


1) Matz was asked the question of security patching/release at RubyConf a few days ago. He indicated that they have to do a better job with security updates, and he understands that and will strive to do that.

2) The point of Dave's talk was why are we doing things everyone seems to be doing? Why not do something different? He picked the (then) most popular method of running Rails. I think Dave's desire to help people question their motives for doing what they do is healthy. It was not an attack on Mongrel.

3) Sometimes its as much how one communicates something to others as it is the thing they are communicating. This can be frustrating, especially when one knows they are technically correct. Its a people issue, and its always going to be this way.

4) I am sorry you have had your feelings hurt by so many folks and have felt that your efforts which have had a very positive impact on the Ruby and Rails community have not received the accolades they are due.

Thank you Zed for all your work. Your selfless efforts to create a more robust infrastructure for Rails, among other things, have really moved along the ability for companies or people to use Ruby and Rails in production environments.

It saddens me that you do not care any more about this community, but this is your choice, and I respect that. I do care about this community and hope it continues to thrive in the future. In whatever way I can help in that I will.

Daniel Berger

Whoa, I blink for twelve months and lo and behold two new blog posts from Rich Kilmer! :-P


What's all this 'United States' business? You might as well talk about Belgium or Mongolia for the relevance it has to the Ruby community.

drug test passing

Thanks For Such A Nice Post


author's note seemed to me very helpful and changed my outlook on many things.


Thanks to the author for a good story. My opinion differs from yours, but I am willing to reconsider their views.


Thank you for a good story, I really enjoyed your blog. Be sure to give a link to your friends!


Hello, I want to congratulate your site with 2010. I am sure that, in this new year, your article will please his readers.


President Obama promised $100 million and the full resources of the U.S. government for what he said would be one of the largest relief efforts in recent history. U.S. officials said 30 countries had either sent aid or promised to do so. Rescue teams from eight countries were on the ground.

guild wars 2 gold

o avoid being acused of whatever, I'll state up front that Rich and I have been friends for almost 20 years and that I consider Chad a personal friend as well. I also work with both of them.
I agree with the above report.

new balance

Very casual opened your blog, but let me not to die, because you let me enjoy the share many happy. I really like your articles, have good taste, and taste. I will continue to focus on your articles, remember many updated! Thank you, wish you happy!

emu boots

Last winter UGG Classic Cardy Boots were the most popular sheepskin boots.The color and the design were really well, giving a very natural earthy appearance. In paticular,for this reason Chocolate color cold weather boots have become popular once more, I expect they will be very fashionable for quite some time to come.Just as the UGG Crochet Boots,be sure will be the next miracle in boots market.

air yeezy

People also tend to mix truth and error to teach people, and insist it is wrong.

replica watches uk

I was in Time Square and tried to get Internet connection on my ‘Itouch” and could not. there was NO conection. So is this true?

actron cp9190

Hello! thanks for sharing a very informative post,
Im not a blogger but in somehow I learned a lot from you blog. thank you so much.

moon boots

The service is not usually no cost, but they provide a honest worth. It normally comes that has a one-time charge. Money back again guarantee is also presented so you can get your cash rear. It's important to join those that offer 60-day cash again ensure. This way you can actually quickly request for your refund if you weren't satisfied.

replica watches

When I visit this good webiste,Just to say,I am glad to read so good article in the webstie.Well,OK.I have to say,what a wonderful blog it is.thank you for your sharing so good articles in the website.I like it very much.It is very interesting in it.Look forward to reading so good articles in the website.

Ruby on Rails

so do I

Account Deleted

this is an interesting blog, i hope you'll achieve your goal.http://www.customtermpaper.org

The comments to this entry are closed.