1 of 27

Jin Hyun Cheong

Vassiki Chauhan

2 of 27

Galileo Galilei

Discovered Jupyter moons 1613

3 of 27

Fernando Perez

Invented IPython (2001), which led to Project Jupyter (2011, 2014)

4 of 27

What are Jupyter Notebooks?

Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and narrative text.

5 of 27

6 of 27

Web browser interface

7 of 27

Kernels

8 of 27

Cells

9 of 27

Cells

10 of 27

Jupyter architecture

11 of 27

12 of 27

13 of 27

14 of 27

15 of 27

16 of 27

17 of 27

Overview

Notebooks are interactive

Markdown, python code, visualizations, import images, widgets.

Notebooks can be shared

Nbviewer, entire books in ipynb.

Notebooks are multilingual

Examples in R & MATLAB

Customization

Table of Contents, Execution time & profiling, scratch space, code & section folding, extensions, themes, look & feel (CSS + JavaScript), debugging, memory usage, profiling, loading scripts etc.

18 of 27

19 of 27

demo

20 of 27

Jupyter Lab

IDE in a browser

Vassiki Chauhan

21 of 27

Imagine a world where...

  • You didn’t spend hours scrolling up and down your unmanageably large Jupyter notebook

22 of 27

Imagine a world where...

  • You didn’t spend hours scrolling up and down your unmanageably large Jupyter notebook
  • Did not have to waste code cell after code cell to “see what the data looks like”

23 of 27

Imagine a world where...

  • You didn’t spend hours scrolling up and down your unmanageably large Jupyter notebook
  • Did not have to waste code cell after code cell to “see what the data looks like”
  • Had the ability to deal with file types other .ipynb

24 of 27

Imagine a world where...

  • You didn’t spend hours scrolling up and down your unmanageably large Jupyter notebook
  • Did not have to waste code cell after code cell to “see what the data looks like”
  • Had the ability to deal with file types other .ipynb
  • and run code from text editors…?

25 of 27

JupyterLab is a next-generation web-based user interface for Project Jupyter.

26 of 27

Jupyter Lab Features

  • Code Consoles provide transient scratchpads for running code interactively, with full support for rich output. A code console can be linked to a notebook kernel as a computation log from the notebook, for example.
  • Kernel-backed documents enable code in any text file (Markdown, Python, R, LaTeX, etc.) to be run interactively in any Jupyter kernel.
  • Notebook cell outputs can be mirrored into their own tab, side by side with the notebook, enabling simple dashboards with interactive controls backed by a kernel.
  • Multiple views of documents with different editors or viewers enable live editing of documents reflected in other viewers. For example, it is easy to have live preview of Markdown, Delimiter-separated Values, or Vega/Vega-Lite documents.

https://jupyterlab.readthedocs.io/en/latest/getting_started/overview.html

27 of 27

Demo