Slide 1

Slide 1 text


 Python and Jupyter: Your Gateway for Learning Carol Willing Python Software Foundation Project Jupyter August 19, 2017 PyCon PL 2017 @carolwilling

Slide 2

Slide 2 text

Headline Slide Sub-headline Hello

Slide 3

Slide 3 text

Thank you Organizers Volunteers Sponsors Attendees

Slide 4

Slide 4 text

Carol Willing Project Jupyter Steering Council and Developer Cal Poly SLO Software Engineer Python Software Foundation Recent Director CPython Core Developer Fab Lab San Diego Geek in Residence @willingcarol

Slide 5

Slide 5 text

2012 New to Python Confused - pip and virtualenv Python 2 or 3 ??? Beginner @willingcarol

Slide 6

Slide 6 text

Intro to Python PyLadies San Diego San Diego Python Django tutorial Learner @willingcarol

Slide 7

Slide 7 text

First Python talk

Slide 8

Slide 8 text

A first program

Slide 9

Slide 9 text

http://blog.djangogirls.org/post/107597215478/your-django-story-meet-carol-willing Coach Most of all, believe in yourself.

Slide 10

Slide 10 text

Beginner Learner Coach My programming path Repeat Repeat Repeat Repeat Repeat Repeat Repeat Repeat Repeat

Slide 11

Slide 11 text

or

Slide 12

Slide 12 text

Happiness

Slide 13

Slide 13 text

Beginner Curiosity Engage Connect Wow Beginner

Slide 14

Slide 14 text

Learner Beginner Learner What if... Success and Failure Persistence Questions Feedback

Slide 15

Slide 15 text

Learner Beginner Developer Developer Code Resource Collaborate Solve problems

Slide 16

Slide 16 text

Gateways PyLadies DjangoGirls Workshops Conferences User groups Sprints pyvideo.org Documentation Credit: http://bostonpythonworkshop.com/

Slide 17

Slide 17 text

#PyConPL @willingcarol Gateway to Learning

Slide 18

Slide 18 text

Which path? Credit: http://pythonineducation.org/

Slide 19

Slide 19 text

No content

Slide 20

Slide 20 text

Encouraging contributors to CPython Credit: LWN.net PyCon 2017 Language Summit

Slide 21

Slide 21 text

Tinkering and making

Slide 22

Slide 22 text

MicroPython, micro:bit, Raspberry Pi Credit: micropython.org Credit: https://helloworld.raspberrypi.org/helloworld/issues/1 Credit: http://microbit.org/about/

Slide 23

Slide 23 text

Web Credit: Two Scoops Press

Slide 24

Slide 24 text

“Real world” web http://pyvideo.org/pycon-us-2017/keynote-pythoninstragram.html Credits: Instagram, pyvideo.org

Slide 25

Slide 25 text

Mobile Credit: https://pybee.org/project/using/

Slide 26

Slide 26 text

Python’s power in your hand https://pybee.org/project/about/

Slide 27

Slide 27 text

Python Community

Slide 28

Slide 28 text

No content

Slide 29

Slide 29 text

#PyConPL @willingcarol Gateway to Learning

Slide 30

Slide 30 text

Jupyter Notebook A Jupyter Notebook document with a visualization of measles data.

Slide 31

Slide 31 text

Jupyter Notebook Interactive Browser-based computing environment Exploratory Science, machine learning, visualization, analysis, stats Reproducible document format Code Narrative text (markdown) Equations (LaTeX) Images, visualizations Over 50 programming languages Everything open-source (BSD license)

Slide 32

Slide 32 text

“Jupyter Notebook… will enable data exploration, visualization, and analysis in a way that encourages sound science and speeds progress. -Chris Mentzel The Gordon and Betty Moore Foundation Enabling reproducible science

Slide 33

Slide 33 text

No content

Slide 34

Slide 34 text

A ten year journey. Optimism and hope for the future.

Slide 35

Slide 35 text

No content

Slide 36

Slide 36 text

Live code on Binder https://beta.mybinder.org/v2/gh/minrk/ligo-binder/master?filepath=index.ipynb https://losc.ligo.org/tutorials/

Slide 37

Slide 37 text

Classic Jupyter: More Than Just Notebooks

Slide 38

Slide 38 text

>6M Users https://github.com/jupyter/design/blob/master/surveys/2015-notebook-ux/analysis/report_dashboard.ipynb

Slide 39

Slide 39 text

Over 1M Notebooks on GitHub https://github.com/trending/jupyter-notebook

Slide 40

Slide 40 text

Exploration and experimentation Physical media with electronics Real world, self-directed projects Teaching Signal Processing using Wearables and Jupyter Notebooks Dr. Demba Ba http://pyvideo.org/scipy-2016/labs-in-the-wild-teaching-signal-processing-using-wearables-jupyter-notebooks-scipy-2016.html

Slide 41

Slide 41 text

Python for Geosciences Dr. Kristen Thyng Communication with students using nbgrader http://kristenthyng.com/blog/2016/09/07/ jupyterhub+nbgrader/ Progression to complex examples https://github.com/kthyng/python4geosciences

Slide 42

Slide 42 text

JupyterHub 0.8 Zero to JupyterHub with Kubernetes https://zero-to-jupyterhub.readthedocs.io

Slide 43

Slide 43 text

Start with a proven curriculum http://pyvideo.org/pycon-us-2013/a-hands-on-introduction-to- python-for-beginning-p.html No time consuming installs Hands on Takeaway notebooks https://github.com/pythonsd/intro-to-python Teaching workshops Intro to Python San Diego Python

Slide 44

Slide 44 text

Teaching university students Berkeley Data Science Data8 UC Berkeley http://denero.org/data-8-in-spring-2017.html https://github.com/data-8/jupyterhub-k8s http://data8.org/ http://data.berkeley.edu/ http://data.berkeley.edu/about/videos • Campus wide curriculum • Cross-discipline • Zero to JupyterHub with Kubernetes https://zero-to-jupyterhub.readthedocs.io

Slide 45

Slide 45 text

ipywidgets Docs https://ipywidgets.readthedocs.io cookiecutter to simplify creating new widgets Interactive Documentation Engaging User Content Rapid “what if” scenarios http://jupyter.org/widgets.html

Slide 46

Slide 46 text

Jupyter for Science and Data Science

Slide 47

Slide 47 text

Kernels Output Text Editor Terminal File Browser Notebooks Building Blocks

Slide 48

Slide 48 text

Introducing JupyterLab: The Evolution of the Jupyter Notebook The JupyterLab Team Chris Colbert, Continuum Steven Silvester, Continuum Afshin Darian, Continuum Jason Grout, Bloomberg Brian Granger, Cal Poly Grant Nestor, Cal Poly Cameron Oelsen, Cal Poly Fernando Perez, LBNL/Berkeley Ian Rose, Berkeley Cal Poly Interns The Larger Jupyter Team @jupyterlab on GitHub @ProjectJupyter on Twitter

Slide 49

Slide 49 text

A Whirlwind Tour of JupyterLab

Slide 50

Slide 50 text

New implementation of the notebook

Slide 51

Slide 51 text

Collapsible cells and draggable cells

Slide 52

Slide 52 text

Collaboration between tools A log in the console of commands executed Explore data in console without messing up your notebook

Slide 53

Slide 53 text

Editors Many different editors; preview markdown

Slide 54

Slide 54 text

Editor connected to a console Connect to console and Shift-Enter to run code snippet

Slide 55

Slide 55 text

Single document mode Shift-Command-Enter to enter single document mode. Similar to classic notebook.

Slide 56

Slide 56 text

Extensible “In one night and a couple of dozen lines of code we wrote a Fasta viewer.”

Slide 57

Slide 57 text

Becomes a notebook extension With the same code, the Fasta viewer becomes an extension usable in the notebook.

Slide 58

Slide 58 text

Datasets, grids, and scale 1.2M rows 200Mb csv file. Excel can’t open. A few seconds to load and then “smooth as butter” when scrolling. Rumor has it that Chris Colbert has a trillion row by column demo too.

Slide 59

Slide 59 text

Learn more about JupyterLab http://pyvideo.org/pydata-dc-2016/jupyterlab-building-blocks-for-interactive-computing.html PyData Seattle: https://www.youtube.com/watch?v=tHZT_mpNRcY Demo from SciPy 2017: https://youtu.be/X8zPuBu22Y4?t=44m50s

Slide 60

Slide 60 text

You create the future Credit: http://pythonineducation.org/

Slide 61

Slide 61 text

What will you do? Call to Action

Slide 62

Slide 62 text

Call to action • Join PSF and Python in Education • Attend a user group meeting • Participate in a sprint • Give a talk or write a post • Coach at a workshop

Slide 63

Slide 63 text

Resources Python Software Foundation PyLadies and DjangoGirls Conferences, Workshops and Sprints pyvideo.org Hello World & Raspberry Pi Foundation Python in Education pythonineducation.org

Slide 64

Slide 64 text

Call to action • Join Jupyter mailing lists • Give a talk or write a post • Teach a Carpentry workshop • Contribute to a favorite project • Share your notebooks and Binders

Slide 65

Slide 65 text

Resources jupyter.org pyvideo.org jupyter google groups and Gitter try.jupyter.org Trending notebooks on GitHub nbviewer https://github.com/willingc/2017- science-gateways/blob/master/ resources/resources.md

Slide 66

Slide 66 text

Came for the language. Stayed for the community. Brett Cannon and Pythonistas around the world Credit: Kushal Das

Slide 67

Slide 67 text

Headline Slide Sub-headline Thank you

Slide 68

Slide 68 text

Thank you @willingcarol GitHub: willingc try.jupyter.org www.jupyter.org ipython.org numfocus.org python.org Python Software Foundation Python Dev Guide pyladies.org djangogirls.com

Slide 69

Slide 69 text

Questions?

Slide 70

Slide 70 text

• Kristen Thyng • San Diego Python • Demba Ba • Jeremy Freeman, Binder • Michael Cuthbert, music21 • LIGO • Photo credits on individual slides Attributions and recognition A huge thank you to the Project Jupyter team and community. Your hard work and passion makes this all possible.

Slide 71

Slide 71 text


 Python and Jupyter: Your Gateway for Learning Carol Willing Former Director Python Software Foundation Steering Council Project Jupyter August 19, 2017 PyCon PL 2017 @carolwilling