
Dear Open Source Project Leader: Quit Being A Jerk - derickbailey
http://lostechies.com/derickbailey/2012/12/14/dear-open-source-project-leader-quit-being-a-jerk/
======
jasonkester
This isn't restricted to open source project leaders, or even open source
developers. You'll find the same childish elitism in pretty much every field
of human endeavor.

Programmers certainly do it. Laughing at noobs and being mean to them is
pretty much the sole purpose of IRC, unless I'm mistaken. Surfers do it.
Climbers do it. I've even seen rocket scientists do it.

The interesting thing is watching which members of a given group behave this
way.

It's not everybody. There's a certain skill range where you find this
behavior. Generally it ranges between "reasonably good" and "better than most
people I know", and it grows exponentially in that range (though, again, only
in people who are given to such behavior).

But there it stops. Once you hit a threshold of "better than pretty much
everybody in the world, even those who have dedicated their life to this
stuff", you don't really see this sort of elitism anymore.

I live in the climbing mecca of Fontainebleau, and can watch first hand as 7a
boulderers from around the world descend and act like jackasses trying to
scootch their butts off the ground on problems that are hard (but not world
class) while scowling with superiority at the lowly rabble that might dare
touch the holds of their project. It's best to simply wait until they give up
before going over and doing the problem.

But occasionally you see a guy working an 8a. That's pretty stout by anybody's
definition (even at font), but he's not shouting or swearing at it. He's just
calmly doing his thing, uninterested in being the center of attention, and
more than happy to talk to anybody who walks up without the least hint of
snoot.

I think you find the computer programming equivalent of that guy from time to
time too. He's the "bourne shell" guy that another comment mentions
downthread, and he's above the elite.

The cool thing is that you don't have to be as good as him to act like him.
All you need do is not be a dick.

~~~
nagrom
I think it has to do with the level of mastery. At some point, when you become
really good at something (almost anything), you realise that a lot of your own
knowledge now comes from explaining the basics to people who don't know
anything. By forcing yourself to redo the basics, you get fresh insight on a
level that someone new to whatever activity simply can't appreciate because
they don't have X years experience with which to consider things.

I know that I now love teaching bash shell and C. I know that I am not the
most talented shell guru or C programmer, but a lot of my knowledge now comes
from answering questions from beginners that I hadn't previously considered
(in bash, e.g., how can I tell within a script if the standard input comes
from a keyboard or a file, or in C why don't you require the argument to
return to be in brackets?) Questions that aren't necessarily _hard_ , but that
I hadn't asked when _I_ was learning and now need to figure out the answer to
on-the-fly. I now love teaching beginners because there's going to be the
chance that they ask a really _interesting_ question and I'm going to learn
something myself.

10 years ago I would have hated that, because I wasn't comfortable in
admitting what I didn't know - partly because I was still finding out that I
didn't know things on a daily basis. Learning has now become a delight, rather
than something to be achieved to get to the next thing.

~~~
Tarential
I had the opportunity a few years back to work with Jeremy McGrath (many time
motocross/supercross world champion) on a commercial shoot he did at our local
motocross track. He was modest and pleasant to talk to. He treated me as just
another rider, despite the obvious difference in our skill levels.

I also later had a chance to meet Jean Sebastien Roy, a slightly less famous
but still top level rider, when he came to do a promotion for KTM. You'd never
know from either of them how good they were until you actually saw them ride.

This contrasts heavily with some of the "experts" I ride with every weekend
during the summer. I once had a competitor refuse to shake my hand and scoff
at my attempts to introduce myself. It is a huge difference in attitude.

By the way, hello HN crowd. I've been a daily reader for several months but
never found a topic where I felt I had something useful to post. I hope this
has been relevant and useful.

P.S. I ended up beating the guy who wouldn't shake my hand, which gave me a
petty feeling of satisfaction. Childish, perhaps, but I'm not perfect.

------
tinco
I've never seen an opensource leader make fun of an honest attempt at
contribution. What I have seen is a lot of ignoring and rejecting attempts.

Miguel de Icaza had a blog post on this I think. The problem with large
opensource projects is that they have a lot to do, and simply don't have time
to thoroughly follow up on all the small contributions that are ridden with
naieve errors and plain formatting issues. Not to mention the big ones that
come with architectural changes without explanations.

I think it's unfair to call these charity workers jerks, just because they are
trying to make light of a dire situation.

Yes it can hurt if your contribution is coldly cast aside, and yes it would be
much better if they warmly took you in and taught you in their ways, but if
the OSS project leaders don't keep up the constant stream of contributions,
improving the project all the time the project will die and all work will have
been in vain.

On a side note: which project will you be contributing to this christmas? It
is charity time after all and a bunch of hem could use a commit or two from
your hands :) just be sure to read their code-style documents ;)

~~~
cloverich
> Yes it can hurt if your contribution is coldly cast aside, and yes it would
> be much better if they warmly took you in and taught you in their ways, but
> if the OSS project leaders don't keep up the constant stream of
> contributions, improving the project all the time the project will die and
> all work will have been in vain.

Perhaps I'm being naive, but doesn't fostering relationships with contributors
promote _more_ contributions? Or is it considered far too rare that a
(somewhat) mentored contributor will continue to contribute?

~~~
munificent
It's an investment. The first few patches from a new person will likely
require so much hand-holding from the maintainers that it would have taken
them less time to just write the patches themselves.

As that new contributor learns the ropes, though, that cost goes does.
Eventually they hit break-even where they are adding more value to the project
than they cost. But that requires the person to stick around long enough to
get there. There's a pretty high chance any new contributor will lose interest
and go do something else.

So whenever a maintainer gets a new patch from a new person, it's always an
open question as to whether taking it in will ultimately be a win for the
project. Unless you can predict the future, you can't tell if that investment
will get amortize out and yield something useful.

~~~
grogenaut
I have _1_ patch in the git kernel. I barely knew c when I did it but I did
tons of research on what to call and how. Junio (maintainer) took my barely
workable patch and told me what to fix. Let me do it, then pulled it in.
Amazing experience in a very scary environment, eg non-minimal chance Linus
tears into you.

------
Zelphyr
Based on all the "I don't know what you're talking about. I've never seen
this." comments I think the author should clarify that its not just the OS
project leaders who are guilty of this. The smugness of core developers, and
even contributors is worthy of a South Park episode.

If you're a young developer, or seasoned for that matter, and the urge to put
down the work of someone else tugs at you, consider this;

I recently had the pleasure of meeting Steve Bourne, inventor of the Bourne
Shell (as in, /bin/sh on every Unix system ever). Here is a guy who was
literally sitting next to the guys who invented Unix WHILE THEY INVENTED IT.
And all this time later he's surprisingly humble, friendly, and genuinely
interested in what other, younger developers are doing.

If a guy who has earned the right to be smug several times over treats people
with respect, what right do we have to do otherwise?

------
tytso
The author thinks an open source elite is someone with high visibility in a
project that is "well known by tens or hundreds of thousands of people"?
That's a pretty low bar. Personally, I'd call someone in that category a
wannabe. On the internet, it doesn't take a lot to have that much recognition.

I consider people who are "the elite" to be folks like Larry Wall. Or Guido
van Rossem. Or someone like Ian Lance Taylor (who has hacked on many things in
the GCC/binutils toolchain). Their projects are known by a bit more than a
mere "hundreds of thousands of people", and they are definitely not jerks.

The reality is if you want to be very successful, especially in a project
where all of the contributors are volunteers, you can't be a jerk, because
then people won't want to work with you. In the very early days of NetBSD,
there were a quite a few people who were quite disagreeable to be around on
the core team list. One of them was in my work and social circles, and it's
one of the reasons I choose to work on Linux instead of NetBSD. But even
NetBSD is known by more than "hundreds of thousands" of people.

And that's the key --- yes, being a jerk will probably be a strong negative
factor if you want your project to be one of the really top, well-known,
successful projects. But you can a jerk and still have a moderately successful
OSS project. Because at the end of the day, for better or worse, people will
overlook someone being a jerk if they have a good, solid product to offer.
This is true outside of the OSS world as well, of course. As far as I'm
concerned neither Larry Ellison nor Steve Jobs would win the nicest person of
the year award. But their products were sufficiently good that people were
willing to overlook their personality traits, and indeed even idolize them as
positive examples of leaders in the Tech industry.

------
mindcrime
I couldn't agree more. I've seen this type of attitude from F/OSS "leaders"
over the past couple of decades, and it always galls me to no end.

This is why I commit (no pun intended) to try my best to _not_ be like that
with any of my projects. Now, to be fair, none of the Fogbeam projects have a
lot of outside contributions to date, but every time someone has contacted me,
I've tried to respond in a polite, reasonable and appropriate manner.

One thing to consider, when interacting with people you don't know, is that
_you don't know_ what you're possibly getting. We got a request once, for
permission to take our code, make it work with MySql, and use it for some
academic research. Now that was already allowed by the license anyway, but I
took the time to respond to the guy, and had a few chat/email interactions
with him as worked on his project, even though I had no idea who he was, how
important the project was, or if anything would ever come of it. A year or so
later, I get an email saying "Hey, here's a pre-print of the paper we
published, it's being presented at $PRESTIGIOUS_CONFERENCE, and we mention
your project in the paper". That turns out to be a nice "feather in the
bonnet" for us and helped get the project some visibility it would not have
gotten otherwise.

Honestly, I don't see any value in being dismissive, insulting or demeaning
towards anyone, just because they aren't already an expert in your project.

------
bryanh
I've not seen this at all.

In my experience, most open source project leaders are very congenial and
gracious that you're spending time on their project. I did some poking around
and couldn't find __any __OSS leads that disparaged their contributors.

Not sure if the lack of examples was an attempt to not "name and blame" or if
there aren't many good ones. OP, to be clear, this isn't merely leads saying
"this code/feature/suggestion is inappropriate" to pull requests, but honest
malice?

~~~
whatshisface
>I've not seen this at all.

Well, there is always everyone's favorite grumpy uncle Linus. :) I think it
ends up being 'ok' for him to do it because nobody questions the importance of
a kernel being perfect.

~~~
akkartik
Linus being flame-y is not the same thing at all. He's not telling people to
RTFM afaics.

~~~
npsimons
I was about to say this same thing; Linus is extremely tame by most people's
standards, and when he does get snippy, he tends to reserve vitriol mostly for
those who should know better. If he does take the time to criticize a "noob",
it's not because they are a beginner, it's because their idea is flat out
wrong. Take the whole git/C++ email exchange
([http://thread.gmane.org/gmane.comp.version-
control.git/57643...](http://thread.gmane.org/gmane.comp.version-
control.git/57643/focus=57918)) and notice how Linus didn't get flame-y until
the OP did. Or the whole Con Kolivas/Ingo Molnar scheduler debacle: there were
perfectly good reasons why Torvalds chose Molnar's implementation over
Kolivas's.

The truth of the matter is, Linus doesn't really have time to respond to every
hare-brained idea that people have for the kernel. Add to that he's been doing
this for a while. If you feel maligned, you might want to consider a) Linus is
probably right b) if you really want to hack on the kernel, you should know
better and c) if you want due consideration from people more busy than you,
you should give your idea due consideration yourself.

Edit to followup: until you've lurked on LKML for a while, or heard an
interview, or, I dunno, maybe actually had a live conversation with Torvalds,
you are probably being lead to believe he's an asshole by people with bones to
pick with him (eg, people who should know better who he told off). As someone
else pointed out farther down thread, how many times have we seen links to a
single email/blog post by Torvalds without the context of the person he is
responding to?

~~~
officemonkey
>if you want due consideration from people more busy than you, you should give
your idea due consideration yourself.

I am keeping this quote and will give you proper attribution.

------
ynniv
I played pull request with a framework recently. There was something that I
wanted to do that could only be done if the framework had fully chained a
JavaScript function (ie, forwarded all parameters, included "this", and
returned the result). It was an easy fix, but it turned out that what appeared
to be an omission was intentional due to very specific edge cases in
JavaScript that prevented someone from doing something undocumented but maybe
useful. A conflict between two users doing things that the framework did not
intend seems like a tough decision, one that makes sense to roll with the
status quo. Except that from the issues database, I can see that I was not the
only person to ask for this change. My pull request was actually proposed 3 or
4 other times, and there were plenty of other people who had found a sort-of-
workaround and were shipping code using this workaround. So I sat down and
spent a good amount of time investigating the edge cases to figure out what
should be done, wrote it all up, linked to the other people who were having
problems or working around them, and submitted a new pull request. Again, the
results were unsatisfying: closed because they didn't think people should be
doing that. Except that they already are doing it in a hackier way. I guess
that other lone guy who was doing something really strange but filed his bug
report first wins after all. This whimsy is disrespectful, and pushes people
to use something else, start their own, or spend time telling the world that
you don't know how to play nicely. In the end, maybe that doesn't matter to
some maintainers. They had their fame and their fun and they move on.

~~~
slurgfest
How would you avoid this? If a change is made quickly due to because that
other lone guy filed his bug report first, then the solution would have been
to, well, ignore his report. However, a project which did that might well
ignore your report too.

~~~
ynniv
These are the decisions that build (or do not build) community. The best
decision is to look at what is best for the most people, consider as a
maintainer where you want the framework to go, and make a careful decision. A
cursory glance over someone's suggestion and a dismissal that is ignorant of
how the community is working with the project or based on organizational
minutia (formatting, variable names, unit tests, etc) erodes other people's
interest in making your project a success.

------
Symmetry
I expect a major driver of this is that people always tend to underestimate
how much tacit knowledge they're using and so to assume that people who
disagree with them are fundamentally stupid, malicious, or crazy when they're
really just coming from a different background.

[http://lesswrong.com/lw/kg/expecting_short_inferential_dista...](http://lesswrong.com/lw/kg/expecting_short_inferential_distances/)

~~~
breck
> people always tend to underestimate how much tacit knowledge they're using

I like how you put that.

Any thoughts on the best way to respond when someone asks you for something
that requires hundreds or thousands of hours of tacit knowledge?

~~~
Symmetry
"This is something I learned through thousands of hours of working in this
area"? I'd hope that being able to point to concrete achievements would help
people to make peace with gaps like this, something that isn't necessarily
available to a scientist trying to explain evolution to laymen - since the
laymen might not even be able to get what the scientist has accomplished. Most
achievements in programming seem easier from the outside so this isn't
perfect, but it might be a good starting point.

The thing is that you should just always be sensitive to the possibility of
large inferential distances when you're interacting with people of different
opinions. "Don't ascribe to malice what may be due to stupidity. Don't presume
stupidity when ignorance is as good an explanation. And try not to be too sure
your opponent is the ignorant one until you can prove otherwise." That's very
much in descending order of importance, but it's always good to keep the third
point in mind if you can.

------
codex_irl
I've called out more than one "leader / boss" out in meetings / code-reviews
for being excessively mean & shaming noobs who are genuinely trying their best
& are hungry to learn.

Constructive criticism is a great thing, but telling someone they will never
work again in this industry because they make a small CSS error on their first
ever post-college project is another.

I've been fired from one job for standing up in a meeting and calling the boss
a self-important asshole & refusing to retract it.

Life is too short to let these type of people get you down, we are all just
floating on a rock in space & going to die in a few years....what's important:
[http://www.reddit.com/r/pics/comments/14su4p/he_sang_to_her_...](http://www.reddit.com/r/pics/comments/14su4p/he_sang_to_her_every_night_before_bed_moments/)

~~~
keithpeter
_"I've been fired from one job for standing up in a meeting and calling the
boss a self-important asshole & refusing to retract it."_

Well, yes, that would cause some difficulties and a slightly chilled air
around the coffee machine where I work as well.

There are ways of communicating the sentiment without making it easy for them
to get rid of you...

~~~
codex_irl
I agree with you, but I did not really want to stay working for that guy
anyways - it was no loss.

My take on working is that my employer is renting my time & skills to complete
a job, they have every right to expect value for their money - but they don't
own me, nor can they tell me when I am allowed to take a phone call, go for a
lunch break, shout at me or demand that I work extra hours for no extra money.

As the wolf says: "I'm here to help - if my help's not appreciated then lotsa
luck, gentlemen."

~~~
keithpeter
Yup, as a teacher I have a huge amount of autonomy. I can work at home (I
actually do log into an rdp session, but I don't have to) and schedule the
between class work when I wish to. We tend to use mobile phones for personal
calls in the UK, just a fashion I suppose.

The funny thing is that I end up doing a _lot_ of work on my own time...

------
nullc
There is an unfortunate flipside to this— people who show up with ALL CAPS
demands, proclaiming your incompetence, because of some missing functionality
that they believe to be so obvious but can't seem to completely explain on
their own.

The best way to respond to that is to politely request what you need and then
ignore if they won't be helpful. ... but humans don't always respond in the
best way: Another possible response is to respond harshly and critically in
order to generate a hierarchy: "I am not here to serve you. Your patches may
be accepted if it suits my fancy.". Neither extreme of being high and mighty
nor of allowing people to simply abuse you is ideal.

------
marcamillion
I thought this was exclusive to the Rails community - but it is good to see
it's not.

I am glad someone is speaking out against it, because it sucks.

One of the major reasons people don't learn to be better developers is because
of "elite developers" that have come before them that take pride in
humiliating them.

This article is very on-point. I nearly stopped learning Rails because of the
torment from #RubyOnRails on IRC. But then I remembered it is the internet and
everybody is probably a dog.

I am glad I didn't stop learning - and I am very conscious of this with
"noobs" now.

~~~
grogenaut
Every time I've gone to RubyOnRails I've had to fend off supposed experts who
are really morons. Like since 2005. I've had the experts tell me, when asking
questions about how I might fix an issue with upgrade issues with a big rails
plugin (now engine) and rails that "You should just wait and the plugin
maintainers will do it eventually". No help on what to try, nothing. It took
me throwing down the commit log / website showing me as the maintainer to get
them to not be condescending. That channel is terrible. The shining light is
Radar. Man that dude is good. Tester and coder on shopify. And effing
friendly. Can't say enough about him.

~~~
JonnieCache
Never, ever go in #rubyonrails. Every time I've ever been in there I get
nothing but industrial strength sarcasm from people who don't actually know
what they're talking about.

Who _are_ these people? Are they socially awkward nerdy types, or are they
more the "jock" side of the coin who understand social rules better than most
but simply consider themselves above them?

My first instinct is to assume they're all 14 years old, because that was what
everyone I knew was like when I was 14. Inevitably these people turn out to be
in their 30s and have somehow assembled complete lives with jobs and houses
and so on. The mind boggles.

By the way, #ruby on freenode is very noob friendly, with people going far out
of their way to help beginning coders. There's probably a better class of noob
in there as compared to #rubyonrails though.

~~~
grogenaut
I usually go in there with different nicknames to troll the one specific
person I truely hate. That's a good drunk sunday night.

------
tjbiddle
There are a lot of other angles we can look at this as well: The user ("I
need.."), The cocky contributor ("This is right, accept my pull request!"),
The belittled contributor ("I'm not sure.. but let me try.."), The helpful
leader ("I can't accept this because it will break xyz.") The douche leader
(As the article stated: "LOL!"), and the cocky leader ("No, that's wrong." -
And then they realize later it's actually right, but they're attitude made
them not look at a worthy contribution in the right light correctly.)

The article makes a good point - But there's a lot more we can take out of
this, that being that for any community to succeed, it needs to be just that:
A community. A place where others help each other grow.

~~~
christkv
Sometimes it's hard because reminding someone who sends you pull request about
the projects contributor guidelines sends them off in a huff and even though
they pull "might" be good in that it does not break any tests it's hard to
know what scenario it's guarding against or if the person is doing something
strange in their code.

The cocky contributor is usually a bad contributor in my experience and are
both energy drains and time sinks. The belittled (or humble) contributor is
the one I am that I really appreciate and value as they are willing to enter
into a dialog about what needs to be in the pull request to get it in.

In the end is all about normal human social decency. Treat people badly and
don't be surprised when they treat you as a leper.

------
lazyjones
I've seen this a couple of times but not after pull requests, but simple
(verified even) bug reports or feature requests.

Let me quote a recent example from IRC:

> XXXXX interesting how the number of new github issues went down since i
> started ignoring them :)

> XXXXX could be coincidence, but i suspect having a few open tickets
> discourages the more frivolous requests we usually got there"

Nice attitude there! After reading several such comments and some diatribe on
github (following a bug report), I really had difficulties justifying the use
of the software developed by this guy, especially after having been warned
about this earlier by a co-worker ("the project is fine, XXXXX is the only
problem with it") and not taking it seriously because I thought he was
exaggerating (I'm not really into personality cult etc.).

~~~
grogenaut
If the project gets big enough you really need to have someone just dealing
with the issues. It's super time consuming. I've gotten commit access and cred
on several open source projects just by going through the issue log and
triaging it. There's a great post I can't find on a good triage process for
issues. OSS projects are much more likely to give you access to do tickets
than to commit. And on github, you can tag issues to help the maintainers sort
the issues.

------
Spearchucker
That this still happens is sad.

I was on the receiving end way back in 2002. I'd just written an RS232 library
for the .NET Compact Framework that ended up in the Microsoft .NET Compact
Framework Core Reference[1]. It was also referenced by an MSDN article[2], so
got a lot of attention.

I left a bug in there which broke anything that didn't use default settings.
The abuse was astounding. It was the last code written on my own time that I
ever published.

[1]
[http://www.microsoft.com/learning/en/us/book.aspx?ID=5960...](http://www.microsoft.com/learning/en/us/book.aspx?ID=5960&locale=en-
us)

[2] <http://msdn.microsoft.com/en-us/library/aa446565.aspx>

------
debacle
I agree with others. This is useless without context - I have never seen this
actually happen.

"stupid pull request of the day site:twitter.com" returns one result, and it
isn't negative in any fashion.

------
Karunamon
A part of the hacker mindset ("hacker" as used in the jargon file, and in this
site's title) is intolerance of stupidity. Ignorance is one thing, that can be
learned away. Stupidity is wasting developer's time by asking questions that
are addressed in the documentation or that can be instantly solved with five
minutes on Google, or submitting pull requests that go against a published
style guide, are plainly wrong or buggy, and so on.

I'm going to come right out and say this: Some people should not contribute to
a FOSS project. Whether that's because they can't deal with other people or
because they're not willing to put in even a modicum of effort to work
effectively with other people. If you go up to a group of people who are used
to doing things according to procedure X and you blithely ignore it, you
_really should not be surprised_ when your efforts are met with derision at
best and hostility at worst.

While I understand the point the author is trying to make here, and even
sympathize to a point, the mindset isn't going to change, nor should it. The
bar to entry is a part of what make high quality projects high quality.

~~~
shadowfiend
There is literally nothing that you gain from being derisive that you can't
also gain from being polite. And the tone you set for your community is vastly
different.

Derision of stupidity is probably one of the worst characteristics of hacker
culture, because “stupidity” tends to be shorthand for “disagreement with my
point of view”.

I have trouble making a cogent argument around the derision of stupidity
because derision should be self-evidently bad. It should automatically file
under “why would I want to do this to my own personality”. Derision and
bullying are _indistinguishable from each other_ , and the thought that a
group as oft-socially-maligned as hackers (at least until the last 6 years or
so) defaults to derision seems more a sign of imitating things we were
subjected to than reasoned thought.

“If you go up to a group of people who are used to doing things according to
procedure X and you blithely ignore it, you really should not be surprised
when your efforts are met with derision at best and hostility at worst.”

What does blithely ignore mean? Say this is the first open source project I've
ever contributed to, so I don't know what the norms are in terms of where to
even _look_ for guidelines. Or I contributed 30 minutes of my time because
that's all I had, and I devoted them to this. Or I'm learning to program, and
I chose to try to help your project.

I will posit that anyone who is trying to contribute to your project is doing
you a kindness. They may be doing it in a poor way, and you are within your
rights to point that out. But _how_ you point it out is what we're talking
about. You an politely point out that the project doesn't accept pull
requests. You can politely point out that tickets can't be opened until
there's been a discussion on the mailing list. Etc. You can even be curt.

Derision is not curtness. It is not impatience. It is explicit, intentional
putting-down of someone because they aren't as good at something as you are or
think they should be. And it is a poison. Unfortunately, if you take it
frequently enough, it becomes habit. It becomes second nature. And you stop
noticing it's poisonous. And so, unfortunately, it is an oft-enjoyed poison in
intellectual circles. It doesn't help anything. It doesn't help you understand
the world or other people. It doesn't really save you that much time. It
simply makes you feel better about yourself.

~~~
adekok
> There is literally nothing that you gain from being derisive that you can't
> also gain from being polite.

As maintainer of a large open source project, this isn't entirely true. I
would agree that _derision_ is bad. But being _blunt_ is good. Many people
confuse bluntness with rudeness.

There is _every benefit_ to being blunt with stupid people. The people who
intentionally and wilfully ignore the documentation, who demand that bugs get
fixed NOW, who refuse to follow instructions when they ask questions.

The benefit is that they _go away_. Rude people are toxic to a community.
Stupid, rude people.. doubly so.

My personal approach has evolved over the past ~15 years doing this. I no
longer try to educate them. Once they've made it clear they're intentionally
stupid, they get told "shape up, or be banned from the mailing list / forum".
Many do.

Others reply with hostility, curses, private emails denigrating my mental
health, paternity, etc. They get banned permanently.

Banning toxic people is _good_.

~~~
shadowfiend
I agree with you 100%. The post in question specifically mentioned ridicule,
including comments like “wat” and “stupid pull request of the day”. That's
derision, not bluntness.

While I try to be polite regardless, I have no strong issue with people who
are blunt by default (I also happen to think there's a fine line between
bluntness and rudeness, but that's a different topic altogether). I think the
key of what you said is “once they've made it clear they're intentionally”
doing what they're doing. That is what makes a person toxic. Missing
documentation or contribution guidelines or what have you on the first try,
less so. On the second try, I'd say bluntness is in order (“we've already
asked you to do X, please keep that in mind in future requests” or somesuch).
After that, you're dealing with a person who is dragging down both your
community and your own time. That's a problem.

And still, it's more productive and beneficial to the community as a whole to
be _blunt_ rather than _derisive_.

Anyway, yeah, net net, I fully agree :)

------
sonabinu
Glad that someone is talking about this. There are times when a little
encouragement can go a long way. A novice maybe very excited about learning
and being belittled at that stage can be deflating. This is especially true of
people who come from a totally different field, or are young and enthusiastic
about contributing.

------
carlisle_
I have to wonder how many people see Linus Torvald's behavior and think what
he does is OK. Linus walks a VERY fine line, and his insults and demeaning
comments are usually directed at people who "know better."

I have had a few drinks so it's hard to properly articulate what I mean, but
maybe somebody else knows what I'm talking about.

~~~
freditup
I have Harley Hahn's Unix book (2009 edition I think). In it, he describes
some of the reasons Linux grew so quickly. One of them is that "Linus has a
pleasing personality... in person or online, Linus pretty much gets along with
everyone because he is so easygoing. As he once observed in an interview,
'Unlike Richard Stallman, I really don't have a message.'"

This part struck me - as a college student who hasn't been involved in tech
culture for that long, all I had heard of Linus is about his brilliance but
his harshness and perhaps arrogance.

So, assuming my impression and Hahn's are both accurate - what changed? I
think that the stress of life gets to us and we start to cut the pleasantries,
tact, and niceties that seem to slow us down. We don't mean to be a jerk, but
the fast-paced lives we commit ourselves to don't allow time for us to treat
others as respectfully as we can. We're blunt because it is easier on us and
we don't care about what it does to others.

~~~
cbs
_So, assuming my impression and Hahn's are both accurate - what changed?_

Nothing. The only difference is if you're on a mailing list that Linus
frequents, or if you're only reading a single post from that list bereft of
context because someone sent you a link to the point where Linus puts his foot
down.

Its like Zed Shaw, he wrote a great introduction to programming book I
frequently recommend and even helps random people learn over twitter and
email. But post some of his work on HN and you'll find a bunch of people still
sore about a single angry rant he wrote a few years ago.

~~~
mythrowaway2
about the last para, there is more than can meet the eye (for example: when
said people issue unwarranted physical threats) it's not to diminish the
greatness of anyone's work but some (not all) people have genuine complaints
beyond a single blog post.

------
joshfraser
Open source projects work best when they have a benevolent dictator. You need
someone who isn't afraid to say "no" to bad ideas, or else you'll end up with
a total clusterfuck. It's just as important not to forget the "benevolent"
part. I'll always remember Brad Fitzpatrick telling me "no" to one of my dumb
suggestions for PubSubHubbub. He explained his reasoning and took the time to
tell me what I needed to fix. He knew he was smarter than me, but he gave me
the chance to figure that out on my own instead of pushing me away.

------
grogenaut
Lots of sports analogies on here. I'll toss in mine. I've made a habit of
trying new things and have gotten over the "you look stupid when you start"
part. Skiing, Snowboarding, knitting, sewing, coaching, aussie rules.
Everyone's a newb at some point. I have found that I compare myself to other
skiiers / boarders a lot. But that is mainly a safety thing so I know if I
should follow them down other parts of the mountain. So competitive but for a
reason. I think I get more pissy about etiquette and safety, but generally
from people who look like they should know better. 16 year old coming into the
lift line at high speed, I see you. I'm a large large man, you're gonna get
hurt if you hit me and I played college ball, I'm gonna make sure _I_ don't
get hit. Soooo... anyway. Unless you're trying to get ranked in real life,
you're really just competing against yourself. You're the one who will decide
if you have the time to put into whatever to be good enough to compete at a
low national level. There are exceptions, but in sports you can use your brain
and experience to make up for physical deficiencies. In Cerebral events you
can use persistence and experience. And I've tailed off so Fin

------
zzzeek
this blog post has a major omission of any specifics whatsoever. I've never
seen this kind of behavior, and I'm having a great urge to say something like,
"oh well because PHP/Ruby/etc". But that is all prejudicial.

Won't we be given some specifics so that we don't have to guess what famous
OSS author actually typed "HAHAHA" at a pull request ?

~~~
msbarnett
It's hard to believe that people "have never seen this behaviour" have spent
much time watching the OSS community. Ulrich Dreper, well known OSS
contributor and former steward of glibc, was famous for flaming the ever-
living shit out of anyone who dared submit a patch that he in any way did not
care for. To give but one example, [http://www.sourceware.org/ml/libc-
alpha/2000-08/msg00053.htm...](http://www.sourceware.org/ml/libc-
alpha/2000-08/msg00053.html)

~~~
debacle
That was flaming the ever-living shit out of someone? Seems like he's trying
to keep his stdlib clean and efficient.

~~~
msbarnett
So it's not that you've never seen this behavior in your tenure as " a
contributor to open source projects for almost ten years", it's just that you
think toxic behavior is acceptable.

That's, at least, a more intellectually honest position than your previous
claim.

There are a lot of ways to reject a patch on the grounds of cleanness and
efficiency that don't involve deriding the contributor's work as "BSD crap"
that only helps people who "deserve to be punished".

Drepper was a monumental asshole, and he deeply hurt the glibc project for
years.

~~~
debacle
Toxic? Really?

Lighten up, Francis.

~~~
wpietri
Toxic is exactly the correct word. It poisons the community and kills morale.
If an employee of mine were ever using that tone around the office, we would
be making a quick trip to a small conference room to discuss appropriate
behavior toward colleagues. If it kept up, they'd be gone. Because somebody
would eventually be leaving over that behavior, and I'd rather it be the perp
than the victims.

------
saosebastiao
The worst behavior I have ever seen comes from a commercial open source
project. I know they aren't paying customers...but they are bug finders and
bug reporters, user experience testers, and even feature-expanding code
contributors. I would be appalled if I employed the guy.

------
sp332
_Chances are, mr or mrs open source elite, you have been on the receiving end
of this in your life._

Exactly, and that's why they do it to others! That may be their default (not
consciously-chosen) behavior because it's what they got used to.

~~~
Zelphyr
That seems to be an odd, and ironic flaw in the human mind. We often do to
others what was done to us. Sexual abusers are often themselves past victims
of sexual abuse.

~~~
sp332
It's not especially ironic. Two things: when people are left to their own
devices, they tend to imitate the people around them. And, people tend to
favor themselves to be a good "end result", which reflects favorably on the
environment which shaped them. In fact, to oppose the circumstances you came
from is to oppose some part of your own nature. So, people tend to favor
recreating themselves (because they prefer themselves) by recreating the
environment they came from.

Edit: just found this example <http://penny-arcade.com/2012/11/30>

------
spot
useless without pointer to the actual behavior.

~~~
steele
Anonymous examples would help make the point, but outright pointers to the
behavior described is not a not too distant cousin of "hah check out this
jerk"

~~~
debacle
When in society did "Look at what this jerk is doing." become something
unwarranted?

If people are acting like assholes, they deserved to be called out.

~~~
potatolicious
When the goal is to change behavior as a whole it helps to _not_ point anyone
out. If you linked to a Github pull request that demonstrates this behavior,
that guy now becomes the eye of the storm, instead of the community where the
focus should be.

If the author did that, we'd all be talking about how githubuserxyz is such an
ass for belittling contributors and how dissimilar we each individually are
from githubuserxyz.

It doesn't help the conversation - which is one that the _community_ needs to
have.

~~~
shrikant
_> When the goal is to change behavior as a whole it helps to not point anyone
out._

For some reason, this reminded me of The Racist Tree.
[http://24.media.tumblr.com/tumblr_lzx6xxNlXV1qi049to1_1280.j...](http://24.media.tumblr.com/tumblr_lzx6xxNlXV1qi049to1_1280.jpg)

~~~
akkartik
Poignant. But I think it applies less here. For every guy who isn't out there
berating the noobs there's multiple noobs engaging with the community. I'm
happy to shut them up at that price.

Who was it that said, "I will tolerate anything but intolerance"?

I feel strongly about this because I was traumatized by interacting with
Ullrich Drepper at an impressionable age :)

------
b1daly
When I was high school I had the opportunity to work with an aspiring music
producer. It was great fun and a formative experience because he had a notably
kind and supportive demeanor, coupled with focus. He went on to become a
superstar producer and to this day when I run into him he has exactly the same
demeanor.

This leads me to think some aspects of personality and how we treat others are
innate. Jerks can be talented and successful too, and just remain Jerks. It
takes all kinds.

------
hnruss
From what I've seen, most of the contributors to large projects are one-time
contributors who just want to implement their one cool idea for the project.
Maintainers who want to encourage those sort of contributions need to do
everything they can to lower the barrier of entry to contributing, which
includes being positive towards new contributors.

------
joering2
My favorite comments I will never forget from my ex-CTO:

"you are wrong about this, because I say you are wrong." [turned out: he was
dead wrong!]

"stay home if you want to answer phonecall from your dad." [knowing he is in
the hospital]

"today you have been all day on the phone." [after talking with dad for 3 min
35 sec]

"stop pinging google to check if the net is working."

"ping doesn't tell you anything."

"I hate those Chrome tabs -- they are affecting my search results."

"I'm a CTO - I can be rude."

"Don't work here if you have family."

"If we succeed with this project [24-months period], we may get million
dollars bonus" [perfectly knowing its impossible and simply not true]

"I fixed Asia!" -"Cool!" -"What did you do?" -"At 3am? I was with my wife and
kids." -"Well, I hope that helped alot in your career." [next day, after he
IT-supported Asia at 3am]

"You see my desk? Apple, Apple, Apple..."

"You are on a McDonalds French Fry Guy schedule, ha!" [after working 14 hours
straight from 7am till 9pm]

"You work long hours and are not paid for those, because you are upper
managment and should be proud of it". [after working 14 hours straight]

"Don't ask for that, you are not upper managment!" [when something failed to
work and needed to figure the details to troubleshoot]

"You are upper managment, you should know this!" [when I didn't know something
IT-related]

"You won't get the bonus, you are not upper managment!" [bonus question around
Christmas time]

[email provider down; on the phone with support] "Why are you calling them?
chat-support is faster!"

[days later, the same issue; on the chat] "Stop wasting time on chat, just
grab a phone and call them!"

[after 12 hours straight work on 8hr schedule] "I completed the project, I am
going home" -"Fine with me, as long as you are Symfony Framework specialist"
[next day after staying extra 2 hours to understand basics of Symfony
Framework] -"Never mind, we won't use them anyway!"

Those were the perks.. there were some better here and there, but honestly I
started making notes way too late. But my tech-friends always loved to ask
whats new with my CTO. They used to call him "Chief Toilet Officer", because
frankly speaking he couldn't do shit right.

~~~
kyberias
Wow! This was really off-topic. Like miles off... miles...

~~~
slurgfest
However, it seems the jerk problem is not limited to open source.

------
jongold
Just taking a second to thank you for all your work on Marionette, and your
seemingly endless contributions to Backbone/Marionette questions on
StackOverflow Derick - I'm nowhere near the level to be contributing to
Marionette but your humbleness inspires me to use your code every day :)

------
fijal
This completely doesn't ring the bell for me, but maybe Python community that
I typically interact with is different. Maybe we're such jerks that we don't
even know how much of jerks we're.

------
kmfrk
I don't see this in GitHub projects (so far), but this is the usual experience
when asking for help on Stack Overflow or Freenode.

~~~
rquirk
Nor do I. I've had lots of positive results on github, as puller and sender.
The barrier to entry on github for sending a pull request is much higher than
asking a "send me teh codez" question on Stack Overflow though. It's
understandable that the more experienced contributers are burned out there.
Rather than replying nastily maybe they should just leave the Eternal
September that SO has become.

~~~
kmfrk
I think the CONTRIBUTING (sic) file in GitHub has also helped to put the onus
on the repo owner to explain what is kosher, and what isn't.

The idea of a canonical ruleset exists mainly so people don't have to make
vague references to "common sense" and such.

And I just don't see a lot of bad issues/pull requests out there, but the
system still needs a managerial overhaul that scales, though. Better to nip
the problem in the bud, before it downright breaks GitHub.

------
fellars
Having used Dericks (the OP) Marionette package and interacted a few times
with him, I can attest he practices what he preaches.

------
boboblong
What major open source project is the harshest on newbies? I want to try to
contribute to it.

------
TeeWEE
What is this, I don’t even…

