From the advent of the printing press to the emergence of the Internet, knowledge has become increasingly abundant and accessible. But as we move into the future, I ponder how accessible, interactive, and understandable knowledge will be as more and more individuals are connected to the Internet and as computing technologies advance. How will the techniques by which we share knowledge change? How will the children of the future learn about science? How will the scientists of the future expand our thinking? I think the answer is Jupyter Notebooks.
Jupyter Notebooks are interactive web applications that allow users to create and share documents that contain live code, equations, visualizations, and explanatory text. Project Jupyter is an open source project that develops the Notebook and other components that relate to it. But what excites me most about the project is not the technology, or the fantastic development team, or the extremely open nature of the community, rather its potential to change the way that millions of people understand science. Originally a Python-only project called IPython, Project Jupyter is an effort to expand the project to allow interactive notebooks to be written in other languages as well.
As our understanding of the world expands, it is important to ensure that that knowledge is equally accessible by all members of our society. This is vital to the progress of humanity. This philosophy, which is shared by the open source software movement, is not new; it has been around since the 1600s when the first academic journals were published for public reading. The Jupyter Notebook hints at what the academic journals of tomorrow will look like and paints a promising picture. They will be interactive, visualization-focused, user-friendly, and include code and data as first-class citizens. I believe that these unique characteristics will go a long way toward bridging the gap of understanding between the scientific community and the general public through both narrative and code—a gap that, when bridged, will have a significant impact on our society.
But the work that has been completed thus far is only the beginning for the project. In a grant proposal that was recently submitted to several nonprofit organizations, Fernando Perez and Brian Granger outline several bold visions for the project that will allow the development of software that is as collaborative and rigorous as the scientific community itself. I believe that with our dedicated and passionate core team, our willingness to grow as an open source project, and our ambitious visions, the project is set to accomplish these goals and many more.
If you'd like to experiment with a Jupyter Notebook, please visit our demo page. If you are interested in contributing to the project (and to the future of open science), please visit our GitHub organization to explore the projects that we maintain. If you are interested in joining the discussion around Jupyter, feel free to join our mailing list.
Project Jupyter is financially sponsored by the Helmsley Charitable Trust, the Alfred P. Sloan Foundation, the Gordon and Betty Moore Foundation, and various corporate sponsors. The project is part of the 501(c)3 NumFOCUS Foundation, a nonprofit that supports the development of open source computing tools for scientific computing and data science. The development of the project is supported by several full-time and volunteer developers, and we are always looking for individuals and organizations with which to collaborate.