3.1. About the Homework¶
The main purpose of the homework is for you to gain practical experience in computational modelling. Secondary goals are to develop your scientific programming skills (in Python), as well as to deepen your knowledge of data structures and algorithm design and analysis.
3.1.1. Accessing the homework material¶
The directives for all the homework assignments are provided in the online course notes.
Starter notebooks and data for the homework is available via the course GitHub repository. They are also available on the course JupyterHub (on campus and VPN access only). You should be able to complete the homework via this site with no software installation required. However, you can also download the homework and complete it on your own computer if you have followed the instructions in Computing Resources.
Deliverables for the homework assignments will be submitted electronically via CourseLink Dropbox. They are due according to the dates associated with the respective Dropbox folders.
3.1.2. JupyterHub¶
We are running JupyterHub, which is a multi-user server for Jupyter notebooks. Log in using your U of G central login. When you first connect, you will be taken to an instance of JupyterLab running inside a Docker container.
You will see two folders:
public
is read-only, it is a mirror of the course GitHub repositorywork
is your work directory. This persists even when you shut down your server.
Homework assignments will typically provide a starter notebook which you will
fill out and submit on CourseLink Dropbox. The normal workflow is to copy the
appropriate folder at the beginning of the lab from public
to work
, and
edit the copy in work
. This can be achieved via the Terminal. Use the
Launcher to open a new Terminal, or use File -> New -> Terminal and then type:
cp -r public/homework/homework02 work
You can then close the Terminal and open the copied notebook for editing.
3.1.3. Submission¶
Homework is to be submitted as a single Jupyter notebook. If your notebook requires dependencies beyond that supplied by the course environment file, please submit an environment file that contains all the dependencies to run your notebook.
3.1.4. Grading¶
Homework will be auto-graded according to a terniary scheme:
High pass (more than average effort, essentially complete)
Pass (reasonable effort, may be missing some components)
Fail (less than average effort, mostly incomplete)
- The three homework submissions with the lowest grade will be dropped. However,
homework assignments that are not submitted will not be dropped