Introduction
What are computational notebooks?
Computational Notebooks are tools that let you tell stories with data. They are an example of the concept of “literate programming” which involves explaining the different elements of code that you are writing with comments or narrative built into and around the code.
These environments are not intended for developing complex applications but are rather explanatory and narrative tools. Because Jupyter notebooks are composed of pieces of code, text-based data files, and markdown, they are possible to replicate and move to other formats.
Other notebook environments:
- Google Collaboratory - Jupyter based computational notebook environment accessible through a Google Account.
- R Notebooks
Why is reproducibility in research important?
Source: phdcomics.com, used in https://coderefinery.github.io/reproducible-research/01-motivation/
Computational reproducibility means that the next person who looks at your work is able to understand all steps you took to attain your results. They have access to the relevant data, the process, as well as the outputs. What’s more they can even build onto what you’ve done without having to dig for pieces of your work that might be lost to time.
Ways of working reproducibly may include documenting process thoroughly; ensuring your data, process, and outputs are all fully available to future scholars; ensuring that everything is available under the most open copyright licenses allowable by your work.
Explore the Reproducibility and Replicability section of UBC’s Program for Open Scholarship in Education to learn more.