Slide 1

Slide 1 text

Tania Allard, PhD @ixek Developer Advocate at Microsoft Jupyter notebooks: Friends or foes? PyCon CZ 2019 CC-BY licensed bit.ly/PyConCZ-Jupyter

Slide 2

Slide 2 text

2 bit.ly/PyConCZ-Jupyter @ixek

Slide 3

Slide 3 text

3 @ixek What comes to your mind with the word Jupyter?

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

5 What it really is… @ixek Ecosystem of open tools and infrastructure A community of people A collection of language agnostic and modular tools A means to empower people to use open tools

Slide 6

Slide 6 text

6 A familiar example @ixek

Slide 7

Slide 7 text

7 So what are the notebooks? @ixek

Slide 8

Slide 8 text

8 @ixek A stack of modular & open tools

Slide 9

Slide 9 text

9 Jupyterlab @ixek

Slide 10

Slide 10 text

10 Nteract @ixek

Slide 11

Slide 11 text

11 Azure notebooks @ixek " https://notebooks.azure.com

Slide 12

Slide 12 text

12 And why does everyone love the notebooks? @ixek

Slide 13

Slide 13 text

13 Not only machine readable Human readable Immediate code execution and inspection Literate programming Fast iteration Text, images and code all self contained Prototype and dissemination @ixek

Slide 14

Slide 14 text

14 One notebook to rule them all Turn your notebooks into interactive presentations Presentation @ixek Notebooks as usual (nbviewer, GitHub, GitLab) Static Binderize your notebooks Interactive Generate a book (or an e-book) out of a set of notebooks Long-format

Slide 15

Slide 15 text

RISE

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text

No content

Slide 20

Slide 20 text

20 Even more interactive @ixek

Slide 21

Slide 21 text

ipywidgets

Slide 22

Slide 22 text

22 Create your own dashboards using Jupyter If you were ever jealous of Shiny apps @ixek

Slide 23

Slide 23 text

No content

Slide 24

Slide 24 text

24 @ixek They now support async IPython 7.0 now suports AsyncIO so you can now natively use it with the IPython REPL and the notebooks (and should also work with all the other interfaces).

Slide 25

Slide 25 text

25 It is all good and fun… until @ixek

Slide 26

Slide 26 text

26 The community and the ecosystem is so vast… I struggle to keep up to date @ixek

Slide 27

Slide 27 text

No content

Slide 28

Slide 28 text

28 Hidden states and non-intuitive workflows @ixek

Slide 29

Slide 29 text

29 @ixek

Slide 30

Slide 30 text

30 I spend so much time reviewing code @ixek

Slide 31

Slide 31 text

31 @ixek

Slide 32

Slide 32 text

32 @ixek

Slide 33

Slide 33 text

33 Notebooks are not for production… or scale @ixek

Slide 34

Slide 34 text

34 @ixek

Slide 35

Slide 35 text

35 Taming the beast @ixek Make your life easier

Slide 36

Slide 36 text

36 Avoid the urge to reinvent the wheel @ixek

Slide 37

Slide 37 text

37 Enforce good practices nbstripout @ixek

Slide 38

Slide 38 text

38 Towards notebooks diffing and merging nbdime @ixek

Slide 39

Slide 39 text

39 It can be used in production @ixek

Slide 40

Slide 40 text

40 It scales and loves the cloud ☁ @ixek

Slide 41

Slide 41 text

41 @ixek

Slide 42

Slide 42 text

42 @ixek

Slide 43

Slide 43 text

43 Consider contributing back @ixek

Slide 44

Slide 44 text

44 Packages mentioned in the slides • Binder https://mybinder.org/ • Repo2docker https://repo2docker.readthedocs.io/en/latest/ • Nbconvert https://github.com/jupyter/nbconvert • Nbdime https://github.com/jupyter/nbdime • voilá https://github.com/QuantStack/voila • Panel https://panel.pyviz.org/index.html • RISE https://rise.readthedocs.io/en/stable/ • Ipywidgets https://ipywidgets.readthedocs.io/en/stable/ • Azure notebooks https://notebooks.azure.com/ • BinderHub https://binderhub.readthedocs.io/ • JupyterHUb https://jupyterhub.readthedocs.io/en/stable/ • nbstripout https://github.com/kynan/nbstripout • Jupyterbook https://jupyter.org/jupyter-book/intro.html @ixek

Slide 45

Slide 45 text

45 @ixek Thank you Contact me: @ixek [email protected] bit.ly/PyConCZ-Jupyter

Slide 46

Slide 46 text

46 Credits @ixek ● Icons by Flaticon ● Infographics by Freepik ● Chris Holdgraf from Jupyter and Berkley for inspiration and craking slides https://speakerdeck.com/choldgraf/open- infrastructure-in-the-cloud-with-jupyterhub ● The lovely Jupyter community