I mostly work alone on my own programming projects as a hobby, but often come up with projects that are far too big to work on myself, so a few months ago I started searching for open source projects on GitHub that matched my interests and skill level. After doodling around on a few projects but not doing very much, I ran across a project that I used to use as a kid that is now overhauling itself.

After reading the contributing guide and looking around, I started to fix bugs that I found and a few other reported issues. I did this for about a week and every pull request I made to include the fixes (with rather detailed descriptions) was closed. I was told to make an issue for all of them, so I made issues for all of them, fixed the bug, referenced the issue, and submitted the PRs - only to be told that they really didn't want me to work on things other than issues with a certain label, "help wanted", which I am not good at fixing.

How can I communicate that what they have offered for me to do is not something that I find enjoyable or am capable of doing? I really like this program and would like to help out but I feel like I am not appreciated and should leave. Is this a situation where I should cut my losses and find another project?

Edit: This is my first non-personal project on GitHub so I might be going about this the wrong way. Are there any unwritten or written guidelines to follow when trying to join a project?

  • 4
    Someone is most likely top dog on the project, and feels like you're encroaching on their turf. Happens all the time even in work settings, lets alone on public projects. Time to find a new project to contribute to. Think of anything you've contributed as a learning experience (even if it was rejected), and move on.
    – AndreiROM
    Dec 1, 2017 at 21:21
  • The university who runs it (most of the people who work on it are students there) is a place I potentially want to go to college at and so far every interaction I have had with their students in any circumstance has been similar. Does not reflect well on their institution or make me desire to go there.
    – dalearn
    Dec 1, 2017 at 21:33
  • Did they give an explanation for why they wanted you to work on different issues?
    – Em C
    Dec 1, 2017 at 22:14
  • @EmC Nope, I just asked if they minded if I fixed some bugs (and specified exactly what I was going to do in an issue) since I was tired of rejected PRs and they told me to only work on issues that had a help wanted label
    – dalearn
    Dec 1, 2017 at 22:19
  • Not saying it is the case but is it possible your programming style doesn't fit in with the others? I know when I've worked with others sometimes it is difficult to follow when one member of the team uses different conventions for naming, commenting (or lack of) and indentation. Dec 2, 2017 at 8:47

3 Answers 3


You mention in a comment that they only wanted help on issues labeled "help wanted".

So... they didn't want you helping with things they didn't want help on. Don't take it personally - there's many reasons why they might not want a random person messing with other issues, particularly during an overhaul as you describe. For example, they could be in the middle of a major redesign which affects lots of files, and they don't want someone else interfering and making conflicting changes. They may have a "vision" and don't want to take time out from implementing it to bring a newcomer up to speed. Or they simply don't have the manpower to vet substantive changes from somebody that is not yet a trusted contributor.

How can I communicate that what they have offered for me to do is not something that I find enjoyable or am capable of doing? I really like this program and would like to help out but I feel like I am not appreciated and should leave. Is this a situation where I should cut my losses and find another project?

Unfortunately it's their project, their rules. They've told you what contributions they will accept - demanding to be allowed to join their project won't win them over. Remember to them, you are just a random internet stranger right now, so it is on you to convince them you can work well with the team.

So, you have a few choices:

  • Help out in the way that they prefer, which could lead to them trusting you more and eventually allowing you to work on more interesting features.

  • Fork the project, work on what you like. Maybe they will incorporate it back later, maybe (probably) not. But you will get experience on the project for your own personal benefit.

  • Find another project which is welcoming contributions of the type you prefer.

  • This answer is dead on. And, your choices are excellent and the first two aren't mutually exclusive. OP can fork and add his improvements there while also from time to time, as he gains the capability to work on the "help wanted" issues, he can contribute those directly to the original project.
    – davidbak
    Dec 2, 2017 at 2:38

From the perspective of someone who closed PRs of strangers to my open source projects for situations that sounds like yours:

When new people join by submitting a PR, experience says the PRs are substandard. So, when someone who did not interact in the forum, the chat, the issues, etc. just sends a fix, my gut reaction will be bad and if I can see an obvious reason to reject, I will. Nothing personal, it's just experience.

That said: How could one engage with a project so that they start accepting your PRs?

One option would be to send super awesome PRs, but that requires a high level of skill and a lot of time. I cannot recommend that path as the time you spend is in bad relation to the effect you have.

The other option and my clear advice is: Engage in the community first, join chat and talk about how you like the software and what you did with it. Show that you understand what the project does, what the aims are, etc. If at all possible, try to meet the people in person. You mentioned they are from a university, so they most likely have some scheduled time where they meet and talk about the project. Ask if you can join them (if they are close enough). Or if they go to conferences / conventions or similar try to join them there.

More often than not, the above will not be possible, and I recommend to look for other projects where you can do that.

Projects that are visually tied to a university/company tend to be less inclusive of outside people, as the usual way of communicating is an informal hallway chat (that you can not be in) and so the cost of bringing you on board includes that they need to change their way of internal communication, and so you would have to be a very valuable contributor to justify that effort.

Projects that are visually spread out over a large area are more accustomed to having new people join that they have never met in person and usually are quicker with the on boarding of new hands. But here as well: Come to chat first, it is very possible that the kind of help you want to suggest is not currently welcome. Anecdote: In one of my projects we had several graphic designers join to gift the project a new and better logo. But we were very happy with the logo the way it was. Needless to say, none of their designs made it.


Open source GitHubs are often catty nightmares that don't actually care about adding other people's contributions to their code base. "Submit a patch" is basically used to tell people to eff off, and, if you do actually submit that patch, they find some wacky reason to reject it. This is an incredibly common experience with open source projects.

There's effectively an unlimited number of entities out there who would love free labor from you though, so find something else that is at least somewhat worth your time, and don't take the experience personally.

Any ideas on what to do as a teenager wanting to work alongside professionals for the experience? – dalearn 50 mins ago

Sadly this is what so-called professional adults are like in situations where your paycheck (and thus ability to eat) is on the line too, so I regret to inform you that you're already learning what it's like. That said, my advice to young people is to not get sucked into the ideals that the open source community espouses--much of it is just an attempt to get free labor, and don't do anything you don't get value out of. When it works, open source/free software is a mutual exchange so that people all over don't have to reinvent the wheel and give back their own proverbial wheel designs, when it doesn't, it's a scam to not have to hire or pay employees.

Absolutely volunteer to open source projects in order to get skills and build a portfolio, but don't act like an employee if they're not paying you, and don't waste your time with people who don't want your help even if you really like the project. I couldn't give you specific ideas of projects to look at without knowing what you're interested in, but I guarantee you there's a project that both wants your presence and that you will enjoy working on. Keep looking, there's millions of 'em!

  • Any ideas on what to do as a teenager wanting to work alongside professionals for the experience?
    – dalearn
    Dec 1, 2017 at 21:36
  • updated answer, enjoy!
    – Anna
    Dec 1, 2017 at 22:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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