|
1 |
| -# Contributing - HPC Carpentry |
| 1 | +# Contributing |
2 | 2 |
|
3 |
| -**This lesson is currently under active development by the HPC Carpentry team.** |
| 3 | +[Software Carpentry][swc-site] and [Data Carpentry][dc-site] are open source projects, and we |
| 4 | +welcome contributions of all kinds: new lessons, fixes to existing material, bug reports, and |
| 5 | +reviews of proposed changes are all welcome. |
4 | 6 |
|
5 |
| -Although this is intended to be an open lesson that follows the general |
6 |
| -Software and Data Carpentry contribution guidelines, |
7 |
| -we are currently focusing on delivering our initial lesson pass. |
8 |
| - |
9 |
| -Although we appreciate external input, |
10 |
| -contributions and input from the wider community will be reviewed only once initial lesson generation is complete. |
11 |
| -(We want this lesson as much as you do!) |
| 7 | +## Contributor Agreement |
12 | 8 |
|
13 |
| -## General contribution guidelines |
| 9 | +By contributing, you agree that we may redistribute your work under [our license](LICENSE.md). In |
| 10 | +exchange, we will address your issues and/or assess your change proposal as promptly as we can, and |
| 11 | +help you become a member of our community. Everyone involved in [Software Carpentry][swc-site] and |
| 12 | +[Data Carpentry][dc-site] agrees to abide by our [code of conduct](CODE_OF_CONDUCT.md). |
14 | 13 |
|
15 |
| -[Software Carpentry][swc-site] and [Data Carpentry][dc-site] are open source projects, |
16 |
| -and we welcome contributions of all kinds: |
17 |
| -new lessons, |
18 |
| -fixes to existing material, |
19 |
| -bug reports, |
20 |
| -and reviews of proposed changes are all welcome. |
| 14 | +## How to Contribute |
21 | 15 |
|
22 |
| -## Contributor Agreement |
| 16 | +The easiest way to get started is to file an issue to tell us about a spelling mistake, some awkward |
| 17 | +wording, or a factual error. This is a good way to introduce yourself and to meet some of our |
| 18 | +community members. |
23 | 19 |
|
24 |
| -By contributing, |
25 |
| -you agree that we may redistribute your work under [our license](LICENSE.md). |
26 |
| -In exchange, |
27 |
| -we will address your issues and/or assess your change proposal as promptly as we can, |
28 |
| -and help you become a member of our community. |
29 |
| -Everyone involved in [Software Carpentry][swc-site] and [Data Carpentry][dc-site] |
30 |
| -agrees to abide by our [code of conduct](CONDUCT.md). |
| 20 | +1. If you do not have a [GitHub][github] account, you can [send us comments by email][email]. |
| 21 | + However, we will be able to respond more quickly if you use one of the other methods described |
| 22 | + below. |
31 | 23 |
|
32 |
| -## How to Contribute |
| 24 | +2. If you have a [GitHub][github] account, or are willing to [create one][github-join], but do not |
| 25 | + know how to use Git, you can report problems or suggest improvements by |
| 26 | + [creating an issue][issues]. This allows us to assign the item to someone and to respond to it |
| 27 | + in a threaded discussion. |
33 | 28 |
|
34 |
| -The easiest way to get started is to file an issue |
35 |
| -to tell us about a spelling mistake, |
36 |
| -some awkward wording, |
37 |
| -or a factual error. |
38 |
| -This is a good way to introduce yourself |
39 |
| -and to meet some of our community members. |
40 |
| - |
41 |
| -1. If you do not have a [GitHub][github] account, |
42 |
| - you can [send us comments by email][contact]. |
43 |
| - However, |
44 |
| - we will be able to respond more quickly if you use one of the other methods described below. |
45 |
| - |
46 |
| -2. If you have a [GitHub][github] account, |
47 |
| - or are willing to [create one][github-join], |
48 |
| - but do not know how to use Git, |
49 |
| - you can report problems or suggest improvements by [creating an issue][issues]. |
50 |
| - This allows us to assign the item to someone |
51 |
| - and to respond to it in a threaded discussion. |
52 |
| - |
53 |
| -3. If you are comfortable with Git, |
54 |
| - and would like to add or change material, |
55 |
| - you can submit a pull request (PR). |
56 |
| - Instructions for doing this are [included below](#using-github). |
| 29 | +3. If you are comfortable with Git, and would like to add or change material, you can submit a pull |
| 30 | + request (PR). Instructions for doing this are [included below](#using-github). |
57 | 31 |
|
58 | 32 | ## Where to Contribute
|
59 | 33 |
|
60 |
| -1. If you wish to change this lesson, |
61 |
| - please work in <https://github.com/swcarpentry/FIXME>, |
62 |
| - which can be viewed at <https://swcarpentry.github.io/FIXME>. |
| 34 | +1. If you wish to change this lesson, please work in <https://github.com/swcarpentry/FIXME>, which |
| 35 | + can be viewed at <https://swcarpentry.github.io/FIXME>. |
63 | 36 |
|
64 |
| -2. If you wish to change the example lesson, |
65 |
| - please work in <https://github.com/swcarpentry/lesson-example>, |
66 |
| - which documents the format of our lessons |
67 |
| - and can be viewed at <https://swcarpentry.github.io/lesson-example>. |
| 37 | +2. If you wish to change the example lesson, please work in |
| 38 | + <https://github.com/carpentries/lesson-example>, which documents the format of our lessons and |
| 39 | + can be viewed at <https://carpentries.github.io/lesson-example>. |
68 | 40 |
|
69 |
| -3. If you wish to change the template used for workshop websites, |
70 |
| - please work in <https://github.com/swcarpentry/workshop-template>. |
71 |
| - The home page of that repository explains how to set up workshop websites, |
72 |
| - while the extra pages in <https://swcarpentry.github.io/workshop-template> |
73 |
| - provide more background on our design choices. |
| 41 | +3. If you wish to change the template used for workshop websites, please work in |
| 42 | + <https://github.com/carpentries/workshop-template>. The home page of that repository explains |
| 43 | + how to set up workshop websites, while the extra pages in |
| 44 | + <https://carpentries.github.io/workshop-template> provide more background on our design choices. |
74 | 45 |
|
75 |
| -4. If you wish to change CSS style files, tools, |
76 |
| - or HTML boilerplate for lessons or workshops stored in `_includes` or `_layouts`, |
77 |
| - please work in <https://github.com/swcarpentry/styles>. |
| 46 | +4. If you wish to change CSS style files, tools, or HTML boilerplate for lessons or workshops |
| 47 | + stored in `_includes` or `_layouts`, please work in <https://github.com/carpentries/styles>. |
78 | 48 |
|
79 | 49 | ## What to Contribute
|
80 | 50 |
|
81 |
| -There are many ways to contribute, |
82 |
| -from writing new exercises and improving existing ones |
83 |
| -to updating or filling in the documentation |
84 |
| -and and submitting [bug reports][issues] |
85 |
| -about things that don't work, aren't clear, or are missing. |
86 |
| -If you are looking for ideas, |
87 |
| -please see [the list of issues for this repository][issues], |
88 |
| -or the issues for [Data Carpentry][dc-issues] |
89 |
| -and [Software Carpentry][swc-issues] projects. |
90 |
| - |
91 |
| -Comments on issues and reviews of pull requests are just as welcome: |
92 |
| -we are smarter together than we are on our own. |
93 |
| -Reviews from novices and newcomers are particularly valuable: |
94 |
| -it's easy for people who have been using these lessons for a while |
95 |
| -to forget how impenetrable some of this material can be, |
96 |
| -so fresh eyes are always welcome. |
| 51 | +There are many ways to contribute, from writing new exercises and improving existing ones to |
| 52 | +updating or filling in the documentation and submitting [bug reports][issues] about things that |
| 53 | +don't work, aren't clear, or are missing. If you are looking for ideas, please see the 'Issues' tab |
| 54 | +for a list of issues associated with this repository, or you may also look at the issues for |
| 55 | +[Data Carpentry][dc-issues] and [Software Carpentry][swc-issues] projects. |
| 56 | + |
| 57 | +Comments on issues and reviews of pull requests are just as welcome: we are smarter together than we |
| 58 | +are on our own. Reviews from novices and newcomers are particularly valuable: it's easy for people |
| 59 | +who have been using these lessons for a while to forget how impenetrable some of this material can |
| 60 | +be, so fresh eyes are always welcome. |
97 | 61 |
|
98 | 62 | ## What *Not* to Contribute
|
99 | 63 |
|
100 |
| -Our lessons already contain more material than we can cover in a typical workshop, |
101 |
| -so we are usually *not* looking for more concepts or tools to add to them. |
102 |
| -As a rule, |
103 |
| -if you want to introduce a new idea, |
104 |
| -you must (a) estimate how long it will take to teach |
105 |
| -and (b) explain what you would take out to make room for it. |
106 |
| -The first encourages contributors to be honest about requirements; |
107 |
| -the second, to think hard about priorities. |
| 64 | +Our lessons already contain more material than we can cover in a typical workshop, so we are usually |
| 65 | +*not* looking for more concepts or tools to add to them. As a rule, if you want to introduce a new |
| 66 | +idea, you must (a) estimate how long it will take to teach and (b) explain what you would take out |
| 67 | +to make room for it. The first encourages contributors to be honest about requirements; the second, |
| 68 | +to think hard about priorities. |
108 | 69 |
|
109 |
| -We are also not looking for exercises or other material that only run on one platform. |
110 |
| -Our workshops typically contain a mixture of Windows, Mac OS X, and Linux users; |
111 |
| -in order to be usable, |
112 |
| -our lessons must run equally well on all three. |
| 70 | +We are also not looking for exercises or other material that only run on one platform. Our workshops |
| 71 | +typically contain a mixture of Windows, macOS, and Linux users; in order to be usable, our lessons |
| 72 | +must run equally well on all three. |
113 | 73 |
|
114 | 74 | ## Using GitHub
|
115 | 75 |
|
116 |
| -If you choose to contribute via GitHub, |
117 |
| -you may want to look at |
118 |
| -[How to Contribute to an Open Source Project on GitHub][how-contribute]. |
119 |
| -In brief: |
120 |
| - |
121 |
| -1. The published copy of the lesson is in the `gh-pages` branch of the repository |
122 |
| - (so that GitHub will regenerate it automatically). |
123 |
| - Please create all branches from that, |
124 |
| - and merge the [master repository][repo]'s `gh-pages` branch into your `gh-pages` branch |
125 |
| - before starting work. |
126 |
| - Please do *not* work directly in your `gh-pages` branch, |
127 |
| - since that will make it difficult for you to work on other contributions. |
128 |
| - |
129 |
| -2. We use [GitHub flow][github-flow] to manage changes: |
130 |
| - 1. Create a new branch in your desktop copy of this repository for each significant change. |
131 |
| - 2. Commit the change in that branch. |
132 |
| - 3. Push that branch to your fork of this repository on GitHub. |
133 |
| - 4. Submit a pull request from that branch to the [master repository][repo]. |
134 |
| - 5. If you receive feedback, |
135 |
| - make changes on your desktop and push to your branch on GitHub: |
136 |
| - the pull request will update automatically. |
137 |
| - |
138 |
| -Each lesson has two maintainers who review issues and pull requests |
139 |
| -or encourage others to do so. |
140 |
| -The maintainers are community volunteers, |
141 |
| -and have final say over what gets merged into the lesson. |
| 76 | +If you choose to contribute via GitHub, you may want to look at |
| 77 | +[How to Contribute to an Open Source Project on GitHub][how-contribute]. To manage changes, we |
| 78 | +follow [GitHub flow][github-flow]. Each lesson has two maintainers who review issues and pull |
| 79 | +requests or encourage others to do so. The maintainers are community volunteers and have final say |
| 80 | +over what gets merged into the lesson. To use the web interface for contributing to a lesson: |
| 81 | + |
| 82 | +1. Fork the originating repository to your GitHub profile. |
| 83 | +2. Within your version of the forked repository, move to the `gh-pages` branch and create a new |
| 84 | + branch for each significant change being made. |
| 85 | +3. Navigate to the file(s) you wish to change within the new branches and make revisions as |
| 86 | + required. |
| 87 | +4. Commit all changed files within the appropriate branches. |
| 88 | +5. Create individual pull requests from each of your changed branches |
| 89 | +to the `gh-pages` branch within the originating repository. |
| 90 | +6. If you receive feedback, make changes using your issue-specific branches of the forked |
| 91 | + repository and the pull requests will update automatically. |
| 92 | +7. Repeat as needed until all feedback has been addressed. |
| 93 | + |
| 94 | +When starting work, please make sure your clone of the originating `gh-pages` branch is up-to-date |
| 95 | +before creating your own revision-specific branch(es) from there. Additionally, please only work |
| 96 | +from your newly-created branch(es) and *not* your clone of the originating `gh-pages` branch. |
| 97 | +Lastly, published copies of all the lessons are available in the `gh-pages` branch of the |
| 98 | +originating repository for reference while revising. |
142 | 99 |
|
143 | 100 | ## Other Resources
|
144 | 101 |
|
145 |
| -General discussion of [Software Carpentry][swc-site] and [Data Carpentry][dc-site] |
146 |
| -happens on the [discussion mailing list][discuss-list], |
147 |
| -which everyone is welcome to join. |
148 |
| -You can also [reach us by email][contact]. |
| 102 | +General discussion of [Software Carpentry][swc-site] and [Data Carpentry][dc-site] happens on the |
| 103 | +[discussion mailing list][discuss-list], which everyone is welcome to join. You can also |
| 104 | +[reach us by email][email]. |
149 | 105 |
|
150 |
| -[contact]: mailto:[email protected] |
| 106 | + |
151 | 107 | [dc-issues]: https://github.com/issues?q=user%3Adatacarpentry
|
152 | 108 | [dc-lessons]: http://datacarpentry.org/lessons/
|
153 | 109 | [dc-site]: http://datacarpentry.org/
|
154 | 110 | [discuss-list]: http://lists.software-carpentry.org/listinfo/discuss
|
155 |
| -[github]: http://github.com |
| 111 | +[github]: https://github.com |
156 | 112 | [github-flow]: https://guides.github.com/introduction/flow/
|
157 | 113 | [github-join]: https://github.com/join
|
158 | 114 | [how-contribute]: https://egghead.io/series/how-to-contribute-to-an-open-source-project-on-github
|
159 |
| -[issues]: https://github.com/swcarpentry/FIXME/issues/ |
160 |
| -[repo]: https://github.com/swcarpentry/FIXME/ |
| 115 | +[issues]: https://guides.github.com/features/issues/ |
161 | 116 | [swc-issues]: https://github.com/issues?q=user%3Aswcarpentry
|
162 |
| -[swc-lessons]: http://software-carpentry.org/lessons/ |
163 |
| -[swc-site]: http://software-carpentry.org/ |
| 117 | +[swc-lessons]: https://software-carpentry.org/lessons/ |
| 118 | +[swc-site]: https://software-carpentry.org/ |
0 commit comments