Instructor guide#

While this is meant as internal documentation for the instructor, others are welcome to read it.

Adding/updating packages#

  1. Modify environment.yml

  2. Run

    ./extras/scripts/update_packages.sh
    
  3. Manually update the notebooks with interactivity

Slides#

While the lecture notes can be viewed as a plain notebook, they are also visible as slides.

make slides lec=N

Site#

The site is generated using JupyterBook and deployed to ReadTheDocs. Markdown (.md) files and the files and folders that start with an underscore (_) are related to JupyterBook.

The HTML can be downloaded as an artifact from the latest Publish Action.

Building locally#

  1. Stage changes in Git, as they will be overwritten.

  2. If on the columbia branch, run:

    ./extras/scripts/school.sh <school>
    ./extras/scripts/build.sh
    
  3. If on main or other branches, run:

    ./extras/scripts/school_ci.sh <school>
    

Notebook cleanup#

To ensure that notebooks have the correct execution order and output, run them non-interactively.

./extras/scripts/update.sh <file>.ipynb

Start of class checklist#

  • Put out attendance sheet

  • Connect to HDMI

  • On laptop, turn on:

  • Set phone to Do Not Disturb

  • Run lecture notebook

  • Set up Zoom recording

Data sets#

Canonical copies of data are in a Google Drive folder, synced locally with Google Drive for desktop. Data is then compressed and uploaded to a Google Cloud Storage bucket via Terraform. Descriptions of the data sets.

gcloud auth application-default login

Student enrollment activity#

This only shows students coming off the wait list.

  1. Visit SSOL

  2. View the Wait List Activity

  3. Open the Console

  4. Paste the script

  5. Do the same for the other section(s)

Updating the curve#

  1. Open CourseWorks

  2. Go to Grades

  3. Export -> Export Entire Gradebook

  4. In the curve notebook, update the CSV filename

  5. Re-run the notebook

  6. Spot-check the new cutoffs

  7. Update the course grading scheme

Contacts#