Jupyter Notebooks: interactive, digital tools for better learning
Jupyter Notebooks are digital tools that have become indispensable in a number of disciplines taught at EPFL. Both students and teachers alike appreciate the Notebooks’ flexibility and interactive features.
Thanks to Jupyter Notebooks, students can solve structural engineering problems by watching structural deformation as it happens, understand signal processing with the help of sounds, music or images, and grasp abstract concepts in physics – all in a simple, accessible manner. The notebooks’ digital environment combines computing power with course content so that students can practice computational thinking. This bolsters their conceptual reasoning and expands their programming skillset. Teachers use them to run virtual demonstrations during class and for assignments that students can work on remotely. In addition, the notebooks’ interactive interface enables students to work out problems and deepen their knowledge.
The project to develop the use of Jupyter notebooks in education at EPFL got underway in 2019. “We’d already been thinking about it for some time,” says Patrick Jermann, Executive Director of EPFL’s Center for Digital Education. “We discussed it with Pierre Vandergheynst, who was EPFL’s Vice President for Education at the time, since incorporating computational thinking into our degree programs was in line with EPFL’s strategic educational objectives. And Jupyter notebooks make it possible to use computational methods to help students understand concepts from a variety of disciplines.”
The Jupyter notebooks are an open-source technology born in the US. “They were originally named IPython Notebooks, after the first programming language they supported,” says Cécile Hardebolle, pedagogical advisor in charge of the project at EPFL. “Then came the Jupyter project, whose name is a contraction of Julia, Python and R – the first three languages implemented in the platform. Today, there are many more.”
To support the use of Jupyter notebooks at EPFL, the project team first had to set up the required IT infrastructure and adapt it to users’ requirements. This task fell to Pierre-Olivier Vallès, a systems engineer at EPFL. “Assembling the various components and getting them to work together was a massive undertaking,” he says. “Our goal was to create a system that could meet EPFL’s needs and fit in with our other IT systems, like the Moodle learning platform and our MOOCs services.”
The Jupyter Notebook for education service was rolled out gradually with help from teachers who were interested in the new teaching method and from those who had already been using the Notebooks for research purposes. Cécile Hardebolle explains: “The real technical challenge was to adapt the system to specific teaching requirements. For example, if a chemistry professor wanted to demonstrate computational chemistry and needed a given library, Pierre-Olivier would add it. We’re always on the lookout for new libraries and extensions that could fit well in an educational setting.” A range of fields taught at EPFL – such as chemistry, machine learning and geographic information systems – can benefit from the notebooks’ digital environment.
Although using Jupyter Notebooks is easy, installing the servers to support them isn’t. The added value provided by EPFL is that, thanks to noto, the JupyterLab centralized platform for education, the Notebooks can be used without downloading and installing special software. This saves teachers a considerable amount of time and means that students can work from anywhere, even if they don’t have a powerful laptop.
The effort to roll out the notebooks service at EPFL has paid off: since 2019, over 5,500 individuals have connected to noto, including professors and users from other universities who are curious about the technology. There are some 2,600 regular users, meaning the system needs to be robust enough to handle a number of simultaneous queries. “If a class of 30 students logs in at once, that must work fine,” says Cécile Hardebolle. “And if 50, 100 or 200 students try to connect at 8:15 am, all the servers must be up and running within 5 minutes.”