Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

If a programmer contacts you and asks to contribute to your project, how do you handle it?

  • You don't know if this guy is any good. Perhaps he'll be more trouble than he's worth.
  • He might be trying to attach his name to a successful project just for the kudos.
  • He might be trying to take the project in a direction you don't really want, adding features you think aren't worth the extra complexity.
  • Or, he might be a very useful contributor. You just don't know.

How do you handle such requests from people you don't know (On GitHub, specifically, if that makes any difference)? What's the etiquette here?

share|improve this question
on github just let him make a pull request and reject if you don't like it – ratchet freak Nov 29 '12 at 19:28
Appropriate Account name? – Aren Nov 30 '12 at 1:22
I think what you might be referring to is an active “contributor” status. In short: Don’t make someone a contributor to something they didn’t contribute to yet. Open Source projects have the benefit that anyone can just work on it, so let them do that, and then decide. – poke Nov 30 '12 at 2:03
@Aren do I get extra +=1 for that? – Solo Nov 30 '12 at 4:57
up vote 41 down vote accepted

Membership in an OSS project is not the same as a funded, corporate team where people are interviewed and chosen. The source is already out there (it isn't open source otherwise). Tell them to send in some patches. If they are good patches (and you must review them first), commit them. Once the prospect builds up trust and a a history of making valuable contributions, give him write access.

OSS teams grow organically. Make yourself available to ask for questions and let them build up some street cred over time.

share|improve this answer
+1 this. Patches are the best way to start because they create the lowest barrier of entry to start. If the person starts providing more patches (or becomes a regular contributor) then it's quicker/easier to switch over to pull requests. – Evan Plaice Nov 30 '12 at 21:16
Excuse my ignorance, but is there a difference between a Patch and a Pull Request? – heltonbiker Apr 18 at 17:33

Why not let this eager person send you a pull request? You'll have the opportunity to review and critique that person's code. This seems like the simplest solution.

share|improve this answer
Isn't that how GitHub is meant to work anyway? – alroc Nov 29 '12 at 20:35
The only thing I would add is to ask this person for the first pull request to be something small, to avoid them spending too much effort on it before you can see their code. When faced with a "challenge" like this, they may feel obliged to submit something big and impressive :-) – Krzysztof Kozielczyk Nov 29 '12 at 23:49
and something big and impressive will break stuff if not handled carefully – ratchet freak Nov 30 '12 at 0:35
So, if the contribution is useful, but is lacking in quality, and you are too busy to hand-hold him, is it OK to just reject the contribution? – Solo Nov 30 '12 at 4:53
@Solo: Certainly. It's also OK to expect/ask the contributor to maintain and fix bugs in their feature, at least until the rest of the team learns that code, and especially for larger commits. – Hugo Nov 30 '12 at 5:45

Accept and review changes from him on a provisional basis. Give him write access to the source code repository when he's proven his worth.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.