JupyterHub for Teaching gives users access to Jupyter Notebook environments (computational environments and resources) without the hassle of installation and maintenance tasks. Instructors can make individual workspaces available via JupyterHub to students using shared resources, which can be managed efficiently by system administrators.
Read more about JupyterHub at the UW:
Sign up for JupyterHub for your course
Instructors can request to have a JupyterHub environment set up for one or more of their classes by filling out the registration form (accessible from the link below). Please note: Registration requests may require two or more business days or more to be processed. Hubs will be provisioned and available one to three weeks before the start of the quarter for which they are requested.
Frequently Asked Questions
I’m new to JupyterHub/Jupyter Notebooks. Is there an easy way to learn more about how it can support teaching and learning?
- Check out this online handbook: Teaching and Learning with Jupyter
- This short video illustrates what Jupyter Notebooks can do
- YouTube offers many videos about Jupyter Notebooks
- Check out the official Jupyter documentation
- Read highlights of the UW winter and spring 2020 JupyterHub for Teaching pilot
I know a little bit about Jupyter Notebooks. Can I get a look at what people at the UW are doing with them?
Explore this showcase of sample Jupyter notebooks created at the UW.
I’d like to explore Jupyter Notebooks on my own. Is there a sandbox I can play with?
Please contact us at firstname.lastname@example.org and we will happily set up a sandbox for you.
I have experience using Python in my classes. What’s the difference between using Python and Jupyter Notebooks?
Jupyter Notebooks on the hosted JupyterHub system provides a browser based Python or R IDE, with a consistent environment for all users. As there are no local dependencies, complications arising from students using a variety of platforms are significantly reduced.
What will my Jupyter environment include?
Per-user resource allocation:
User Storage: 5 GB
Max Memory: 2GB or 4GB (chosen by instructor)
CPU: Default is 2 cores, with option of up to 4 cores
Instructors can choose from five standard notebook images for their JupyterHub deployment, or can use a compatible custom notebook from elsewhere:
- An instructor-supported custom image sourced from the Jupyter community that the instructor provides and maintains. Please note that those who choose this option are responsible for all support, testing, troubleshooting, bug fixing and updates; UW-IT will not provide support outside of general cloud platform support.
The SciPy, R, and TensorFlow images share the following features:
- Ubuntu Bionic
- Miniconda Python 3.x in /opt/conda
- Unprivileged user jovyan with ownership over the /home/jovyan and /opt/conda paths
- Pandoc and TeX Live for Notebook document conversion
- Git, emacs, jed, nano, tzdata, and unzip
- Ipywidgets for interactive visualizations in Python Notebooks
- NBGitPuller for syncing a git repository to a user’s home directory
- NBResUse to show memory usage and limits in the Notebook UI
- The Github links for each image provide more detailed information
Can I add course data to student notebooks?
Yes! All our standard notebook environments include the nbgitpuller server extension, which allows one or more public git repositories of your choosing to be automatically added to the home directory of student environments. The contents of the remote repository will be updated each time a notebook starts up.
This can be requested at the time you register for a Hub, or after the fact by sending a request to email@example.com with “JupyterHub for Teaching” in the subject line. Please include the URL for your Git repository, the branch to use (if more than one is present), and the local folder name your students will see. Please also check out our best practices page for information about using nbgitpuller in your course.
How do I set up a custom notebook image for my JupyterHub environment?
Instructors can request to use their own custom image before a quarter starts during an open registration period. When choosing this option, instructors must build an image sourced from the Jupyter community, test it, publish it on DockerHub or another repository, and provide a location URL to the JupyterHub for Teaching support team. For compatibility reasons, we strongly recommend basing custom images off of the supported images here.
Instructors who originally registered to use a stock image can choose to convert it to a custom image at any time during the quarter by sending a request and image URL to firstname.lastname@example.org.
Note: Instructors who choose the Custom Image option are responsible for all support, testing, troubleshooting, bug fixing, and updates; UW-IT will not provide support outside of general cloud platform support.
Can I modify the stock R, SciPy, or TensorFlow images?
Send modification requests for the stock R, SciPy, or TensorFlow images to email@example.com. Changes, if approved and successfully tested, will only be applied to the stock images between quarters to ensure system continuity and stability for all users. Alternatively, instructors can use one of the stock images as a starting point to create a custom image that can be used at any time.
Will new stock images be added in addition to the R, SciPy and TensorFlow images?
We are happy to review requests for new stock images, please send them to firstname.lastname@example.org. New stock images, if approved and successfully tested, will be implemented between quarters.
How technical do students need to be to learn successfully with Jupyter Notebooks?
Experience with other coding platforms (e.g., MATLAB, ArcGIS) and languages can provide a useful foundation. If students do not have experience with Python, instructors should consider providing time and resources to getting students comfortable using it.
What support can I expect from UW-IT?
Each student in your course will receive access to a Jupyter Notebook server, created from your selected Jupyter image. Access to the Notebooks is restricted to the user UW NetIDs that are present in the course in Canvas. UW-IT will run the infrastructure at no cost to you.
Note: UW-IT is not expert in the pedagogy of using JupyterHub/Jupyter Notebooks. While we are providing JupyterHub, we strongly encourage users to review JupyterHub’s support documentation. UW-IT is also working with advanced users of Jupyter Notebooks to build a campus support network. As details about that support become available, they will be shared here.
For general questions about JupyterHub for Teaching, contact email@example.com. For faster service, please include “Jupyter” in the subject line.
What kind of support should I be prepared to set up on my own?
Experienced students, familiar with Jupyter Notebooks and JupyterHub and who are capable of managing back end development and technical problems, may be an important source of support for faculty. This type of support might be included in an existing teaching assistant’s job duties. With limited permissions to the cloud computing administrator interface, teaching assistants could troubleshoot common issues with students in real time.
Is the JupyterHub for Teaching service really free?
There are currently no costs associated with using the service.
Are there best practices for using JupyterHub at the UW?
Is there a changelog available?
Yes! View the changelog here.
JupyterHub for Teaching instances will be maintained for at least one quarter after their associated course has completed. Announcements will be sent to instructors approximately two weeks before the deletion date.
|JupyterHub active course quarter||Deleted on or after|
|Winter 2022||Jun 9, 2022|
|Spring 2022||Aug 19, 2022|
|Summer 2022||Dec 16, 2022|
|Fall 2022||Mar 17, 2023|
|Winter 2023||June 9, 2023|