31

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?

4
  • 45
    on github just let him make a pull request and reject if you don't like it Nov 29, 2012 at 19:28
  • 11
    Appropriate Account name?
    – Aren
    Nov 30, 2012 at 1:22
  • 5
    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, 2012 at 2:03
  • 2
    @Aren do I get extra +=1 for that?
    – Solo
    Nov 30, 2012 at 4:57

3 Answers 3

42

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.

2
  • +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. Nov 30, 2012 at 21:16
  • Excuse my ignorance, but is there a difference between a Patch and a Pull Request? Apr 18, 2016 at 17:33
55

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.

5
  • 34
    Isn't that how GitHub is meant to work anyway?
    – alroc
    Nov 29, 2012 at 20:35
  • 15
    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 :-) Nov 29, 2012 at 23:49
  • 1
    and something big and impressive will break stuff if not handled carefully Nov 30, 2012 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, 2012 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, 2012 at 5:45
16

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.

This site is temporarily in read-only mode and not accepting new answers.

Not the answer you're looking for? Browse other questions tagged .