Skip to content

Instantly share code, notes, and snippets.

@mauro3
Last active March 15, 2022 14:42
Show Gist options
  • Select an option

  • Save mauro3/42aac8d7aab07b1a4e56391f4c53233e to your computer and use it in GitHub Desktop.

Select an option

Save mauro3/42aac8d7aab07b1a4e56391f4c53233e to your computer and use it in GitHub Desktop.
Display the source blob
Display the rendered blob
Raw
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
#src # I produce the jupyter notebook from this plain-text script via the use of the package Literate.jl.
#src # Note for Python https://mpastell.com/pweave/ provides similar capabilities.
#src # This is needed to make this run as normal Julia file:
using Markdown #src
#nb # %% A slide [markdown] {"slideshow": {"slide_type": "slide"}}
md"""
# My experiences using Jupyter-notebooks and JupyterHub for teaching @ ETH
Mauro Werder
- from WSL Birmensdorf and VAW, D-Baug
- glaciologist
Courses:
Physics of Glaciers (link [651-4101-00L](http://www.vvz.ethz.ch/Vorlesungsverzeichnis/lerneinheit.view?lerneinheitId=146914&semkez=2021W&lang=de))
Solving partial differential equations in parallel on GPUs (link [101-0250-00](https://eth-vaw-glaciology.github.io/course-101-0250-00))
"""
#nb # %% A slide [markdown] {"slideshow": {"slide_type": "slide"}}
md"""
## Aside: Slides as Jupyter Notebooks
- These slides are just a [Jupyter notebook](https://jupyter.org/); a browser-based computational notebook.
- The slides are presented with the [RISE plugin](https://rise.readthedocs.io/en/stable/installation.html).
- find all the text, figures & code for this presentation at https://tinyurl.com/LET-mauro
Code cells are executed by putting the cursor into the cell and hitting `shift + enter`:
"""
1 + 1
#nb # %% A slide [markdown] {"slideshow": {"slide_type": "fragment"}}
md"""
Code, writing and figures can be interspersed in Jupyter notebooks.
"""
#nb # %% A slide [markdown] {"slideshow": {"slide_type": "fragment"}}
md"""
Notebooks can be run on your local computer or in the cloud.
"""
#nb # %% A slide [markdown] {"slideshow": {"slide_type": "slide"}}
md"""
## JupyterHub: notebooks in the cloud
"""
#nb # %% A slide [markdown] {"slideshow": {"slide_type": "fragment"}}
md"""
![](https://gist.githubusercontent.com/mauro3/42aac8d7aab07b1a4e56391f4c53233e/raw/35110d553a534a4aa49c3f32b39554a41eaea058/pic-jupyterlab1.png)
"""
#nb # %% A slide [markdown] {"slideshow": {"slide_type": "slide"}}
md"""
## JupyterHub: notebooks in the cloud
- using JupyterHub a server can provide Jupyter notebooks and more
- since HS 2021, LET offers JupyterHub servers for ETH-courses
- see https://blogs.ethz.ch/letblog/2022/02/21/did-you-know-there-is-a-jupyterhub-at-eth
- JupyterHub-server can also be self-hosted
"""
#nb # %% A slide [markdown] {"slideshow": {"slide_type": "slide"}}
md"""
## Jupyter in "Physics of Glaciers" course
- only part (1/3) of the lectures used Jupyter notebooks
- used the LET offered JupyterHub
Demo:
"""
#nb # %% A slide [markdown] {"slideshow": {"slide_type": "fragment"}}
md"""
- class exercises
- assignments with notebooks
(sorry, these notbooks are close-source, so no link.)
"""
#nb # %% A slide [markdown] {"slideshow": {"slide_type": "slide"}}
md"""
## Course "Solving partial differential equations in parallel on GPUs"
Computing galore!
- new course by **Ludovic Räss**
- Jupyter notebooks for
- introductory material
- specialized performance lecture
- our course slides
- website generated from Julia code
- website: https://eth-vaw-glaciology.github.io/course-101-0250-00
- code-repo: https://github.com/eth-vaw-glaciology/course-101-0250-00/
- also teach *software engineering*: unit testing, git, documentation, open source codes, virtual environments
- exercise hand-in via GitHub repository
Demo:
- [Lecture1.3 Julia Intro](https://github.com/eth-vaw-glaciology/course-101-0250-00/blob/main/slide-notebooks/notebooks/l1_3-julia-intro.ipynb)
"""
#nb # %% A slide [markdown] {"slideshow": {"slide_type": "slide"}}
md"""
## Conclusions
- Jupyter notebooks / JupyterHub provide a convenient computing environment for teaching
- students appreciate its use (mostly)
- easy to make learning more hands-on
- one of the only downsides is that students loose computing-independence
- using the JupyterHub of LET, built into Moodle is super easy
Find all the text, figures & code for this presentation at https://tinyurl.com/LET-mauro
"""
Display the source blob
Display the rendered blob
Raw
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
using Literate
Literate.notebook("LET-werder.jl", ".", credit=false, execute=false, mdstrings=true)
[deps]
Literate = "98b081ad-f1c9-55d3-8b20-4c87d4299306"
OrdinaryDiffEq = "1dea7af3-3e70-54e6-95c3-0bf5283fa5ed"
Plots = "91a5bcdd-55d7-5caf-9e0b-520d859cae80"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment