While this is meant as internal documentation for the instructor, others are welcome to read it.
-
Modify
environment.yml
-
Run
./extras/scripts/update_packages.sh
-
Manually update the notebooks with interactivity {% if id == "nyu" -%}
-
Update environment in JupyterHub
mamba env update --file extras/environment.lock.yml --prune
{% endif -%}
While the lecture notes can be viewed as a plain notebook, they are also visible as slides.
make slides lec=N
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.
-
Stage changes in Git, as they will be overwritten.
-
If on the
{{school_slug}}
branch, run:./extras/scripts/school.sh <school> ./extras/scripts/build.sh
-
If on
main
or other branches, run:./extras/scripts/school_ci.sh <school>
Once the site is built, you can check broken links with:
make linkcheck
To ensure that notebooks have the correct execution order and output, run them non-interactively.
./extras/scripts/update.sh <file>.ipynb
- Put out attendance sheet
- Connect to HDMI
- On laptop, turn on:
- Set phone to Do Not Disturb
- Run lecture notebook {% if id == "columbia" -%}
- Set up Zoom recording
{% else %}
- Set placeholders
- Adjust lights
- If first couple classes: take attendance for recording Academic Engagement {% endif -%}
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
{% if id == "columbia" -%}
This only shows students coming off the wait list.
- Visit SSOL
- View the Wait List Activity
- Open the Console
- Paste the script
- Do the same for the other section(s)
- Open {{lms_name}}
- Go to Grades
- Export -> Export Entire Gradebook
- In the curve notebook, update the CSV filename
- Re-run the notebook
- Spot-check the new cutoffs
- Update the course grading scheme {% else -%}
Most of the issues are around Plotly rendering / PDF export. Things that have been hit repeatedly:
- Embedded image error in nbconvert
- As of 11/30/24, JupyterHub is using too new a version of pandoc in the
base
environment.
- As of 11/30/24, JupyterHub is using too new a version of pandoc in the
- Plotly JupyterLab support
- PDF export fidelity
- orjson attribute error through Plotly
- PDF exporting crashes when there's a lot of data being output / in plots
See also: comments in environment.yml
. Attempted to distill into the student troubleshooting guide.
{%- endif %}
{% if id == "columbia" -%}
- SIPA Academic Affairs
- Primary contact: Jenny Labuga-Rumenik
- Job posts: [email protected] {%- else %}
- Wagner Faculty Support
- Primary contact: Michelle Spatz
- Job posts: [email protected] {%- endif %}