Tutorial
Document & Publish Your Workflow: Jupyter Notebooks
Last Updated: Apr 7, 2021
Authors: Megan A. Jones
Last Updated: Apr 7, 2021
In this tutorial we learn how to effectively and efficiently document and publish our workflows online.
At the end of this activity, you will be able to:
As we read in the Reproducible Science overview, the four facets of reproducible science are:
This week we will learn about the Jupyter Notebook as a tool to document and publish (disseminate) your code and code output.
View Slideshow: Share, Publish & Archive - from the Reproducible Science Curriculum
“The Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and explanatory text. Uses include: data cleaning and transformation, numerical simulation, statistical modeling, machine learning and much more." -- Jupyter Notebook documentation.
We use markdown syntax in Notebook documents to document workflows and to share data processing, analysis and visualization outputs. We can also use it to create documents that combine code in your language of choice, output and text.
The Jupyter Notebooks grew out of iPython. Jupyter is a close acronym meaning Julia, Python, and R, which were the first languages outside Python that the Jupyter application was designed for. Jupyter Notebooks now supports over 40 coding languages. You may still find some references to iPython in materials related to Jupyter Notebooks. This series will focus on using Jupyter Notebooks with Python, but the information presented can apply to other languages as well.
The Jupyter Notebooks application is a browser-based application. Therefore, you need an updated browser (the Jupyter programmers recommend Mozilla Firefox or Google Chrome, but not Microsoft Explorer). When installed on your computer, you can always access the app even without internet access. You can also use Jupyter installed on a remote server. For example, Jupyter runs a training (temporary) server based version.
There are many advantages to using Jupyter Notebooks in your work:
Before we jump into how to work with notebooks, check out a few shared notebooks. As you look at these different notebooks, what aspects of the layout do you like, what don't you like? Is there a place in your current workflow that these notebooks would be useful?
In the next tutorial, Introduction to using Jupyter Notebooks, we will learn more about working with Jupyter Notebooks.