nodejs / CTC

Node.js Core Technical Committee & Collaborators
80 stars 27 forks source link

Onboarding first time contributors #147

Closed benjamingr closed 7 years ago

benjamingr commented 7 years ago

Hi,

I've onboarded several first time contributors for the second time yesterday resulting in a flurry of simple pull requests: https://github.com/nodejs/node/pull/13845 https://github.com/nodejs/node/pull/13846 https://github.com/nodejs/node/pull/13848 https://github.com/nodejs/node/pull/13849 https://github.com/nodejs/node/pull/13851 https://github.com/nodejs/node/pull/13852 https://github.com/nodejs/node/pull/13853 https://github.com/nodejs/node/pull/13855 https://github.com/nodejs/node/pull/13844

I'd first like to thank the project for making doing this relatively easy. After relatively simple instructions about 80% of the people were able to create a first pull request relatively on their own. A few others have taken deeper looks at Node issues but did not create a pull request - which was also fine. The project has overall been clear and accessible to first time contributors in both cases.

Now, I have some questions if that's ok:

Thanks, and sorry if these questions are obvious - I couldn't find answers in the docs but maybe I'm not looking in the right place.

benjamingr commented 7 years ago

The process on my end was:

refack commented 7 years ago

@benjamingr personally for me it was nice to see new faces (OK, avatars) and I from the interaction I had with the people I felt enthusiasm. I'm big 👍 for this. For very high level guide on how to think about a PR there's https://github.com/nodejs/node/pull/12791 (specifically this guide) that we haven't found a place for but the text has been well edited, and relatively accepted (might be a bit opinionated to be landed in the repo, but definitely blog worthy).

To the others, evangelizing OSS in Israel is a laudable goal. A certain big software vendor has a very strong hold on the public education system (and the army, which is de-facto the place people do an internship). As a consequence IMHO there is less OSS then should be.

refack commented 7 years ago

but some people with Windows had a hard time. In particular, BUILDING.md on Windows does not elaborate on adding Python to the path file. After some help all were done.

AFAIK the python installer should handle that 🤔

benjamingr commented 7 years ago

Pinging @nodejs/community-committee as I just learned about it!


@refack

AFAIK the python installer should handle that 🤔

"Add Python to Path" is an option in the Python installer, I'm not sure most people have it selected. In any case, I wouldn't want that to be a barrier for new contributions.

vsemozhetbyt commented 7 years ago

I can also recall a small init guide from NodeTodo.

refack commented 7 years ago

"Add Python to Path" is an option in the Python installer, I'm not sure most people have it selected. In any case, I wouldn't want that to be a barrier for new contributions.

https://github.com/nodejs/node/pull/13881 https://github.com/nodejs/node/issues/13882

Trott commented 7 years ago

Is there a standard way for onboarding first time [first-time contributors]?

I don't think so. (Feel free to document something in a markdown file and open a pull request to add it to our guides or something like that.)

Is the churn of 9 pull requests from 9 new first time collaborators fine?

We've had Code + Learn events where many times that number of PRs are opened in a few hours from new contributors. 9 pull requests is not a problem.

Is there any guide about how to make a second contribution [for a] first time contributor?

I wrote this: http://nodetodo.org/next-steps/ (Feel free to fork the NodeTodo site on GitHub if you have things to add to it! Link is in the footer of every NodeTodo web page.)

On the whole Python/path/Windows thing: I would definitely recommend always making sure that you have at least one person on hand as a mentor who can troubleshoot Windows. (We definitely could use more representation on the project from folks for whom Windows is their primary development environment!)

gibfahn commented 7 years ago

Is there a standard way for onboarding first time collaborators?

Can we please call them contributors? I know it's an unintuitive distinction, but it's all we currently have to differentiate between contributors and collaborators.

benjamingr commented 7 years ago

Can we please call them contributors? I know it's an unintuitive distinction, but it's all we currently have to differentiate between contributors and collaborators.

Apologies, you are right and I should have known better.

gr2m commented 7 years ago

hey @benjamingr this looks great 👍 I’m a new member at @nodejs/community-committee and not a Node.js contributor myself, but am very interested in making Open Source projects more welcoming to new contributors in general. We shared some of our best practises at Hoodie at http://hood.ie/blog/welcoming-communities. I also gave a talk on it

Here a few thoughts

Is there any guide about how to make a second contribution fora first time contributor? Are there any online guides I can refer people to?

This is a very good question, I haven’t seen any conventions around that yet. But http://nodetodo.org/next-steps/ looks like a great starting point. It could be part of the process to link to it after a starter issue was completed

benjamingr commented 7 years ago

Thanks, looks like CommComm is the right place to discuss this - I'll open an issue there after the election is over.