Cécile Hébert, an associate professor of physics at EPFL, uses Jupyter Notebooks to help students visualize the different variables involved in a physics experiment. This gives them a leg up in understanding concepts that would otherwise be hard to grasp.
Jupyter Notebooks – open-source, interactive notebooks – let you display all the text, code, equations, images and videos needed to explain a scientific phenomenon. That’s a big advantage for teachers who have to explain abstract concepts on a daily basis and students who have to understand them. One such teacher is Cécile Hébert, an associate professor of physics and head of EPFL’s Electron Spectrometry and Microscopy Laboratory. She gives a general physics class for first-year students. “The new tools we use as teachers have to meet a specific need. What I needed was to be able to run simulations that could immediately incorporate changes I make to certain variables as I’m teaching in class, and to be able to use concrete visuals to illustrate abstract concepts,” she says.
Learn how to design virtual demonstrations in Jupyter notebooks
Hébert, together with six teaching assistants, has already developed 16 Jupyter Notebooks and has another dozen in the pipeline. One of the notebooks they’ve finished shows an experiment that illustrates the mechanisms of a ball rolling in a vertical loop. “2D models can show the forces and vectors involved, which helps students visualize what’s going on,” says Hébert. With the virtual demonstration made possible by Jupyter Notebooks, students can change variables on the fly to see what happens – even if they don’t (yet) know the Python programming language used to develop the notebooks. The notebooks are available to students on noto, the EPFL centralized JupyterLab platform for Education, which they can log into from their regular web browser. No special software is needed, nor do students have to worry about updates or compatibility problems between libraries.
Avoiding black boxes
“Code often strikes fear in the hearts of first-year students, but they should find it reassuring to see the code behind a simulation. I try to get them accustomed to never using software whose code seems like a black box,” says Hébert. “I’ve seen that sometimes even PhD students don’t question the code that’s behind the simulation software they run.”
Hébert, who herself had to learn Python to develop her Jupyter Notebooks, also uses them in her Master’s-level class on advanced electron microscopy methods. She co-teaches this class with Duncan Alexander in a flipped-classroom format. She and Alexander have also developed a MOOC for the class. “I encourage my Master’s students to use the notebooks for the exercises I assign,” says Hébert. Jupyter Notebooks are indeed perfect for exercises because they bring it all together for the students – an approach to thinking through the problem, the ability to include a diagram showing their calculations, the code, and a way to display their results with animation. Although developing the Notebooks takes a while, the end result delivers real added value in teaching abstract concepts and walking students through complex problems.
Author: Laureline Duvillard
Guillaume Anciaux uses Jupyter Notebooks as exercise worksheets to help students learn about civil engineering.
Pol del Aguila Pla uses automated grading in image processing labs based on Jupyter Notebooks.
Music is a central element in the interactive textbook designed by Paolo Prandoni to teach signal processing with Jupyter Notebooks.