Slide 1

Slide 1 text


 Learning Python Tips from Cognitive Science, Jupyter, and Community Carol Willing PyCaribbean 2018

Slide 2

Slide 2 text

@WillingCarol Welcome and Thank You

Slide 3

Slide 3 text

Why learn Python?

Slide 4

Slide 4 text

Where should I start? Time Confused 129,932 Projects https://pypi.org/

Slide 5

Slide 5 text

Will I be able to learn ____________? Doubt Fear Alone http://pgbovine.net/publications/conversational-programmers-learning-failures_CHI-2018.pdf

Slide 6

Slide 6 text

@WillingCarol Obstacles Peaceful and confident (most days)

Slide 7

Slide 7 text

@WillingCarol 1998

Slide 8

Slide 8 text

Learning Tagalog

Slide 9

Slide 9 text

Learning Python 1 $ conda create -n py1env python=1.0 $ source activate py1env $ python

Slide 10

Slide 10 text

@WillingCarol 2018

Slide 11

Slide 11 text

Learning Python 3

Slide 12

Slide 12 text

Learning and Cognitive Science Thinking Ideas

Slide 13

Slide 13 text

What is Cognitive Science? Anthropology Linguistics Education AI Psychology Philosophy Neuroscience

Slide 14

Slide 14 text

Why Cognitive Science? Inclusive

Slide 15

Slide 15 text

Learning results from what a student does and thinks and only what the student does and thinks. Herbert A. Simon

Slide 16

Slide 16 text

The teacher can advance learning only by influencing what the student does to learn. Herbert A. Simon Credit: http://bostonpythonworkshop.com/

Slide 17

Slide 17 text


 Learning conceptually driven experiences lifetime "top-down"

Slide 18

Slide 18 text


 Learning "bottom-up" data driven five senses now

Slide 19

Slide 19 text

@WillingCarol "bottom-up" "top-down" Effective Learning

Slide 20

Slide 20 text

Language

Slide 21

Slide 21 text

Python - The Beginning the most important lesson I learned was about sharing – Guido van Rossum http://neopythonic.blogspot.com/2016/04/kings-day-speech.html

Slide 22

Slide 22 text

Designed for Learning In reality, programming languages are how programmers express and communicate ideas — and the audience for those ideas is other programmers, not computers. http://neopythonic.blogspot.com/2016/04/kings-day-speech.html – Guido van Rossum

Slide 23

Slide 23 text

Python 3 https://github.com/jakevdp/WhirlwindTourOfPython https://www.youtube.com/watch?v=M4w4wKveVo4 f-strings

Slide 24

Slide 24 text

Scratch to Python 3 Joshua Lowe EduBlocks

Slide 25

Slide 25 text

Mu https://docs.python.org/3.7/library/turtle.html Python 3 code editor for learning https://www.youtube.com/watch?v=HrblTJnAnPw https://codewith.mu

Slide 26

Slide 26 text

Visualize Get live help pythontutor.com Philip Guo (UCSD Cognitive Science)

Slide 27

Slide 27 text

@WillingCarol Learn Python is designed for your success.

Slide 28

Slide 28 text

Tools and Libraries

Slide 29

Slide 29 text

Notebooks engage learners

Slide 30

Slide 30 text

JupyterLab Try it on Binder. next-generation web-based user interface for Project Jupyter Special thanks to Jessica Forde.

Slide 31

Slide 31 text

@WillingCarol HUB A JUPYTER NOTEBOOK FOR EVERYONE

Slide 32

Slide 32 text

@WillingCarol JupyterHub: Deploy with Kubernetes https://zero-to-jupyterhub.readthedocs.io/en/latest/

Slide 33

Slide 33 text

JupyterHub for Teaching https://cdnapisec.kaltura.com/index.php/extwidget/openGraph/wid/1_k6uwj8g1 https://atg.fas.harvard.edu/news/seas-computing-and-academic-technology-fas-launch-jupyterhub-canvas-integration • Exploration and experimentation http://pyvideo.org/scipy-2016/labs-in-the-wild-teaching- signal-processing-using-wearables-jupyter-notebooks- scipy-2016.html • Physical media with wearables and electronics • Real world, self-directed projects Teaching Signal Processing using Wearables and Jupyter Notebooks Dr. Demba Ba

Slide 34

Slide 34 text

Binder https://blog.jupyter.org/binder-2-0-a-tech-guide-2017-fd40515a3a84 https://elifesciences.org/labs/8653a61d/introducing-binder-2-0-share-your-interactive- research-environment https://www.nature.com/articles/d41586-018-01322-9 mybinder.org

Slide 35

Slide 35 text

Build your own BinderHub https://binderhub.readthedocs.io/en/latest/

Slide 36

Slide 36 text

@WillingCarol Learn Build Rich ecosystem 5 lines of code or less Interactive creation

Slide 37

Slide 37 text

Community

Slide 38

Slide 38 text

Invite new learners Use a proven curriculum Engage students Reduce stress with notebooks Meetups and Workshops Intro to Python - San Diego Python http://pyvideo.org/pycon-us-2013/a-hands-on-introduction-to-python-for-beginning-p.html https://github.com/pythonsd/intro-to-python

Slide 39

Slide 39 text

DjangoGirls and PyLadies

Slide 40

Slide 40 text

Teaching Teachers Picademy

Slide 41

Slide 41 text

Building helpful community

Slide 42

Slide 42 text

Python Software Foundation

Slide 43

Slide 43 text

...a programming language created by a community fosters happiness in its users around the world. – Guido van Rossum

Slide 44

Slide 44 text

@WillingCarol Learn Share Build

Slide 45

Slide 45 text

@WillingCarol YOU

Slide 46

Slide 46 text

@WillingCarol Immerse yourself

Slide 47

Slide 47 text

@WillingCarol Choose a language designed for learning

Slide 48

Slide 48 text

@WillingCarol Use learner-friendly tools

Slide 49

Slide 49 text

@WillingCarol Encourage others and share

Slide 50

Slide 50 text

@WillingCarol Enjoy the journey

Slide 51

Slide 51 text

@WillingCarol YOU + Python = Success

Slide 52

Slide 52 text

@WillingCarol Call to Action Set measurable goals Believe it is possible Work together What will you do?

Slide 53

Slide 53 text

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

Slide 54

Slide 54 text

@WillingCarol 54 Thank you to the many, many Pythonistas who encourage, gently nudge, and care for others. You make a difference in the world.

Slide 55

Slide 55 text

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

Slide 56

Slide 56 text

•San Diego Python •Demba Ba •Project Jupyter team and community •Photo credits and links on individual slides Attributions and recognition