Open afeld opened 9 years ago
In my experience, people new to open source are interested in getting involved generally, rather than wanting to contribute to any particular project.
I think you're right about this, and it's a very interesting observation. I'm not really open to mentoring someone in the abstract, because I have too many things on my plate, but if someone were to commit to contribute to my project and the exchange was that I would mentor them in that process, then I would be absolutely delighted to make that happen.
On a number of occasions I've offered something similar, and have spent a bunch of time trying to figure out how to help someone get started with my project, only to have them never actually contribute anything. I'm pretty sure I'm doing something wrong, and I would love to figure out how to change that, because it's just burning me out, and I don't think it's helping anyone (much less my project).
I respond pretty quickly to issues/PRs in my projects, and people get surprised that there's a person (a person!) willing to help them. Some newcomers send a PR out of the blue, don't expect much, and find they could send two more that same day. They get excited and actually do it! This makes me think that having a personal approach in the README or CONTRIBUTING documents helps people taking that hand and moving forward. Adding a note: "if you are new and would like to work with me, here's my contact details" can be a useful onboarding step.
I observed the opposite on the other side of the coin. Two "real world" mentees who expressed interest in contributing to OSS projects couldn't find a good project to work on, nor follow along with one I would point and help with. I assume this is related with https://github.com/osstarter/discussion/issues/1#issuecomment-69945377: it's daunting to study a monolith so you can fix some parts of it, and you don't have enough experience to read the relevant parts only. I believe these mentees where learning ten things at a time and didn't feel committed enough to any library to understand how it works and how to improve it. This leaves me with two thoughts:
Suggestion on setting up a failing test in a repo, as a starting point for new contributors: https://medium.com/@kentcdodds/first-timers-only-78281ea47455
As has been pointed out in https://github.com/osstarter/discussion/issues/1#issuecomment-69940426 and other places, simply giving a giant list of open issues for people new to open source doesn't seem to be super successful. In my experience, people new to open source are interested in getting involved generally, rather than wanting to contribute to any particular project. I just put out a tweet:
https://twitter.com/aidanfeldman/status/575445289991041024
Instead of having people find random projects via issues, what if we highlight volunteer mentors/coaches who can help guide people to projects and tasks that might be good fits for them? From there, the mentors could help answer any questions the participant is shy to ask publicly, etc., and generally help them along in the process of contributing. It's a lot smaller of a hurdle to reach out to a person (especially in their developer community) and say "how do I get started?" than to ask a complete stranger through an issue tracker, when they may not even be comfortable with version control yet.
This model could be asynchronous, and/or in workshop-type formats. @jlord I know you've thought a lot about the latter...any insight?