Skip to content

Commit 369efd7

Browse files
authored
Merge pull request #1 from gjbex/development
Add environment description
2 parents dc28698 + 40c3077 commit 369efd7

File tree

6 files changed

+367
-298
lines changed

6 files changed

+367
-298
lines changed

README.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,11 @@ For information on the training, see the website
1111
presentation used for the training.
1212
1. [`source-code`](source-code): directory that contains sample code written to
1313
develop the slides and illustrate concepts.
14+
1. [`environment.yml`](environment.yml): conda environment file intended to be
15+
cross-platform.
16+
1. [`python_software_engineering_linux64_conda_specs.txt`](python_software_engineering_linux64_conda_specs.txt):
17+
conda environment specification file specific for 64-bit Linux to precisely
18+
reproduce the environment on which the code was developed.
1419
1. [License](LICENSE): license information for the material in this repository.
1520
1. [Contributing](CONTRIBUTING.md): information on how to contribute to this
1621
repository.

docs/README.md

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
The Python programming language is increasingly popular. It is a
2-
versatile language for general purpose programming and accessible
3-
for novice programmers. Although Python is easy to use, writing
4-
quality applications requires some effort and experience.
5-
This training introduces concepts and modules that will help you
6-
write better software.
1+
Quality of software matters, whether you share it with others or not.
2+
Software should be easy to install, easy to use, and well documented.
3+
This training will cover those aspects from the perspective of the
4+
Python ecosystem. However, it is also important that software is easy
5+
to maintain, so coding style matters, API-level documentation should be
6+
available, as well as a battery of tests to ensure the software's
7+
integrity. Of course, good design is at least as important.
78

89

910
## Learning outcomes

environment.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
name: python_software_engineering
2+
channels:
3+
- defaults
4+
dependencies:
5+
- flake8
6+
- jupyterlab
7+
- matplotlib
8+
- mypy
9+
- pylint
10+
- pyparsing
11+
- pytest
12+
- python=3.7.5
Lines changed: 124 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,124 @@
1+
# This file may be used to create an environment using:
2+
# $ conda create --name <env> --file <this file>
3+
# platform: linux-64
4+
@EXPLICIT
5+
https://repo.anaconda.com/pkgs/main/linux-64/_libgcc_mutex-0.1-main.conda
6+
https://repo.anaconda.com/pkgs/main/linux-64/blas-1.0-mkl.conda
7+
https://repo.anaconda.com/pkgs/main/linux-64/ca-certificates-2019.11.27-0.tar.bz2
8+
https://repo.anaconda.com/pkgs/main/linux-64/intel-openmp-2019.4-243.conda
9+
https://repo.anaconda.com/pkgs/main/linux-64/libgfortran-ng-7.3.0-hdf63c60_0.conda
10+
https://repo.anaconda.com/pkgs/main/linux-64/libstdcxx-ng-9.1.0-hdf63c60_0.conda
11+
https://repo.anaconda.com/pkgs/main/linux-64/libgcc-ng-9.1.0-hdf63c60_0.conda
12+
https://repo.anaconda.com/pkgs/main/linux-64/mkl-2019.4-243.conda
13+
https://repo.anaconda.com/pkgs/main/linux-64/expat-2.2.6-he6710b0_0.conda
14+
https://repo.anaconda.com/pkgs/main/linux-64/gmp-6.1.2-h6c8ec71_1.conda
15+
https://repo.anaconda.com/pkgs/main/linux-64/icu-58.2-h9c2bf20_1.conda
16+
https://repo.anaconda.com/pkgs/main/linux-64/jpeg-9b-h024ee3a_2.conda
17+
https://repo.continuum.io/pkgs/main/linux-64/libffi-3.2.1-hd88cf55_4.tar.bz2
18+
https://repo.anaconda.com/pkgs/main/linux-64/libsodium-1.0.16-h1bed415_0.conda
19+
https://repo.anaconda.com/pkgs/main/linux-64/libuuid-1.0.3-h1bed415_2.conda
20+
https://repo.anaconda.com/pkgs/main/linux-64/libxcb-1.13-h1bed415_1.conda
21+
https://repo.anaconda.com/pkgs/main/linux-64/ncurses-6.1-he6710b0_1.conda
22+
https://repo.anaconda.com/pkgs/main/linux-64/openssl-1.1.1d-h7b6447c_3.tar.bz2
23+
https://repo.anaconda.com/pkgs/main/linux-64/pcre-8.43-he6710b0_0.conda
24+
https://repo.anaconda.com/pkgs/main/linux-64/xz-5.2.4-h14c3975_4.conda
25+
https://repo.anaconda.com/pkgs/main/linux-64/zlib-1.2.11-h7b6447c_3.conda
26+
https://repo.anaconda.com/pkgs/main/linux-64/glib-2.63.1-h5a9c865_0.tar.bz2
27+
https://repo.anaconda.com/pkgs/main/linux-64/libedit-3.1.20181209-hc058e9b_0.conda
28+
https://repo.anaconda.com/pkgs/main/linux-64/libpng-1.6.37-hbc83047_0.conda
29+
https://repo.anaconda.com/pkgs/main/linux-64/libxml2-2.9.9-hea5a465_1.conda
30+
https://repo.anaconda.com/pkgs/main/linux-64/pandoc-2.2.3.2-0.conda
31+
https://repo.anaconda.com/pkgs/main/linux-64/readline-7.0-h7b6447c_5.conda
32+
https://repo.anaconda.com/pkgs/main/linux-64/tk-8.6.8-hbc83047_0.conda
33+
https://repo.anaconda.com/pkgs/main/linux-64/zeromq-4.3.1-he6710b0_3.conda
34+
https://repo.anaconda.com/pkgs/main/linux-64/dbus-1.13.12-h746ee38_0.tar.bz2
35+
https://repo.anaconda.com/pkgs/main/linux-64/freetype-2.9.1-h8a8886c_1.conda
36+
https://repo.anaconda.com/pkgs/main/linux-64/gstreamer-1.14.0-hb453b48_1.conda
37+
https://repo.anaconda.com/pkgs/main/linux-64/sqlite-3.30.1-h7b6447c_0.tar.bz2
38+
https://repo.anaconda.com/pkgs/main/linux-64/fontconfig-2.13.0-h9420a91_0.conda
39+
https://repo.anaconda.com/pkgs/main/linux-64/gst-plugins-base-1.14.0-hbbd80ab_1.conda
40+
https://repo.anaconda.com/pkgs/main/linux-64/python-3.7.5-h0371630_0.conda
41+
https://repo.anaconda.com/pkgs/main/noarch/attrs-19.3.0-py_0.tar.bz2
42+
https://repo.anaconda.com/pkgs/main/linux-64/backcall-0.1.0-py37_0.conda
43+
https://repo.anaconda.com/pkgs/main/linux-64/certifi-2019.11.28-py37_0.tar.bz2
44+
https://repo.anaconda.com/pkgs/main/noarch/decorator-4.4.1-py_0.tar.bz2
45+
https://repo.anaconda.com/pkgs/main/noarch/defusedxml-0.6.0-py_0.tar.bz2
46+
https://repo.anaconda.com/pkgs/main/linux-64/entrypoints-0.3-py37_0.conda
47+
https://repo.anaconda.com/pkgs/main/linux-64/ipython_genutils-0.2.0-py37_0.conda
48+
https://repo.anaconda.com/pkgs/main/noarch/json5-0.8.5-py_0.tar.bz2
49+
https://repo.anaconda.com/pkgs/main/linux-64/kiwisolver-1.1.0-py37he6710b0_0.conda
50+
https://repo.anaconda.com/pkgs/main/linux-64/lazy-object-proxy-1.4.3-py37h7b6447c_0.tar.bz2
51+
https://repo.anaconda.com/pkgs/main/linux-64/markupsafe-1.1.1-py37h7b6447c_0.conda
52+
https://repo.anaconda.com/pkgs/main/linux-64/mccabe-0.6.1-py37_1.conda
53+
https://repo.anaconda.com/pkgs/main/linux-64/mistune-0.8.4-py37h7b6447c_0.conda
54+
https://repo.anaconda.com/pkgs/main/linux-64/more-itertools-7.2.0-py37_0.conda
55+
https://repo.anaconda.com/pkgs/main/linux-64/mypy_extensions-0.4.1-py37_0.conda
56+
https://repo.anaconda.com/pkgs/main/linux-64/pandocfilters-1.4.2-py37_1.conda
57+
https://repo.anaconda.com/pkgs/main/noarch/parso-0.5.1-py_0.tar.bz2
58+
https://repo.anaconda.com/pkgs/main/linux-64/pickleshare-0.7.5-py37_0.conda
59+
https://repo.anaconda.com/pkgs/main/noarch/prometheus_client-0.7.1-py_0.tar.bz2
60+
https://repo.anaconda.com/pkgs/main/linux-64/psutil-5.6.7-py37h7b6447c_0.tar.bz2
61+
https://repo.anaconda.com/pkgs/main/linux-64/ptyprocess-0.6.0-py37_0.conda
62+
https://repo.anaconda.com/pkgs/main/linux-64/py-1.8.0-py37_0.conda
63+
https://repo.anaconda.com/pkgs/main/linux-64/pycodestyle-2.5.0-py37_0.conda
64+
https://repo.anaconda.com/pkgs/main/linux-64/pyflakes-2.1.1-py37_0.conda
65+
https://repo.anaconda.com/pkgs/main/noarch/pyparsing-2.4.5-py_0.tar.bz2
66+
https://repo.anaconda.com/pkgs/main/noarch/pytz-2019.3-py_0.tar.bz2
67+
https://repo.anaconda.com/pkgs/main/linux-64/pyzmq-18.1.0-py37he6710b0_0.conda
68+
https://repo.anaconda.com/pkgs/main/linux-64/qt-5.9.7-h5867ecd_1.conda
69+
https://repo.anaconda.com/pkgs/main/linux-64/send2trash-1.5.0-py37_0.conda
70+
https://repo.anaconda.com/pkgs/main/linux-64/sip-4.19.8-py37hf484d3e_0.conda
71+
https://repo.anaconda.com/pkgs/main/linux-64/six-1.13.0-py37_0.tar.bz2
72+
https://repo.anaconda.com/pkgs/main/noarch/testpath-0.4.4-py_0.tar.bz2
73+
https://repo.anaconda.com/pkgs/main/linux-64/tornado-6.0.3-py37h7b6447c_0.conda
74+
https://repo.anaconda.com/pkgs/main/linux-64/typed-ast-1.4.0-py37h7b6447c_0.tar.bz2
75+
https://repo.anaconda.com/pkgs/main/linux-64/typing_extensions-3.7.4.1-py37_0.tar.bz2
76+
https://repo.anaconda.com/pkgs/main/linux-64/wcwidth-0.1.7-py37_0.conda
77+
https://repo.anaconda.com/pkgs/main/linux-64/webencodings-0.5.1-py37_1.conda
78+
https://repo.anaconda.com/pkgs/main/linux-64/wrapt-1.11.2-py37h7b6447c_0.conda
79+
https://repo.anaconda.com/pkgs/main/linux-64/cycler-0.10.0-py37_0.conda
80+
https://repo.anaconda.com/pkgs/main/linux-64/jedi-0.15.1-py37_0.conda
81+
https://repo.anaconda.com/pkgs/main/linux-64/mkl-service-2.3.0-py37he904b0f_0.conda
82+
https://repo.anaconda.com/pkgs/main/noarch/mypy-0.740-py_0.tar.bz2
83+
https://repo.anaconda.com/pkgs/main/noarch/packaging-19.2-py_0.tar.bz2
84+
https://repo.anaconda.com/pkgs/main/linux-64/pexpect-4.7.0-py37_0.conda
85+
https://repo.anaconda.com/pkgs/main/linux-64/pyqt-5.9.2-py37h05f1152_2.conda
86+
https://repo.anaconda.com/pkgs/main/linux-64/pyrsistent-0.15.6-py37h7b6447c_0.tar.bz2
87+
https://repo.anaconda.com/pkgs/main/noarch/python-dateutil-2.8.1-py_0.tar.bz2
88+
https://repo.anaconda.com/pkgs/main/linux-64/setuptools-42.0.2-py37_0.tar.bz2
89+
https://repo.anaconda.com/pkgs/main/linux-64/terminado-0.8.3-py37_0.tar.bz2
90+
https://repo.anaconda.com/pkgs/main/linux-64/traitlets-4.3.3-py37_0.tar.bz2
91+
https://repo.anaconda.com/pkgs/main/noarch/zipp-0.6.0-py_0.tar.bz2
92+
https://repo.anaconda.com/pkgs/main/linux-64/astroid-2.3.3-py37_0.tar.bz2
93+
https://repo.anaconda.com/pkgs/main/linux-64/bleach-3.1.0-py37_0.conda
94+
https://repo.anaconda.com/pkgs/main/linux-64/flake8-3.7.9-py37_0.tar.bz2
95+
https://repo.anaconda.com/pkgs/main/linux-64/importlib_metadata-1.1.0-py37_0.tar.bz2
96+
https://repo.anaconda.com/pkgs/main/linux-64/isort-4.3.21-py37_0.conda
97+
https://repo.anaconda.com/pkgs/main/noarch/jinja2-2.10.3-py_0.tar.bz2
98+
https://repo.anaconda.com/pkgs/main/linux-64/jupyter_core-4.6.1-py37_0.tar.bz2
99+
https://repo.anaconda.com/pkgs/main/linux-64/numpy-base-1.17.4-py37hde5b4d6_0.conda
100+
https://repo.anaconda.com/pkgs/main/noarch/pygments-2.5.2-py_0.tar.bz2
101+
https://repo.anaconda.com/pkgs/main/linux-64/wheel-0.33.6-py37_0.tar.bz2
102+
https://repo.anaconda.com/pkgs/main/linux-64/jsonschema-3.2.0-py37_0.tar.bz2
103+
https://repo.anaconda.com/pkgs/main/linux-64/jupyter_client-5.3.4-py37_0.tar.bz2
104+
https://repo.anaconda.com/pkgs/main/linux-64/pip-19.3.1-py37_0.tar.bz2
105+
https://repo.anaconda.com/pkgs/main/linux-64/pluggy-0.13.1-py37_0.tar.bz2
106+
https://repo.anaconda.com/pkgs/main/noarch/prompt_toolkit-3.0.2-py_0.tar.bz2
107+
https://repo.anaconda.com/pkgs/main/linux-64/pylint-2.4.4-py37_0.tar.bz2
108+
https://repo.anaconda.com/pkgs/main/linux-64/ipython-7.10.1-py37h39e3cac_0.tar.bz2
109+
https://repo.anaconda.com/pkgs/main/linux-64/nbformat-4.4.0-py37_0.conda
110+
https://repo.anaconda.com/pkgs/main/linux-64/pytest-5.3.1-py37_0.tar.bz2
111+
https://repo.anaconda.com/pkgs/main/linux-64/ipykernel-5.1.3-py37h39e3cac_0.tar.bz2
112+
https://repo.anaconda.com/pkgs/main/linux-64/nbconvert-5.6.1-py37_0.tar.bz2
113+
https://repo.anaconda.com/pkgs/main/linux-64/jupyter_console-5.2.0-py37_1.conda
114+
https://repo.anaconda.com/pkgs/main/linux-64/notebook-6.0.2-py37_0.tar.bz2
115+
https://repo.anaconda.com/pkgs/main/noarch/qtconsole-4.6.0-py_0.tar.bz2
116+
https://repo.anaconda.com/pkgs/main/noarch/jupyterlab_server-1.0.6-py_0.tar.bz2
117+
https://repo.anaconda.com/pkgs/main/linux-64/widgetsnbextension-3.5.1-py37_0.conda
118+
https://repo.anaconda.com/pkgs/main/noarch/ipywidgets-7.5.1-py_0.tar.bz2
119+
https://repo.anaconda.com/pkgs/main/noarch/jupyterlab-1.2.3-pyhf63ae98_0.tar.bz2
120+
https://repo.anaconda.com/pkgs/main/linux-64/jupyter-1.0.0-py37_7.conda
121+
https://repo.anaconda.com/pkgs/main/linux-64/matplotlib-3.1.1-py37h5429711_0.conda
122+
https://repo.anaconda.com/pkgs/main/linux-64/mkl_fft-1.0.15-py37ha843d7b_0.tar.bz2
123+
https://repo.anaconda.com/pkgs/main/linux-64/mkl_random-1.1.0-py37hd6b4f25_0.conda
124+
https://repo.anaconda.com/pkgs/main/linux-64/numpy-1.17.4-py37hc1035e2_0.conda

0 commit comments

Comments
 (0)