Introductory computing class using Microsoft Azure Notebooks Service powered by the Jupyter
Published Mar 21 2019 10:02 AM 381 Views
First published on MSDN on Jan 15, 2018

This article was published by the University of Cambridge Engineering department at and has been reposted for sharing of best practice within academia.

As the pace of global innovation continues to accelerate, the University of Cambridge is evolving engineering curriculum to teach core concepts faster using higher level, open source tools in the public cloud. For example, a professor increased learning in an introductory computing class by having students use Microsoft Azure Notebooks Service powered by the Jupyter open source project.

A lot of my colleagues were concerned that the new course was too difficult. But at the end of the term, those who had taught introductory computing in previous years really marveled at the level that students reached using Python and Jupyter on the Azure Notebooks Service.

Dr. Garth Wells: Hibbit Reader in Solid Mechanics, Department of Engineering University of Cambridge

This allows students to spend more time mastering concepts and enhancing problem solving skills and less time on language syntax. This technology switch also gives students anytime, anywhere access to required tools needed to complete assignments, and it facilitates greater collaboration between professors, students, and the larger community. In addition, after Cambridge adopted a public cloud solution, IT infrastructure doesn’t limit the ingenuity of bright minds.

Founded in 1209, the University of Cambridge in the United Kingdom is one of the world's leading academic centres with a multi-century reputation for outstanding achievement among its students who include Sir Isaac Newton, Jane Goodall, and Stephen Hawking. Currently ranked fifth in the world by QS World University Rankings, Cambridge also operates one of the world’s largest engineering departments.

To help produce innovative problem solvers, Cambridge is modernising its engineering program, including introductory computing. Until recently, professors taught required concepts for modeling and simulations using technologies such as MATLAB and C. Students worked individually on exercises. Although this model worked for years, professors wanted to adopt new processes and toolsets.

“We’re developing a style of teaching that reflects the way people work, in industry and in the open source community,” says Dr. Garth Wells, Hibbit Reader in Solid Mechanics in the Department of Engineering at the University of Cambridge. “And that's very much a collaborative approach supported by open source tools and online services. We also want students to be able to work on computation anywhere, anytime, and on any kind of device.”

Unleashing ingenuity with the cloud
As a first step in realising his vision, Professor Wells revamped an entry-level computing course, using a web application that allows professors and students to build libraries of shareable notebooks containing text, equations, visualisations, and code.

“We wanted to teach higher-level tools like Python, and Jupyter Notebook is the obvious choice for that,” explains Wells. “With it, we can focus more on concepts and problem solving, and less on languages’ syntax. Plus, Jupyter Notebook is open source, so students can use it, along with their knowledge of computation, for any class and at any organisation, even a start-up.”

Initially, Professor Wells deployed Jupyter Notebook on university servers for a small group of students.

“I could see we were going to have issues because we don't have the right resources to scale the solution on our servers to support 340 students, particularly when a good fraction of those will use notebooks in all sorts of strange ways that can cause infrastructure problems,” he says. “Around that time, I met with Kenji Takeda, Director of Microsoft Research Cambridge. He put me in touch with engineers in Seattle,” who were developing a software-as-a-service version of Jupyter Notebook called Azure Notebooks Service.

Wells ended up adopting the initial release of Azure Notebook Service  for his class instead of managing Jupyter Notebook onsite. “By keeping all technologies in-house, you inevitably have to rein in your ambitions to fit available resources,” he explains. “With Azure Notebooks, we don't have to worry about scalability or whether systems will crash if someone does something out of the ordinary.”

Redefining what’s possible in an eight-week term
The updated computing class was a resounding success. “A lot of my colleagues were concerned that the new course was too difficult. But at the end of the term, those who had taught introductory computing in previous years really marveled at the level that students reached using Python and Jupyter Notebooks.”

For example, students learned more about plotting data than in previous years by working with public data and open source tools in notebooks. In one lesson, students plotted crime reports in Cambridge by year, month, and category. In another lesson, students created plots with interactive sliders to explore population growth in different regions of the country.

“The idea of fetching data over the Internet, manipulating it, and plotting it would have been completely out of reach for this class using the previous low-level tools, but these kinds of exercises are possible with standard modules in Python,” Wells explains. “And I think it’s important for students to use real data in their work. It makes learning more fun. Overusing synthetic data can also reinforce a students’ view that they can compute in the walled garden of a class, but maybe not in the outside world because it’s different.”

Promotes greater innovation and collaboration
Professors can also accelerate research with notebooks. For example, Wells and colleagues at another university are sharing work on a new high-intensity-focused ultrasound technology using Notebooks. Wells also sent a notebook that runs a ready-to-go research environment to a peer in Africa.

“He was teaching a class, and only about half the students could properly install the required research tools on their desktops,” says Wells. “By using Azure Notebooks, students aren’t hindered by installation issues. They can just start working straight away. All they need is a decent browser and an Internet connection.”

Moving forward, professors at Cambridge see the use of Azure Notebooks Service as a strategic step in evolving engineering curriculum. Students can learn more because they focus on key concepts. They also learn how to use increasingly popular open source technologies and collaborative workflows.

“With Azure Notebooks, our students get easy access to open source tools from one place,” says Wells. “If they go into a startup after graduation, this is a model that can really work for them. Instead of having to pay $40,000 for software, they only pay for the resources they use. Plus, because the solution simplifies collaboration, students also see that they can get results faster by working with more people.”

Explore and learn more about using Microsoft Azure in classes and research.

This article originally appeared on the Microsoft website .

Version history
Last update:
‎Mar 21 2019 10:02 AM
Updated by: