Reworked contributing page.

This commit is contained in:
Donne Martin 2015-07-03 20:10:59 -04:00
parent 170f32b7e0
commit 7f389da039

View File

@ -3,29 +3,38 @@ Contributing
Contributions are welcome!
Please carefully read this page before submitting a pull request.
## Bug Reports
For bug reports or requests please [submit an issue](https://github.com/donnemartin/coding-challenges/issues) or send a [pull request](#pull-requests).
## Notebook Installation
Refer to [Accessing the Challenges](https://github.com/donnemartin/coding-challenges#accessing-the-challenges), [Notebook Installation](https://github.com/donnemartin/coding-challenges#notebook-installation), and [Nose Installation](https://github.com/donnemartin/coding-challenges#nose-installation) to set up your local environment.
For bug reports or requests [submit an issue](https://github.com/donnemartin/coding-challenges/issues).
## Pull Requests
**Please follow the general [Repo Structure](https://github.com/donnemartin/coding-challenges#repo-structure) and [Notebook Structure](https://github.com/donnemartin/coding-challenges#notebook-structure) before submitting your pull request.**
### Adding Solutions to Existing Notebooks
### GitHub Pull Requests Docs
If adding new solutions to existing notebooks:
* Append your algorithm and code solution rather than replace a fellow contributor's work
If you are not familiar with pull requests, review the [pull request docs](https://help.github.com/articles/using-pull-requests/).
### Notebook Installation
Refer to [Accessing the Challenges](https://github.com/donnemartin/coding-challenges#accessing-the-challenges), [Notebook Installation](https://github.com/donnemartin/coding-challenges#notebook-installation), and [Nose Installation](https://github.com/donnemartin/coding-challenges#nose-installation) to set up your local environment.
### Adding New Solutions to Existing Challenges
Challenges have multiple solutions. If adding new solutions to existing challenges:
* Add your algorithm discusion and code solution to the existing notebook
* Update the unit test to include your solution
* Verify your code passes the unit tests
### Adding New Challenges
There are several sample coding challenges that are not yet implemented such as the examples below.
* These challenges are merely suggestions; feel free to send pull requests on different challenges, or even entire categories of challenges
The README contains several sample challenges that are not yet implemented.
* The sample challenges are only suggestions, please do not limit yourself to only these topics
* Feel free to send pull requests on different challenges or categories of challenges
* Try to keep the "Challenge" title relatively short and expand on the details within the notebook
* Review the [Repo Structure](https://github.com/donnemartin/coding-challenges#repo-structure) and [Notebook Structure](https://github.com/donnemartin/coding-challenges#notebook-structure) sections
* Check out the [template challenge and solution notebooks](https://github.com/donnemartin/coding-challenges/templates/) to help you get started
| Challenge | Static Notebooks |
@ -35,22 +44,24 @@ There are several sample coding challenges that are not yet implemented such as
Update the list of challenges in the README so we can enjoy your challenge!
### Update Notebook Author(s)
When contributing to a notebook, update the notebook author(s):
<small><i>This notebook was prepared by [Joe](https://github.com/Joe) and [Jane](https://github.com/Jane). Source and license info is on [GitHub](https://github.com/donnemartin/coding-challenges).</i></small>
### Maintain Consistent Style
Please refer to the style of existing notebooks to help maintain consistency. A consistently themed collection of notebooks will help users more seamlessly transition from challenge to challenge.
Review [PEP-8](https://www.python.org/dev/peps/pep-0008/) and the following [style guide](https://google-styleguide.googlecode.com/svn/trunk/pyguide.html).
### Contributions in Languages Other than Python
Feel free to share your thoughts on how we could best approach adding challenges in other [supported languages](https://github.com/ipython/ipython/wiki/IPython-kernels-for-other-languages):
* Repo structure
* README static notebook links
* README challenge list
* Installation instructions
* Etc
### Style
Please refer to the style of existing notebooks to help maintain consistency. A consistently themed collection of notebooks might help users more seamlessly transition from challenge to challenge.
Review [PEP-8](https://www.python.org/dev/peps/pep-0008/) and the following [style guide](https://google-styleguide.googlecode.com/svn/trunk/pyguide.html).
### Notebook Author(s)
When contributing to a notebook, update the notebook author(s):
<small><i>This notebook was prepared by [Joe](https://github.com/Joe) and [Jane](https://github.com/Jane). Source and license info is on [GitHub](https://github.com/donnemartin/coding-challenges).</i></small>
Share your thoughts in this [issue]().