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
You mentioned that folks really liked the bit about releasing your own python package using the astropy package-template. Do you have any materials in this repo showing how you did that lesson?
The text was updated successfully, but these errors were encountered:
I've given packaging tutorials three times at UW (2016), Exeter and Bern (2019). One resource I distribute while teaching is this little gist which contains some useful links on packaging.
Here's a rough outline of what I cover:
Introduce the package-template as a concept, and clone the repository.
Run live demo of cookiecutter to create an example package, explain each choice made during the interactive process. Highlight the importance of choosing a license, and the urgency of supporting only Python 3.
Review the file/directory structure of the results from cookiecutter, noting the best practices in use by the template. Demonstrate installation via python setup.py install, import the new package in an interactive terminal, show that functions work.
Spend a good ten minutes here explaining the importance of testing, test-driven development, and continuous integration. Show the glorious battery of tests within astropy, explain that it's the testing infrastructure and GitHub functionality that allows for parallel development by many contributors.
Introduce travis-ci, explain that the tests get run whenever new commits are pushed (example: astropy's travis-ci page)
Introduce ReadTheDocs, explain the concept of self-building documentation generated via sphinx (example: astroplan's docs). Highlight documentation as being the most useful way to teach your students/collaborators to use your code.
You mentioned that folks really liked the bit about releasing your own python package using the astropy package-template. Do you have any materials in this repo showing how you did that lesson?
The text was updated successfully, but these errors were encountered: