A tutorial on how to organize Python code into reusable units such as scripts, modules, and packages; and how to reuse those units, locally and globally, by installing, managing, and distributing them, using pip and conda.
By the end of the tutorial, students will be able to:
- write a more reusable and portable python script
- create and import a python module
- create a python package and a setup.py to install it
- install python packages with pip or conda
- create a conda recipe and build a conda package
- create and manage conda environments
- upload a conda package to conda-forge
- build and configure a custom conda channel
There is a bit more material here than can be completed within a 4 hour window allocated for a SciPy tutorial session. Depending on the informal "Entry Survey" taken when we start, and experience of the audience, we may skip some early sections (e.g. Shells and Scripts) so that we can spend more time with later material and the student exercises, or alternatively, spend more time on the earlier material and leave the later sections as "Homework" to be done after the conference.
I would like to acknowledge Continuum Analytics who graciously permitted me to use their internal training material in development of this tutorial.