Geek Culture Considered Harmful to Perl


Geeks tend to treat others who disagree with loud, obvious disdain. These behaviors are harmful both to the disagreer and to the community as a whole.

Originally presented as a Lightning Talk at YAPC::NA 2002.


Hi, thanks for coming and listening. I'd like to introduce myself. My name is Andy Lester. I've been working with Perl for about seven of my sixteen professional programming years. I'm an editor and author for The Perl Review. I maintain HTML::Lint, a module for checking validity of HTML code, and Apache::Lint, a mod_perl handler that automates the process. I'm also on the cpan-testers list, the folks that Brian King was just talking about.

And, I'm a fuckhead.

At least that's what I've been tagged by one of our esteemed Perl developers. I'm not really a fuckhead, of course, and the specifics of the exchange don't matter, but being so dubbed because of a disagreement is a perfect example of the chronic problem of pointlessly hostile behavior that makes Perl less fun and degrades the value of the Perl community as a whole.

Eric Raymond notes in The Jargon File that "[h]ackers have relatively little ability to identify emotionally with other people." Specifically, we forget that there are actual people on the other end of the email we send. Even knowing this, and after years of fighting this in my own life, it still scares me.

Please, don't accept this part of your hacker nature. Real people don't need to call their colleagues "fuckhead".

People are all there is

People are Perl's only asset. The code can be recreated, but if the people disappear, Perl starts the quick slide into the toilet.

It is incumbent on each of us to maintain the assets of Perl. Attacking and degrading your co-assets is counterproductive. Nat Torkington put it beautifully last year, after a flame war resulted in a casualty on the team: "[I]t's hard to find capable intelligent volunteers", and "chas[ing] one away [is] a reprehensible act of destruction."

"A reprehensible act of destruction." Think about that next time before you fan the next flame war.

In case there's anyone out there who thinks that they're more valuable than anyone else, wake up. We are all peers. Our skills and contributions are different, but we're still peers. Besides, nothing warrants the sort of sneering disdain that's often heaped upon the newer members.

Tim O'Reilly: "Open Source means anyone can join the party as an equal participant." An equal participant. Hacking core code and driving Perl 6's direction are only the high-profile roles. Without the little guys, you have little more than a language that runs. The CPAN is more than just the core modules.

Plus, for those of you who are in leadership roles in the community, it's even more important for you to be civil to your fellow programmer. You are representing Perl. If Larry was as much of a jerk as some of the rest of us are, Perl would be a ghost language.

The Bozo Bit

There's more to this than just destroying the community. It's also about underutilizing the resources available. When you're at the point of tagging someone as "fuckhead", or "stupid", you've probably flipped the Bozo Bit.

The Bozo Bit was introduced in Dynamics of Software Development. It's the mythical switch you flip on someone after they've done or said something that you deem stupid. It's a permanent black mark against that person, and once its set, anything else coming from that person is deemed worthless. "And as far as his making a contribution is concerned, he's just dead weight, a bozo."

(By the way, if you saw this book and saw it was from Microsoft and assumed it must be trash, that's flipping the Bozo Bit, too.)

The Bozo Bit also indicates a fear of things that are different. It's a lot easier to tag someone a bozo if they're different, and yet those are exactly the people we should be turning to for their differing backgrounds and insights, Perl-related or not. There's so much talent and areas of knowledge beyond mere Perl hackery, if we'd just look for it.

We all know about Larry being a linguist, and Randal's karaoke and Damian's love of Latin and Klingon, but what about the others?

A random survey of Perl's expertise include a pediatric pathologist, an MP in the National Guard, a pharmaceutical research chemist, a banjo player, an expert in go, a knife collector and wine connoisseur, a PhD in physics, some Biblical scholars, and a photographer who's designed wheelchairs and taught deaf kids math. Imagine what we can learn from these people if we just take advantage of it.

This diversity is a huge challenge, too. The Perl community is literally global. The dangers of electronic communication are tough enough, but cultural differences make it worse. What may be an off-handed joke to you may be a great insult to someone from another. We owe it to Perl to watch carefully for these inadvertant slights.

What Can You Do?

So what can you do? What can you, personally, do to keep Perl fun and useful for all?

First, get off your high horse. No one is any better than anyone else. "Open Source means anyone can join the party as an equal participant."

Second, think before you type. What you say will be archived, logged or otherwise stored in some permanent form for Google to pick up within days. This goes for IRC logs, too. "This will go down on your permanent record" has never been so literally true.

Third, don't accept it from others. Some people may need private reminders of varying firmness, but they do need them. In some cases, I do think we need to act as our brothers' and sisters' keepers.

Finally, remember this: We're all fuckheads sometimes. Cut the other fuckhead a little slack, willya?

Thanks for listening.

Back to Perl, or home.