Course Overview
- 1st week
- Syllabus
-
Introduction to Programming
- Prepare parts 1
(Whetting
Your Appetite) and 3
(An Informal
Introduction to Python) of the
Python tutorial
- Set up a user on GitHub
- 2nd week
- Hello Python
- Prepare part 4
(More Control
Flow Tools) up to and including 4.6
(
match
statements) of the
Python tutorial
- Start homework 1
- 3rd week
- Strings
- Prepare the remainder of part 4 (starting with
Defining Functions) of the
Python tutorial
- Start homework 2
(accept the
GitHub assignment)
- 4th week
- Functions
- Prepare the
data structures chapter of the
Python tutorial
- Start homework 3
(accept the
GitHub assignment)
- 5th week
-
Built-in Container Data Structures
- Read about
function annotations and
variable annotations
directly in the relevant Python Enhancement Proposals (PEPs)
- Work through the Python 3 tutorial on
Modules
- Read the Python 3 library documentation on
doctests
(from the top until (not including) "How It Works")
- Start homework 4
(accept the
GitHub assignment)
- 6th week
- Modules and Packages
- Documentation
- Build teams and select topics for the term project
- Prepare
Classes up to and including
Private Variables) of the
Python tutorial
- Start
homework 5
(accept the
GitHub assignment)
- 7th week
-
Creating Your Own Data Types
- Prepare chapter 9 ("Unit Testing") of "Dive into Python 3"
- Start
homework 6
(accept the
GitHub assignment)
- 8th week
- Unit Testing
- Read Python's
Functional Programming HOWTO
- Start
homework 7
(accept the
GitHub assignment)
- 9th week
-
Functional Programming
- Read the first three chapters of the "Data Structures" wikibook:
Introduction,
Asymptotic Notation and
Arrays
- Start
homework 8
(accept the
GitHub assignment)
- 10th week
-
Data Structures and Algorithms
- Read through at least one of the
PuLP optimization case studies. If you lack prior knowledge with
regard to linear programming, also study the
optimization process and optimization concepts in the PuLP
documentation
- Start
homework 9
(accept the
GitHub assignment)
- 11th week
- Linear optimization with PuLP
- Download the PuLP.ipynb
ipython notebook
- Follow the instructions on
using ipython notebooks
- Start
homework 10
- 12th week
- Introduction to data analysis with Python
- Download the
data_analysis.ipynb
ipython notebook
- Follow the instructions on
using ipython notebooks
- Start
homework 11
- 13th week
- Review and Outlook
- 14th week
- Q & A
- 15th week
- Final exam
IPython Notebooks
Make sure jupyter-lab is installed (pip install --user --upgrade jupyterlab
). After downloading a notebook, use it via
jupyter notebook ${notebookname}
or open the entire development environment via
jupyter lab
Prior Exams
Links
Notes
The best way to learn programming is to write code. Have fun!