You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/contributors/getting-started.md
+25-18Lines changed: 25 additions & 18 deletions
Original file line number
Diff line number
Diff line change
@@ -21,43 +21,50 @@ youtube_id:
21
21
22
22
## Choosing a project to work on
23
23
24
-
How should you choose which project to work on?
25
-
There are many projects in the ecosystem to choose from so it’s important to find one related to something you’re interested in or is a project you already use.
26
-
For example, if you’re interested in working with images, it might be worth looking into implementing algorithms in scikit-image.
24
+
How do you choose which project to contribute to?
25
+
There's no single best way to choose a project, but here are some questions to think about when choosing:
27
26
28
-
Typically, it is easier to contribute to smaller projects---but you also want to choose a project that’s active enough so that the developers can review your code and provide mentorship.
29
-
There may also be more issues and ideas to work on.
27
+
-_Is there a project related to your background or your research?_ E.g., astronomers might prefer to contribute to [astropy]() or [sunpy]().
28
+
-_Is there a package you're already using?_ Even well-established general-purpose packages like [numpy](), [scipy](), or [matplotlib]() are still growing and changing, and need contributors.
29
+
-_Is the project actively developed?_ Take a look at the project's repository to see how recent the last update was, and how many people seem to be involved.
30
+
-_Is the community healthy?_ Project maintainers will be reviewing your work and mentoring you through the contribution process, so look to see if the interactions on the project's pull request pages are polite and welcoming.
30
31
31
-
Before diving into a project, take a look at their open issues and pull requests, see how maintainers interact with the community, and decide if it would be good fit for you.
32
+
One last tip is to look at the project's open issues to see if there are any tagged as "easy" or "good first issue", and if any of those look appealing to you.
32
33
33
34
For a more detailed discussion, also take a look at our `Choosing a project` video, linked below.
34
35
35
-
## Tools to learn
36
+
## Tools of the trade
36
37
37
38
As with any trade, there are certain fundamental tools you should learn.
38
39
Since the ecosystem is built in Python, you'll need to know how to program in that language.
39
40
Other tools we use daily include:
40
41
41
-
- git and Github
42
+
- git and GitHub
42
43
- the command-line terminal, and
43
-
- a good editor.
44
+
- a plain-text editor or [integrated development environment]() ("IDE").
44
45
45
-
Take a look below for links on how to learn these tools.
46
+
In this video series, the basics of using these tools are covered along the way.
47
+
To learn more about them, take at the links below:
-https://realpython.com/python-ides-code-editors-guide/<!-- this is out of date; e.g. it says VSCode is mac/windows only -->
51
58
52
59
## First contribution
53
60
54
61
Now that you’ve chosen a project to contribute to, it’s time to get set up.
55
-
Most projects have a file called CONTRIBUTING in the root of the repository that will tell you how to set up your development environment, propose changes, etc.
56
-
Developer documentationwill also explain testing and review procedures, and whatever else you need to know.
62
+
Many projects have a file called `CONTRIBUTING` in the root of the repository that will tell you how to set up your development environment, propose changes, etc.
63
+
Most projects also have a page on their website called "Developer documentation" or "Contributor guide" that will have similar information, and usually also explain testing and review procedures, and whatever else you need to know.
57
64
58
65
When first contributing to a project, it’s best to start with small, self-contained issues.
59
-
Often, maintainers will label issues with the "good first issue" label, so take a look at those first.
60
66
Examples of a good first issue include fixing a small bug, adding tests, fixing documentation typos, or writing up simple documentation.
67
+
If you haven't already found an issue you want to work on, now is the time (remember to look for the "good first issue" label if the project has it).
61
68
62
69
It is not uncommon to get stuck while making your first contribution.
63
70
Don't panic!
@@ -68,7 +75,7 @@ For more details, also check out our `First contribution` video.
68
75
69
76
## What's next
70
77
71
-
Once you’re comfortable making small changes to the project, you can start taking on bigger features.
78
+
Once you’re comfortable making small changes to the project, you can start taking on bigger contributions.
72
79
There are many different ways to help: you may, e.g., implement new features, write documentation, refactor and clean up code, improve testing, work on build infrastructure, and so forth.
73
80
74
81
No matter what you contribute, or whether you contribution is big or small, it is much appreciated.
0 commit comments