# Notebooks

Overview of notebooks in scientific computing: Interactive Notebooks: Sharing the code (2014) in Nature by Helen Shen.

### Jupyter Notebooks (formerly IPython)

Stands for Julia + Python + R (Ju + pyt + r)

- Jupyter Project home.
- Documentation.
- Nbviewer shows a variety of sample notebooks.
- List of programming language kernels, notable additional languages include: Haskell, Ruby, Sage, Scala, Erlang, Perl, Octave, Matlab, Wolfram Mathematica, and Lua.
- The Markdown Language works within any cell.
- Here are a series of Caltech tutorials using Jupyter from the Bi.1X Course: The Great Ideas of Biology: setting up a Jupyter Python environment, basic bioinformatics, using E.Coli images to learn image processing, and nonlinear regression.
- Here is a Quantitative Economics course using Jupyer notebooks in either a Python version or a Julia version.
- Here are some notebook tutorials in Julia for Optimization.
- Jupyter is about to release a next generation notebook, with a new user interface (UI) called JupyterLab.

### RStudio Notebooks

RStudio is an Interactive Development Environment (IDE) for R.

- The packages R Markdown and knitr create interactive notebooks and reports.
- R Markdown Notebook Documentation.
- A few other languages can be incorporated, notably Python and SQL using knitr.
- Tutorials using R Markdown from the University of Georgia GEOL 8370 Data Analysis in the Geosciences are found under “R Tips.”

### Mathematica Notebooks

- Interactive Mathematica Notebooks can be shared and viewed with the Computable Document Format (CBF) and CBF Viewer, very similar to the PDF and PDF Reader combination from Adobe.
- A free version of Mathematica (for non-commercial use) is available for use on the Raspberry Pi.
- The Mathematica Journal is a scientific journal composed entirely of Mathematica notebooks (downloadable in PDF, CBF, and NB formats).