|
1 | 1 | # Code + Learn
|
2 | 2 |
|
3 |
| -A series of workshop sprints for Node.js. |
| 3 | +Code + Learn is an in-person (and free) event series where developers receive |
| 4 | +mentoring from Node.js Core contributors to learn the step-by-step process of |
| 5 | +contributing to Node.js Core. |
4 | 6 |
|
5 | 7 | ## Purpose
|
6 | 8 |
|
7 | 9 | Code & Learn events allow you to get started (or go further) with Node.js core
|
8 | 10 | contributions. Experienced contributors help guide you through your first (or
|
9 | 11 | second or third or fourth) commit to Node.js core. They also are available to
|
10 | 12 | provide impromptu guided tours through specific areas of Node.js core source
|
11 |
| -code. |
| 13 | +code. |
12 | 14 |
|
13 |
| -## Implementation |
| 15 | +## Getting started |
14 | 16 |
|
15 |
| -*[This is still actively under discussion.](https://github.com/nodejs/code-and-learn/issues/1)* |
| 17 | +- If you don't already have one, [create a GitHub account](https://github.com/join). |
| 18 | +- Open the [Node.js core repository web page](https://github.com/nodejs/node). |
| 19 | +- Use the "Fork" button to fork the repository: |
| 20 | +- On the page _for your own fork_, use the "Clone or download" button and copy the URL for cloning to your clipboard: |
| 21 | +- On the command line, in your home directory or a directory you have for projects, run: |
16 | 22 |
|
17 |
| -## Prior Art and Integration |
| 23 | +```console |
| 24 | +git clone <paste that URL here!> |
| 25 | +``` |
18 | 26 |
|
19 |
| -Obviously, NodeSchool is a widely distributed community that is teaching new Node developers. While there's a lot that we can learn from NodeSchool and we will be actively engaged with that community in order to expand the geographic presence of Code + Learn, the goals are slightly different. NodeSchool, by design, doesn't make much of an effort to onboard contributors into the Node.js core project. NodeSchool also relies on building material for use by groups which by definition can't address getting contributors involved in areas of the project which are not very well or widely understood. |
| 27 | +- When that is done: |
20 | 28 |
|
| 29 | +```console |
| 30 | +cd node |
| 31 | +``` |
| 32 | + |
| 33 | +- Then: |
| 34 | + |
| 35 | +```console |
| 36 | +git remote add upstream https://github.com/nodejs/node.git |
| 37 | +``` |
| 38 | + |
| 39 | +- Follow [the instructions to build Node.js](https://github.com/nodejs/node/blob/master/BUILDING.md). You do not need to install the version of Node.js built with these instructions. Follow the instructions to build and test only. (You do not need to run the npm tests.) |
| 40 | +- If you have not already done so, set git to use the name and email address you would like your commits to be credited to. |
| 41 | + |
| 42 | +```console |
| 43 | +git config --global user.name "J. Q. User" |
| 44 | +git config --global user.email "[email protected]" |
| 45 | +``` |
| 46 | + |
| 47 | +- Look at issues in the Core repository labeled ['good first contribution'](https://github.com/nodejs/node/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+contribution%22) to choose what'd you liked to jump into or visit [#Node.js in IRC](http://webchat.freenode.net/?channels=node.js) to get help with any of the above steps. |
| 48 | +- After you have your first pull request open, you can look at the [Next Steps](http://nodetodo.org/next-steps/) page for suggestions on ways to find additional issues to work on. |
0 commit comments