Slide 1

Slide 1 text

@MentoredSprints mentored-sprints.dev
 Welcome to PyCon mentored sprints Pycon 2022 https://bit.ly/mentoredsprints-22

Slide 2

Slide 2 text

@MentoredSprints mentored-sprints.dev
 General housekeeping Projects’ intro Mentored sprints intro Intro to open source contributions 1 2 3 4 Agenda

Slide 3

Slide 3 text

@MentoredSprints mentored-sprints.dev
 Your onsite mentored sprints team Zac hatfield-dodds Cheuk ho https://bit.ly/mentoredsprints-22

Slide 4

Slide 4 text

Housekeeping 01

Slide 5

Slide 5 text

@MentoredSprints mentored-sprints.dev
 All in local times ● 2:00 pm - Kick off ● 2:30 pm - Sprints start (roughly) ● 3:45-4:15 pm - Afternoon break ● 5:45 pm Wrap up ● 6:00 pm End Schedule https://bit.ly/mentoredsprints-22

Slide 6

Slide 6 text

@MentoredSprints mentored-sprints.dev
 Code of conduct We want every attendee to feel welcome and have an enjoyable, fulfilling experience at PyCon, even in a virtual event. Please familiarize yourself with PyCon’s Code of Conduct and Attendee Procedure For Reporting Code of Conduct Incidents: https://us.pycon.org/2022/about/code-of-conduct/ Report any incidents to [email protected] https://bit.ly/mentoredsprints-22

Slide 7

Slide 7 text

@MentoredSprints mentored-sprints.dev
 Be kind, respectful and open to help others https://bit.ly/mentoredsprints-22

Slide 8

Slide 8 text

Mentored sprints intro 02

Slide 9

Slide 9 text

@MentoredSprints mentored-sprints.dev
 Build a community Give back to open source Empower folks and support dei efforts Our goals https://bit.ly/mentoredsprints-22

Slide 10

Slide 10 text

@MentoredSprints mentored-sprints.dev
 In a nutshell The Turing Way project illustration by Scriberia. Zenodo: http://doi.org/10.5281/zenodo.3695300

Slide 11

Slide 11 text

@MentoredSprints mentored-sprints.dev
 🔖 https://mentored-sprints.netlify.app/ These slides: https://bit.ly/mentoredsprints-22 Links to keep handy

Slide 12

Slide 12 text

@MentoredSprints mentored-sprints.dev
 How it sprints work Choose project Pair up with someone Find an issue item to work on hands-on Get contributing 🎉 Check in with your mentor and let folks know you are working on it Projects intro soon Optional* https://bit.ly/mentoredsprints-22

Slide 13

Slide 13 text

@MentoredSprints mentored-sprints.dev
 ● Ask for help as needed ● Be mindful and considerate ● Struggling with an issue? They are the best to help with debugging and setup issues Notes about mentors https://mentored-sprints.netlify.app/participants/02-asking-questions/ https://bit.ly/mentoredsprints-22

Slide 14

Slide 14 text

@MentoredSprints mentored-sprints.dev
 General mentors General questions - Python, Git They will be around for the sprint 󰗜

Slide 15

Slide 15 text

@MentoredSprints mentored-sprints.dev
 Pair programming sprinting

Slide 16

Slide 16 text

@MentoredSprints mentored-sprints.dev
 Can I help others? Of course! Pair sprinting is encouraged. https://bit.ly/mentoredsprints-22

Slide 17

Slide 17 text

@MentoredSprints mentored-sprints.dev
 Finding a sprint buddy 󰟲 Someone interested in the same project 👀 An extra pair of eyes are helpful 󰢂 Ask first-some may not be comfortable with close contact/ interactions

Slide 18

Slide 18 text

projects 03

Slide 19

Slide 19 text

@MentoredSprints mentored-sprints.dev
 GNU Mailman https://gitlab.com/mailman

Slide 20

Slide 20 text

@MentoredSprints mentored-sprints.dev
 Hypothesis and all things testing https://github.com/HypothesisWorks/hypothesis

Slide 21

Slide 21 text

@MentoredSprints mentored-sprints.dev
 Spyder https://gitlab.com/mailman

Slide 22

Slide 22 text

@MentoredSprints mentored-sprints.dev
 Arcade https://github.com/pythonarcade/community-rpg

Slide 23

Slide 23 text

@MentoredSprints mentored-sprints.dev
 GDSfactory https://github.com/gdsfactory/gdsfactory

Slide 24

Slide 24 text

@MentoredSprints mentored-sprints.dev
 Ploomber https://github.com/ploomber/ploomber

Slide 25

Slide 25 text

@MentoredSprints mentored-sprints.dev
 Numpy and scipy https://github.com/numpy/numpy, https://github.com/scipy/scipy

Slide 26

Slide 26 text

@MentoredSprints mentored-sprints.dev
 Robyn https://github.com/sansyrox/robyn

Slide 27

Slide 27 text

@MentoredSprints mentored-sprints.dev
 General mentors say hi 󰗜

Slide 28

Slide 28 text

Quick intro to contributions 04

Slide 29

Slide 29 text

@MentoredSprints mentored-sprints.dev
 Git vs github https://bit.ly/mentoredsprints-22

Slide 30

Slide 30 text

@MentoredSprints mentored-sprints.dev
 Git vs gitlab https://bit.ly/mentoredsprints-22

Slide 31

Slide 31 text

@MentoredSprints mentored-sprints.dev
 What makes a folder a “git repository”? 📁 ● Only one thing – the existence of a hidden .git directory. ● Once this is present you can use the git status command https://bit.ly/mentoredsprints-22

Slide 32

Slide 32 text

@MentoredSprints mentored-sprints.dev
 Forks 🍴 ● Since you want to contribute back to the project we have to make a fork ● A fork is your own copy of the source code that we will work on Repo_A - some GitHub account Repo_A_fork - your GitHub account https://bit.ly/mentoredsprints-22

Slide 33

Slide 33 text

@MentoredSprints mentored-sprints.dev
 Forks 🍴 Repo_A - some GitHub account Repo_A_fork - your GitHub account https://bit.ly/mentoredsprints-22

Slide 34

Slide 34 text

@MentoredSprints mentored-sprints.dev
 cloning 󰰁 ● After making a fork you need to clone it locally Repo_A - some GitHub account Repo_A_fork - your GitHub account Your personal Computer (a.k.a local) Example: $ git clone https://github.com/scipy/scipy .git https://bit.ly/mentoredsprints-22

Slide 35

Slide 35 text

@MentoredSprints mentored-sprints.dev
 working 󰟲 ● You work on your fork Repo_A - some GitHub account Repo_A_fork - your GitHub account Your personal Computer (a.k.a local) Push to your Fork - i.e. add changes ✨ https://bit.ly/mentoredsprints-22

Slide 36

Slide 36 text

@MentoredSprints mentored-sprints.dev
 This is how we ask the maintainers to incorporate our changes into the original repository PR (Pull request) 🎁 Repo_A - some GitHub account Repo_A_fork - your GitHub account https://bit.ly/mentoredsprints-22

Slide 37

Slide 37 text

@MentoredSprints mentored-sprints.dev
 1. Find and issue or item to work on 2. Fork the repo and clone it locally 3. Make a new branch git branch new_branch 4. Change to new branch git switch new_branch 5. Work on changes 6. Run tests 7. Commit and push changes (sync your fork and clone) 8. Open a pr (from your remote fork) 9. Review and address comments 10. Celebrate when your PR is merged 🎉 PR lifecycle https://bit.ly/mentoredsprints-22

Slide 38

Slide 38 text

@MentoredSprints mentored-sprints.dev
 You do not have to memorise this We have mentors here today! The best part https://bit.ly/mentoredsprints-22

Slide 39

Slide 39 text

@MentoredSprints mentored-sprints.dev
 Sprinting time! https://bit.ly/mentoredsprints-22

Slide 40

Slide 40 text

@MentoredSprints mentored-sprints.dev
 Reach out to: [email protected] https://mentored-sprints.dev https://twitter.com/MentoredSprints Have fun!