Web-based textbooks and interactive simulations built in Jupyter notebooks provide an entry point for course participants to reproduce content they are shown and dive into the code used to build them. Lindsey Heagy and Rowan Cockett share strategies and tools for developing an educational stack that emerged from the deployment of a course on geophysics (which will be delivered in about 30 locations worldwide this year) and some lessons learned along the way.
At a minimum, the ability to reproduce a numerical simulation or associated figure requires open source software. However, opening the software is insufficient for enabling course participants, many of whom have never programmed before, to engage with and explore the numerical simulations in a nonthreatening way. The first goal is to make concepts accessible—introduce them in context through examples, case histories, and explanations—and provide an interactive way for participants to build intuition around the underlying physical principles. The implemented approach is two-fold: developing web-based textbooks built using Python documentation tools to provide the context and Jupyter Notebook apps that use ipywidgets as the interface for driving numerical simulations around specific concepts. (The numerical software that enables the exploration of these concepts is the same set of tools that Lindsey and Rowan use in their own research—SimPEG.) During the course, the “apps” are introduced over the lunch break, and participants have the opportunity to reproduce figures and to purposefully explore and investigate concepts and questions that came up during the presentation.
The second goal is to make these computational tools accessible so that participants can add them to their own toolboxes. This requires providing resources for participants to look at the code under the hood. Within the GeoSci “textbooks,” source code for static figures is provided, so the figures themselves provide a way for readers to dive a level deeper (e.g., electrostatic sphere). Parallel to this, a second set of Jupyter notebooks have been deployed that walk through the steps taken to set up a numerical simulation (with SimPEG), exposing all of the code required to do so. By having all of the layers, from numerical simulation software to simulation “apps” to the case histories and theory that provide context, available for exploration, there is now a trajectory for participants to dive from course content all the way to the research software used to build that content.
Lindsey Heagy is a PhD candidate at the University of British Columbia studying numerical geophysics. Her work focuses on using electromagnetic geophysics for monitoring subsurface injections, including carbon capture and storage and hydraulic fracturing. She a project lead on GeoSci.xyz, an effort to build collaborative, interactive, web-based textbooks in the geosciences, and a core contributor to SimPEG, an open source framework for geophysical simulation and inversions.
Rowan Cockett is the founder and CTO of 3point Science (acquired by Aranz Geo in 2016), a company building web-based visualization software for the geoscience industry, including Steno3D. Rowan is also a graduate student at the University of British Columbia, where he is researching a numerical framework aimed at increasing quantitative communication in the geosciences developed through his studies on numerical geophysics, subsurface flow, and structural geology. Rowan is interested in the intersection of education, industry, and academia and seeing what happens when you make powerful scientific modeling, visualization, and communication tools accessible through the web. Much of his research is accessible through an open source software initiative for geophysical simulations and parameter estimation (SimPEG) and an open website for geoscience modeling (Visible Geology).
©2017, O'Reilly Media, Inc. • (800) 889-8969 or (707) 827-7019 • Monday-Friday 7:30am-5pm PT • All trademarks and registered trademarks appearing on oreilly.com are the property of their respective owners. • email@example.com