Python 2020: The State of the Language

Python 2020: The State of the Language

Presented virtually for Python fwdays 2020 online conference.

The Python language serves many communities: web, science, data science, devops, embedded systems, and education. The talk will discuss what's new in Python 3.8 and the upcoming 3.9 releases. We'll wrap up by discussing how Binder and Jupyter impact in our online world.

C8eedb2bca5728f0f73294b5b5a0222e?s=128

Carol Willing

May 23, 2020
Tweet

Transcript

  1. Python 2020
 The State of the Language Carol Willing Python

    and Project Jupyter
  2. @WillingCarol Change 2

  3. @WillingCarol People Language Collaboration 3

  4. @WillingCarol Uses and Users 4

  5. @WillingCarol 5 https://www.jetbrains.com/lp/python-developers-survey-2019/

  6. @WillingCarol Governance 6

  7. PEP 8016 The Steering Council Model

  8. PEP 13: Python Language Governance ‣ Quality and Stability ‣

    Contributing accessible, inclusive, sustainable ‣ Core team and PSF relationship ‣ Decision making processes for PEPs ‣ Seek consensus
  9. Steering Council Barry Warsaw Brett Cannon Carol Willing Thomas Wouters

    Victor Stinner
  10. @WillingCarol Releases 10

  11. @WillingCarol Our time is limited 11

  12. @WillingCarol Community is key 12 Python Brasil official photo. The

    sign represents Python in BSL (Brazilian Sign Language), made by Amanda and Sávio at Python Sul 2018 https://pyfound.blogspot.com/2019/02/python-brasil-people-technology.html PyLadiesBRConf official photo PyLadiesBRConf official photo
  13. @WillingCarol Python 3.8 13 https://docs.python.org/3/whatsnew/3.8.html https://realpython.com/python38-new-features/ Release Manager: Łukasz Langa

  14. @WillingCarol Python 3.9 14 https://docs.python.org/3.9/whatsnew/3.9.html Release Manager: Łukasz Langa https://pythoninsider.blogspot.com/2020/05/python-390b1-is-now-available-for.html

  15. @WillingCarol https://docs.python.org/3.9/whatsnew/3.9.html#pep-617-new-parser 15 PEP 617 New PEG Parser

  16. @WillingCarol https://docs.python.org/3.9/whatsnew/3.9.html#dictionary-merge-update-operators 16 PEP 584 Dictionary Merge and Update Operators

  17. @WillingCarol 17 >>> d = {"one": 1, "two": 2, "three":

    3} >>> e = {"ten": 10, "twenty": 20, "thirty": 30} >>> d | e {'one': 1, 'two': 2, 'three': 3, 'ten': 10, 'twenty': 20, 'thirty': 30} d | e Merge
  18. @WillingCarol https://docs.python.org/3.9/whatsnew/3.9.html#dictionary-merge-update-operators 18 PEP 616 New removeprefix() and removesuffix() string

    methods
  19. @WillingCarol 19 >>> 'Mrs. White'.removeprefix('Mrs. ') 'White' >>> 'Mrs. Purple'.removeprefix('Mrs.

    ') 'Purple' >>> 'Mr. Green'.removeprefix('Mrs. ') 'Mr. Green'
  20. @WillingCarol https://www.python.org/dev/peps/pep-0615/ https://docs.python.org/3.9/library/zoneinfo.html#module-zoneinfo 20 PEP 615 Add zoneinfo IANA Time

    Zone
  21. @WillingCarol Python Language Summit 21

  22. @WillingCarol 22 HPy HPy uses Handles instead of Ref Counting

    PyObject *a = PyLong_FromLong(42); PyObject *b = a; Py_INCREF(b); Py_DECREF(a); Py_DECREF(a); // Ok HPy a = HPyLong_FromLong(ctx, 42); HPy b = HPy_Dup(ctx, a); HPy_Close(a);
  23. @WillingCarol 23 https://pyfound.blogspot.com/2020/05/cpython-on-mobile-platforms.html Python on Mobile

  24. @WillingCarol Documentation Editorial Board as a Python Steering Council Workgroup

    24
  25. @WillingCarol Editorial Board 25 Assets Style and Tone Guides Language

    Translations Presentation - Landing Page
  26. @WillingCarol Learn more about CPython 26

  27. @WillingCarol 27 import asyncio

  28. @WillingCarol Learn about CPython Internals 28

  29. @WillingCarol Collaboration 29

  30. @WillingCarol 30 Using Python to grow its world usage and

    meet community needs
  31. Jupyter Notebook A Jupyter Notebook document with a visualization of

    measles data.
  32. Jupyter ‣ Growth ‣ ACM Award ‣ Industry adoption ‣

    Creative uses ‣ Open Source Book
  33. zero-to-jupyterhub.readthedocs.io

  34. 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

  35. @WillingCarol People Language Collaboration 35

  36. @WillingCarol Many Possibilities 36

  37. @WillingCarol What will you create? 37

  38. @WillingCarol 38 Thank you

  39. Python 2020
 The State of the Language Carol Willing Python

    and Project Jupyter