Slide 1

Slide 1 text

Project Jupyter Fernando Perez (@fperez_org) Jupyter.org @ProjectJupyter

Slide 2

Slide 2 text

Evolved from IPython...

Slide 3

Slide 3 text

“Why is it called IPython, if it can do Julia, R, Haskell, Ruby, … ?”

Slide 4

Slide 4 text

IPython ● Interactive Python shell at the terminal ● Kernel for this protocol in Python ● Tools for Interactive Parallel computing ● Network protocol for interactive computing ● Clients for protocol – Console – Qt Console – Notebook ● Notebook file format & tools (nbconvert...) ● Nbviewer

Slide 5

Slide 5 text

IPython … Jupyter ● Interactive Python shell at the terminal ● Kernel for this protocol in Python ● Tools for Interactive Parallel computing ● Network protocol for interactive computing ● Clients for protocol – Console – Qt Console – Notebook ● Notebook file format & tools (nbconvert...) ● Nbviewer Language Agnostic

Slide 6

Slide 6 text

What's in a name? ● Inspired by the open languages of science: – Julia, Python & R – not an acronym: all languages equal class citizens. ● Astronomy and Scientific Python: – A long and fruitful collaboration ● Galileo's notebooks: – the original, open science, data-and-narrative papers – Authorea: “Science was Always meant to be Open”

Slide 7

Slide 7 text

Galileo's Notebook

Slide 8

Slide 8 text

Galileo's Sidereal Messenger: 1610

Slide 9

Slide 9 text

Who? ● The existing IPython Dev team – B. Granger, M. Ragan-Kelley, T. Kluyver, P. Ivanov, M. Bussonnier, J. Frederic, K. Kelley, D. Avila, R. Kern, … ● The larger IPython community (can't name all) ● Contributions from Julia team – S. Karpinski, J. Bezanson, S. Johnson, J. Chen, … ● New collaboration with Google/yt teams – K. Patel, K. Tong, M. Sandler, C. Cortes, M. Turk YOU, from a new direction/community!

Slide 10

Slide 10 text

What next? ● New language agnostic repos go to Jupyter. ● Split main IPython repo into components. ● Build a community across languages – Protocols: computation across networks. – Architecture: clients/servers for interactive computing. – Open formats: for communication and publication. – Tools for collaboration and education ● Colaboratory (next talk), Multiuser Notebook. Follow us on @ProjectJupyter github.com/jupyter