Integrated Development Environment: Jupyter Notebook
SSI
What is a Jupyter Notebook?
- An Integrated Development Environment, or IDE
- Like the interpreter, but previous commands are interactive
- Can edit previous commands, output is recalculated
- Can mix code with discussion, commentary, and results (e.g. text output, graphs)
Why use Notebooks?
- Support for many languages, e.g. Python, Java, R, Julia, Fortran
- Many helpful features, e.g. autocompletion
- Can save notebooks as a reproducible process to generate output
- Exploratory data analyses and visualisation
- Export formats, e.g. Python, PDF, LaTeX, …
- Excellent for research, demonstration, teaching
- A good compromise between interpreter and full IDE like PyCharm
How can you use Notebooks?
For creating and editing notebooks:
- Interactive notebooks are hosted by a server and provided via a web browser
- Temporary notebooks hosted via JupyterHub, e.g. jupyter.org
- Install and use Jupyter locally
For viewing notebooks statically:
- Using nbviewer at nbviewer.jupyter.org
- GitHub renders notebooks stored in its repositories
The Jupyter Notebook Server
An Example Notebook