In the five years since Project Jupyter launched, it has fundamentally disrupted the way that instructors teach just about every academic discipline, from mathematics to music. As the new “Teaching and Learning With Jupyter” e-book makes clear, all of the various elements supporting Project Jupyter – especially the Jupyter Notebook software tools – are helping to create a new approach to teaching that uses code as a fundamental part of the classroom experience. In fact, it is possible to make the argument that Jupyter is taking over as the computational front-end for learning and research.
The data analysis and computation revolution
In many ways, what has made the explosion of popularity around Jupyter possible is the data analysis and computation revolution. It’s almost impossible to read a story about technology without hearing about Big Data or the Learn to Code movement. As a result, nearly every academic discipline is remaking itself in order to integrate data analysis and computation as central to the way students learn. Computational thinking is no longer a separate discipline – it is now something that is deeply integrated into every academic discipline.
This new focus on data has changed the classroom experience. For example, in any class that decides to adopt Jupyter notebooks, students would no longer use traditional textbooks. Instead, they would be using dynamic, online “notebooks” that support executable code, mathematical equations, data visualizations, and narrative text. This helps to make any class more interactive, more dynamic, and more relevant.
For example, in an Economics class using Jupyter notebooks, a section on GDP growth might include traditional text narrative about how GDP growth is calculated and why it is important, together with data visualizations of GDP growth comparisons, and short snippets of code that could be used to run hypothetical growth scenarios for different nations. All of a sudden, a course that might have put many students to sleep just 15 minutes into a traditional 50-minute lecture has them busily executing code to see what GDP growth might look like over the next decade in nations around the world, from America to Zimbabwe.
And, according to the authors of the “Teaching and Learning With Jupyter” e-book, this same type of scenario is happening in nearly every single academic discipline. While many people might assume that data analysis is relevant only for traditional quantitative fields – such as mathematics, physics, or computer science, the e-book illustrates that courses not typically known for their data analysis component are also embracing the Jupyter teaching revolution. For example, journalism courses have morphed into “data journalism” courses, where students learn to back up their journalistic reporting with data. Politics classes are transforming into data-based policy analysis courses, where students can actually see the potential impact of their policies by executing computer code. And, in the same way, a health science course can be transformed into much more of an interactive, computational thinking course.
The perfect merger of Open Source and Open Access
One of the most profound insights of the “Teaching and Learning With Jupyter” e-book is when the book’s authors (a team of academics led by George Washington University associate professor Lorena A. Barba) discuss how and why the Jupyter interactive computing movement has managed to generate so much momentum in such a short period of time. As they see it, Jupyter is a great example of a new, twenty-first-century genre that merges the open-source software movement with the open-access teaching movement.
In the period from 2013 to 2014, these two worlds collided. Before that time, open-source software had been phenomenally popular in the private sector as a way of enabling development teams to scale projects very quickly by using code already available in the public domain. And, thanks to the growth of the Internet, course instructors were already making their course materials widely available on the Internet. These instructors might have used open-source software during the teaching of their courses – but they were not using this software to build and develop courses from scratch, or to create “living documents” that could replace traditional textbooks. That all changed with Jupyter.
So, it’s arguable that the single greatest contribution made by Jupyter is bringing these two worlds together. That led to the creation of the entire Jupyter ecosystem, which includes a collection of standards, a community, and a set of software tools. Instructors, in many ways, are turning into software developers, able to leverage all the tools and approaches of open source software to create open-source courses.
And, with such a strong ecosystem around Jupyter, it became possible to include other players as well. All of a sudden, a major university could turn to their provider of e-learning infrastructure and ask them to include support for Jupyter notebooks as well. This naturally led to the development of even more tools for educators, such as auto-grading for coding assignments included within Jupyter notebooks.
The“living document” concept
According to the authors of the Jupyter e-book, every Jupyter notebook should be thought of as a “living document.” Courses should not be static creations that are created, developed, and followed the same way by every instructor. Instead, they should be dynamic and evolving, informed by the lessons and insights of the Jupyter learning community around a particular discipline.
To make that point clear, the authors provide plenty of advice, tips, and practical insights on how to start using Jupyter in education. And, to highlight their approach to “open source” and “open access,” they are actually hosting the book on Github. In short, the same open-source destination used by developers to host code is now being used by professors and instructors to host their academic materials! And the book was actually produced using a “book sprint,” modeled on the traditional software sprint.
The future of education with Jupyter
After reading “Teaching and Learning With Jupyter,” it will be clear that the educational world is transforming itself right before our very eyes. All the major trends of the past five years – including Big Data and the Learn to Code movement – are combining to create a major source of disruption in academia. As a result, Jupyter really is taking over as the computational front-end for learning and research in many of the top universities around the nation.