Slide 1

Slide 1 text

Contributing to Python IndyPy January 2023 Mariatta

Slide 2

Slide 2 text

Mariatta Senior Developer Relations Engineer @ Google Vancouver, Canada She/her @[email protected] @mariatta @mariatta81 IndyPy January 2023 Contributing to Python @[email protected]

Slide 3

Slide 3 text

Mariatta PyCon US Chair 2023-2024 https://us.pycon.org/2023/ Salt Lake City, USA April 19-27, 2023 Travel Grants application deadline: Jan 20, 2023 IndyPy January 2023 Contributing to Python @[email protected]

Slide 4

Slide 4 text

Python Core Developer IndyPy January 2023 Contributing to Python @[email protected]

Slide 5

Slide 5 text

Python Core Developer What people think: What I really do: ??? IndyPy January 2023 Contributing to Python @[email protected] C Programmer

Slide 6

Slide 6 text

https://github.com/python/cpython IndyPy January 2023 Contributing to Python @[email protected]

Slide 7

Slide 7 text

Python Core Developer C Programmer What people think: What I really do: Python Documentation DevGuide Core-Work f low GitHub Bots Contributor Experience Docs Community Language Summit IndyPy January 2023 Contributing to Python @[email protected]

Slide 8

Slide 8 text

Open Source ??? IndyPy January 2023 Contributing to Python @[email protected]

Slide 9

Slide 9 text

Open Source Source code available What people think: What it really is: IndyPy January 2023 Contributing to Python @[email protected] ???

Slide 10

Slide 10 text

Open Source Source code available What people think: What it really is: Source code available License Community Contributions IndyPy January 2023 Contributing to Python @[email protected]

Slide 11

Slide 11 text

Open Source Source code available What people think: What it really is: IndyPy January 2023 Contributing to Python @[email protected] Source code available License Community Contributions

Slide 12

Slide 12 text

Open Source Source code available What people think: What it really is: IndyPy January 2023 Contributing to Python @[email protected] Source code available License Community Contributions

Slide 13

Slide 13 text

Contributing to Python Make lots of pull requests What people think What it really is: Make pull requests Review lots of pull requests Read mailing lists / Discourse forums Participate in discussions Replicate bugs Write Tests Issue Triage Documentation Infrastructure Mentorship IndyPy January 2023 Contributing to Python @[email protected]

Slide 14

Slide 14 text

How to Contribute to Python in 2023 Read the DevGuide https://devguide.python.org Getting Started Work f low Python Release Cycle Documentation Triaging Guide Testing and Buildbots Experts Index Translating Python Internals IndyPy January 2023 Contributing to Python @[email protected]

Slide 15

Slide 15 text

How to Contribute to Python in 2023 Get the Source Code & Setup env Make changes (code, test suite, docs) Sign the CLA Write the Misc/News f ile (use Blurb/Blurb-it tool) Backport (if applicable) IndyPy January 2023 Contributing to Python @[email protected]

Slide 16

Slide 16 text

How to Compile and Build Python in 2023 https://devguide.python.org/getting-started/setup-building/ IndyPy January 2023 Contributing to Python @[email protected]

Slide 17

Slide 17 text

How to Run Python Test Suite in 2023 https://devguide.python.org/testing/ IndyPy January 2023 Contributing to Python @[email protected]

Slide 18

Slide 18 text

How to Build Python Docs in 2023 https://devguide.python.org/documentation/ IndyPy January 2023 Contributing to Python @[email protected]

Slide 19

Slide 19 text

Contributing to Documentation Intro to reStructuredText and Sphinx https://www.youtube.com/watch?v=v4eoYpCON_c Documentation Forum https://discuss.python.org/c/documentation/26 Docs Issues / PRs https://github.com/python/cpython/issues?q=is%3Aopen+is%3Aissue+label%3Adocs Docs Community https://github.com/python/docs-community IndyPy January 2023 Contributing to Python @[email protected]

Slide 20

Slide 20 text

Contributing to Documentation Write lots of text Correcting grammar What people think: What it really is: Write text Proofread Translation Tools Sphinx Theme What’s New SEO DevGuide Diataxis Docs Triage IndyPy January 2023 Contributing to Python @[email protected]

Slide 21

Slide 21 text

How to Choose an Issue to Work on It’s up to you Find a focus area of your interest Subscribe to Labeled Issues Learning how to f ix an issue is part of the process Spend time to research the issue and solution IndyPy January 2023 Contributing to Python @[email protected]

Slide 22

Slide 22 text

Don’t: Do: How to Review PRs No additional privilege needed Review the original issue Explain your thought process Test and validate the change Thank the contributor Suggest improvement Approve without comment https://devguide.python.org/getting-started/pull-request-lifecycle/#leaving-a-pull-request-review-on-github IndyPy January 2023 Contributing to Python @[email protected]

Slide 23

Slide 23 text

How to Triage https://devguide.python.org/triage/triaging/ IndyPy January 2023 Contributing to Python @[email protected] Python Triage privileges needed Classify Issues Set appropriate labels Set Assignees, Reviewers, etc Close invalid issues Notify relevant core devs

Slide 24

Slide 24 text

How to Triage IndyPy January 2023 Contributing to Python @[email protected] When you don’t have the triaging privileges Review incoming Issues and PRs Assist other contributors Participate in issue discussions Suggest next action

Slide 25

Slide 25 text

How to Become a Triager IndyPy January 2023 Contributing to Python @[email protected] https://devguide.python.org/triage/triage-team/#becoming-a-member-of-the-python-triage-team Either nominated by a core dev or Self nominate, and approved by one core dev

Slide 26

Slide 26 text

How to Become a Triager IndyPy January 2023 Contributing to Python @[email protected] https://devguide.python.org/triage/triage-team/#becoming-a-member-of-the-python-triage-team Actively contributing over a period of time (PRs, reviews, Docs, PEPs, etc) Positive interactions with the team (open, considerate, & respectful) https://www.python.org/psf/conduct/

Slide 27

Slide 27 text

Recent Triagers IndyPy January 2023 Contributing to Python @[email protected] Barney Gale https://github.com/python/core-work f low/issues/485 Michael Droettboom https://github.com/python/core-work f low/issues/472 Thomas Grainger https://github.com/python/core-work f low/issues/471 Carl Meyer https://github.com/python/core-work f low/issues/448

Slide 28

Slide 28 text

How to Become a Core Developer IndyPy January 2023 Contributing to Python @[email protected] https://peps.python.org/pep-0013/#membership Python core team members demonstrate: a good grasp of the philosophy of the Python Project a solid track record of being constructive and helpful signi f icant contributions to the project’s goals, in any form willingness to dedicate some time to improving Python

Slide 29

Slide 29 text

How to Become a Core Developer IndyPy January 2023 Contributing to Python @[email protected] https://peps.python.org/pep-0013/#membership Nominated by a core dev 2/3 positive votes in the nomination poll Not vetoed by the Steering Council

Slide 30

Slide 30 text

Recent Core Devs IndyPy January 2023 Contributing to Python @[email protected] Shantanu Jain https://discuss.python.org/t/vote-to-promote-shantanu/21846 Kumar Aditya https://discuss.python.org/t/vote-to-promote-kumar-aditya/21033 Hugo van Kemenade https://discuss.python.org/t/vote-to-promote-hugo-van-kemenade/20990 Alex Waygood https://discuss.python.org/t/vote-to-promote-alex-waygood/19690

Slide 31

Slide 31 text

Thank you! @[email protected] Contributing to Python @[email protected] IndyPy January 2023