Civility Starts with Me


Andy is tired of putting up with bad behavior in the Perl world and so am I.

This needs to stop.

There is too much unconstructive, undeservered, passive-aggressive, drive-by abuse.

(My goodness, even PerlMonks has meaningless arguments over the precise technical meaning of simple concepts like "constant" and "initialization" that have recently devolved into accustations of deliberate misleading and lying.)

This also needs to stop.

I don't care if other communities are better or worse or the same. I don't care if you've been coding for a thousand years or ten seconds. I don't care if you wrote the book on Perl or have never even read a book on PERL.

There is no excuse for abusive behavior.

Civility starts with me. I've written and said things I knew were wrong and the time and said and wrote them anyway and I regret them. I've said and written things that turned out the wrong way and I regret them too. (I've had other people—some well-known leaders and some not—call me out for doing so, and I've asked them to keep me accountable for what I say.)

That's part of fixing the community.

The other part—at least as important—is building up an intolerance for abuse. In the several hours since I first saw the first linked comment, no one has called it inappropriate and rude and abusive. No one on PerlMonks stepped in to calm either of the two recent threads that have gone out of hand. (Has anyone at PerlMonks even brought up the idea of a temporary banning of people who post abusive comments? In my mind, it's a fair trade to rid the site of vitriol from even a so-called saint for the good of everyone else.)

For goodness sake, the Beginner's list has even had a long discussion over whether it's okay to be abusive to novices who might not even known which frackin' manual to read because no one has ever told them that the manual exists, because (and I quote) "They need to grow a thicker skin if they are ever to succeed in programming."

(I'm subject to regular abuse from a few quarters for writing a book for novices and giving it away for free, as if I had some sinister agenda to get rich by forcing people to format their code the same way as I do. The horror. The horror.)

These are not insurmountable problems. I've seen first-hand IRC channels (Perl IRC channels!) where someone has said "That joke's a little insensitive and a lot off topic. We appreciate not having that type of discussion here." or "This channel isn't the best place for help on that topic. If you join #another-channel, I'm happy to help you there."

I don't care who you are or what you've done if you can't be civil. I don't care if you've excused yourself from politeness thanks to your self-diagnosis of a social disorder with the Camel in one hand an the DSM in another. You're not welcome in projects I lead if you cannot or will not treat others with respect. I will abandon projects which do not value mutual respect and civility. I will speak up when I see incivil behavior which needs to stop. I will watch what I say and write and will apologize and reconsider my actions when people tell me I cross a line. We're building software, after all, as part of a community, with the belief that working together helps us build better software more easily.

In short, the Perl community needs far more people like Karen Pauley, Ask Bjørn Hansen, Jess Robinson, Tim Bunce, and, yes, Larry and Gloria Wall. If you agree, please, please speak up.


Civility is vital. What attracts a lot of newcomers to a language is not its features, but its gatekeepers: the people who talk about the language and teach it in one way or another. If we're patient and welcoming, that's what they'll remember. If we choose instead to be Smug Perl Weenies, that is what they'll remember.

This absolutely needs to change. Nobody deserves to be on the receiving end of some of the comments I've seen on Perl lists, and the fear of being on that receiving end definitely puts me off contributing as much as I would like to.

I agree fully.

Skins not being thick enough isn't the root problem. People having unhelpful, aggressive, or hateful attitudes is the root problem.


What masak said. Particularly that last part about hugs :-)

Of course I agree. Sad that this must be explicitly said, let alone argued about. But thanks for saying it nevertheless!

orange: Perl making people more POLITE

Not polite people aren't Perl programmers.

People are more important to Modern Perl than any technology.

We even need to be friendly to Trolls (without being permissive of abusive behavior, of course). See Larry Wall's "Yule the Ancient Troll-tide Carol" (

I don't care if you've excused yourself from politeness thanks to your self-diagnosis of a social disorder with the Camel in one hand an the DSM in another.

This is an important principle. I don't discriminate against people just because they are diagnosable. But by the same token, it's only fair to hold everyone responsible for their actions, no matter what diagnoses they may claim. Depression is no excuse for berating the innocent, bipolar is no excuse for abusing bystanders, ADD is no excuse for failing to live up to promises, and blood sugar is no excuse for ... well, anything.

Sure these things happen, but there's a fine line between understanding and excusing.

Please don't propagate the No True Scotsman fallacy, even in pursuit of the worthiest of goals.

I support a nicer perl community. Fully agree with Andy and chromatic.

The perl community is definitely one of the best things about Perl...
so if the community goes down the toilet so does Perl...
what a sad, sad day that would be.

Alienating people (by behaving poorly) shows that you don't want to be part of the community. If that's the way you feel, you are free to leave.

The rest of us are here because we want to be here.

In a similar matter here you can read a blog entry from Matt Trout, a "self called bastard", praising nice community members and its nice participation in blogs comments or irc channels

> In the several hours since I first saw the first linked comment, no one has called it inappropriate and rude and abusive.

I entirely agree with the need for politeness.

However i am undecided on whether it is a good thing to even acknowledge those that stoop down to such a level. The most important thing you can do with a troll is acknowledge them and in my experience providing a better example in dealing with the issue at hand has more positive consequences than concentrating on attacking what is essentially an off-topic issue.

As has been demonstrated on that blog post, striking back only leads to more striking back and provides little of usefulness. That is why i essentially ignored the first post and paraphrased it in what i felt was a more balanced manner.

I think something that would benefit from is if you were to cross-post this blog post onto it, so people following that RSS feed will notice it too and think about it.

Abuse will never go away. You can't wish or will it away, and you can't convince people to be civil. You'd have better luck convincing union members to give up collective bargaining, or tea partiers to favor health insurance mandates.

Tools to diminish the effects of abuse are important, but then again, in #perl we've seen firsthand how those believing they are trying to stop abuse end up being the abusers. But really, I think that's the solution, if done with humility and care.

I just wanted to say (as a fringe user) that whenever I have talked to people one on one in the Perl community (whether brian, Randal, Barbie, Andy, or whomever) it has always...and I mean always been a pleasant experience for me.

You can criticize someones code. You can even be blunt as hell about it, without criticizing the person. Some people just need to slow down and read what they are writing I guess.

The first step in fixing the problem is recognizing it. May this be the first step and a better Perl community for it.

Glad to see someone taking a stand on this.

My one and only visit to a Perlmongers meetup was marred by continuous runs of foul-mouthed hostile language, one-upsmanship, and endless dickering over language fine points. Oh, and not to mention endless pathetic attempts at passes. I've felt less like a slab of meat at many NYC bars.

Good luck in sorting out your collective attitude issues.

> Alienating people (by behaving poorly) shows that you don't want to be part of the community.

Conversely, being very easy to offend is itself a character flaw, and loudly claiming offense is a means of control.

> endless pathetic attempts at passes

I doubt Perl is an outlier in the awkward passes from geeks category.

Even if the Perl community as a whole were less worse than other communities (as if it were a competition!), the question is "Could the community be better about welcoming new people?"

A corollary of being civil is getting others to do the same. There's a good model for giving feedback at I've not listened to the podcast but the PDF is excellent.

I have also stopped participating in more than one project due to bullies and rude people not only participating, but being welcome. There's no excuse for being rude.

Of course, it's easy to get caught up in the moment and say rude things, but we should at least be decent enough to apologize for it.

Thanks for taking the time to address this.

Everyone is capable of clean language and good manners, so they have no excuse for their behavior.

In contrast, I appreciate the St. Louis Perlmongers being friendly and civil at the meetings I've attended. I even bring my little family along.

I remember how much I liked about 5 years ago for their code of conduct:
"If you wish to remind a user to use search tools or other resources when they have asked a question you feel is basic or common, please be polite. Any replies for help that contain language disrespectful towards the user asking the question are unacceptable and will not be tolerated. This includes things like STFU, RTFM, and LMGTFY as well as the obvious forms of disrespect."

have fun, everybody!

Politeness and civility are fundamental to all human endeavors. I agree and I'll join you in trying to be more polite and civil.

Thanks! .oO( What did I do now.. ? ;)

Hi castaway!

Y'alls gots ta be nice!

I am easily one of the stupidest active Perl programmers out there. I've taken my fair share of abuse, but I generally enjoy it - particularly when it is because I've forgotten some very fundamental thing that I should have remembered and there I am, asking about it again.

But where it gets out of line is when it becomes personal, as in while in channel on freenode #perl, someone slammed alester after he asked about something he could have looked up in perldoc.

The usual response is something like "perldoc -f yourthing, ningus" or something but this time it was a personal attack which went something like (and I'm gonna make like half of this up):

"Just because you and your buddy chromatic and you can go around writing a bunch of fancypants blog posts about how people should be nice in the Perl community and you've been programming Perl since 1969 doesn't exclude you from having to look things up in perldoc like everybody else, you slimy turkeybutt!"

I mean, c'mon, really? REALLY?

When the stupidest and the smartest come to ask questions and ask their brothers for help, ya either a) help!, b) say something funny or c) don't say anything at all! There's all kinds of ninguses coming into channel that are full blow renobs who don't even know what a string is and they're pasting 150 lines of regex codes. Generally, they're trying to get stuff done just like the rest of us. Just nudge these guys towards Beginning Perl, Second Edition by James Lee or tigzag or something, but don't berate them! Or just write their code for them and relieve them of their misery.

But don't create more misery! That just hurts them, the community, and, most intensely and directly, YOU!

Karma is real!

I finally unsubscribed to comp.lang.perl.misc because the community there has become too hostile and the conversation poisonous. Over 90% of the postings from experts were netiquette and/or insults only and they universally assumed the worst motivations from any new posters, whereas they would cut some slack for people they knew.

I support your stand completely. The excuse that insults are appropriate because people in our business need to grow thick skins is bogus for several reasons: (1) Our business doesn't require thicker skins than most; (2) The poster didn't request any help toughening their skin; (3) If people are experiencing a hostile environment at their workplace, all the more reason to be nice to them where possible.

Some gravitate towards software because they like dealing with the predictability and objectivity of machines; there is only one truth to a computer, only one way to communicate accurately with it. Unfortunately they then think this applies to human communication and can't deal with ambiguity or subjectivity. They deal with people using emotionally hostile language while claiming that they aren't expressing emotion at all. Easy to do behind a distant keyboard.

By the way, any list of outstandingly polite Perl people is incomplete without Damian Conway, just wanted to get that on the record.

Modern Perl: The Book

cover image for Modern Perl: the book

The best Perl Programmers read Modern Perl: The Book.

affiliated with



About this Entry

This page contains a single entry by chromatic published on April 25, 2011 11:40 AM.

In Praise of Not Writing Code was the previous entry in this blog.

Abstraction versus Mock Objects is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.

Sponsored by Blender Recipe Reviews and the Trendshare how to invest guide

Powered by the Perl programming language

what is programming?