
Don't Alienate Open Source Contributors - tymekpavel
https://www.linkedin.com/pulse/dont-alienate-open-source-contributors-tim-jurka
======
moonshinefe
Good article. I work on an open source project and we try to be as friendly as
possible. As someone who accepts / denies pull requests, I try to point out
any code issues to the author in a professional manner and to work with them
to get their code into our repository if it is valuable (or if it isn't,
explain why without being rude). It's worth taking the time to build that
extra good will, in my experience, as they'll often come back with further
free work. A little patience saves me time in the long run with free code
contributions.

I had an opposite experience trying to report an issue to a certain Apache
project I won't mention. Gave the exact version of their program in use, all
platform information, a sample file with the issue and the exact command to
run. Everything to reproduce.

I received an incredibly derisive response about "why nobody thinks to include
a stack trace because we're not mind readers, duh" and the issue was closed
promptly. Another dev re-opened the ticket and actually ran the command with
the file to reproduce, but it already soured my experience. Needless to say
neither I or my colleagues will ever consider contributing to that project
again.

------
joshdotsmith
This is an excellent article. Also brings to mind some of the writing that
Nadia Eghbal has been doing recently about open source
([https://medium.com/@nayafia](https://medium.com/@nayafia)).

Not being an asshole is obviously the right basic mindset. But if you're a
maintainer of open source, there are a number of other considerations to keep
in mind. You really want your project to be as accessible as possible.

People talk sometimes disparagingly about "drive-by pull requests", but these
are good things! Your core contributors can only do so much, and you're likely
to get only so many people capable of making core-level contributions. You
want to take advantage of the long tail as much as possible.

This is especially true when you consider the pool of potential contributors
is often much wider than seasoned open source contributors. You'll get people
who have never squashed commits before, or never even submitted a pull
request. A welcoming mindset is the first step. But you need to be thinking
hard about how difficult it is for a new contributor to onboard onto your
project.

I know it's a lot of work for maintainers who are already stretched thin. If
this is a topic that interests you and you want to chat, feel free to email
me. I'd love to help figure out how to make this easier for more maintainers.

------
chris_wot
I agree. The LibreOffice team takes great pains to be polite to contributors,
even though every year GSoC rolls around we get a multitude of students who
honestly don't know the first thing about development.

In fact, we try to encourage them as best we can and I know that I personally
try to be polite and positive about any attempted contributions even if they
can't be accepted.

I figure just working out how to get, build and submit patches for LibreOffice
takes quite a big of time (build time alone is massive, though getting better)
and let's be honest, if you've never used git or source control it can be
pretty intimidating to even clone a repository!

So I agree. Someone has taken the time to even attempt to make your software
better, and even if that might be misguided it's good to remember that.

~~~
inaudible
I think that's the right attitude to take. Getting intimate with a project
enough to build it from scratch demonstrates a great deal of commitment.

Working with a Linux distribution probably eases the burden, but even with all
the dev tools and build requirements at the ready a clean build might not
arise until the environment is a perfect replica. These are things that
regular contributors probably take for granted, they've set this all up
previously and the order of magnitude is greatly reduced.

I've always enjoyed the challenge and healthy debate around open source tools,
it's been an important part of my life in computing, and ethics are at the
heart of it. I also like the restrictions that the tools impose, it's a
constraint on creativity, but learning to be intuitive with constrains is also
a creative outcome. In turn I've always tried to commit quality bug reports,
and patches where I feel I understand the environment enough to fix my own
problem. The time that goes into these things is prohibitive and takes a level
of patience and good will that most people simply wouldn't bother with.

A projects culture really matters, and I think that open-source projects often
are tainted by vicious personalities. But it's far more difficult to hire and
fire in this world, a dominant contributor is still important even when their
personality sucks, and the amount of work hours devoted to removing them by a
community is often not worth the effort of just accepting an ego and warning
contributors of the problem. This just continues to poison the pot. It only
gets worse when the contributor becomes a lead.

There are projects that you might personally find valuable and that's a good
reason to get involved, but everyone has a life outside of open-source. If
you're lucky the project is what makes you money and it's in your best
interest to quit complaining and do something. If you're contributing in your
free time then your relationship will probably be fleeting at best. It's hard
not to have a life.

I'd love to work in a culture of expected mutual respect, but it's not a
perfect world.. In the meantime let's support peoples initiative for what it's
actually worth, be positive and hopefully grow community by encouraging more
people to get that little bit more involved. They've probably already taken
extraordinary steps in that direction.

------
danso
Between this and the seemingly over-aggressive response to the "iGiveHead"
patch, I find myself struggling to reconcile my very positive experiences with
R users on Twitter and StackOverflow...and the reportedly closed-off attitude
of core members.

I'm not one who thinks that Linus Torvalds is completely out of hand -- in
fact, whenever I read the messages and the context for whatever blowup he's
allegedly stoking, I find him to be quite reasonable. And maybe that would be
the case here after knowing both sides of the story...but the wording of the
message received by the author really, _really_ rubbed me the wrong way:

> _" You were asked to correct this in 2013, failed to even reply, and it has
> been archived. Please explain your inaction and lack of the most basic
> manners."_

Sure, I don't know how CRAN works, and maybe the author is an unreliable
narrator who is leaving out the part where his "inaction" caused CRAN to
experience a week-long downtime...but barring that kind of disaster, the
message the author received struck me to be not just callously judgmental, but
just... _sad_. Has this person never been on the receiving end of a missed
email? Does this person not realize that _life happens_ , even to people who
contribute to CRAN? And that the author may have experienced some serious
downtime in his life, such as a death of a loved one, or unemployment, and
just simply missed the email? Why the _fuck_ would you harass someone who is
actively seeking out to update his contribution in response to users' pleas?
How jaded must you be to accuse someone through email of lacking "the most
basic manners" when this person is offering help, rather than thinking that
just _maybe_ you should give him the benefit of the doubt?

Maybe the author _was_ an inattentive jerk. But there's no reason to assume
that right off the bat. Yeah, I know this is a relatively small scuffle in the
scheme of things...but that's what really bothers me. One of R's disadvantages
is that it doesn't have enough contributing developers...but small communities
have their own advantages, and I feel that's why my interactions with R-users
have always made me feel good about the language. But the way this CRAN
maintainer allegedly acted...it just makes me sad...if someone in a community
this small can be so cold to another member, then it's a downer to think how
things in much bigger communities that lack the personal connectedness.

But good on the author for taking it in stride...he probably doesn't need R as
much as R needs more people like him.

------
pluma
There's a lot of politics currently going on in debates about open source
inclusivity but this article is a great example for what it all really needs
to boil down to: try to be respectful and assume good faith.

As a maintainer it's not your job to provide free therapy sessions to other
contributors but despite the inhumanity of the medium it's still important to
remember that on the other end sits a human like you with their own problems,
worries and distractions.

There's nothing wrong with archiving the package for inactivity. But the
unnecessarily hostile and judgemental tone of the message is inexcusable.
There was also nothing wrong with turning down the "iGiveHead" patch someone
else mentioned here -- it was simply a matter of how it was rejected.

Open source projects don't have to accept every contribution and they don't
have to be endlessly forgiving when contributors don't fulfil their self-
imposed duties. But showing at least a minimal level of respect should be
basic human decency.

------
yitchelle
"The No Asshole Rule" is a worthwhile read in this context.

[https://en.wikipedia.org/wiki/The_No_Asshole_Rule](https://en.wikipedia.org/wiki/The_No_Asshole_Rule)

