Contributing to Open Source
By Ravin Kumar
What we’ll cover
Warning - These slides will go by fast
My story
What is Open Source?
What is open source?
Notable Open Source Software (OSS)
“Free as in speech not as in beer”
Not just software
Your Story
Who’s contributed to open source?
Who’s wanted to contribute to open source?
Who can contribute to open source?
Everyone can contribute
(even if you don’t code)
Why Contribute?
Ways to Contribute
Ways to contribute (that don’t require code)
We’re going to focus on two paths
Three example projects
My Core Contributor Projects
My Core Contributor Projects
My Core Contributor Projects
PyMC4
Bug Reporting
Bug reports are very valuable
Writing a good bug report
Example of a bad bug report
How not to contribute
Code Contributions
Baseline Skills for Contributions (Once per lifetime)
In ranked order
Note: Git is not the only version control system
but it is the most popular right now so we’ll focus on it
Starting on existing project (Once Per Project)
Making regular contributions (Each Pull Request)
Every contribution follows this general pattern
The Bimodal Distribution of emotions
Bad News
Good News
Baseline Skills
Most crucial skill - git
My git tools
Code Tooling
Navigating Github
Once per project skills
Making your first code contribution
Every Pull Request
Making your first code contribution
The code process
Open sourcing your own library
Steps
Suggestions for starting
Your first contribution playbook
Start small
Live Demo
(Or questions if demo fails)
Appendix
Finding a match
What’s important when finding a project
You
Project
When picking a project pay attention to
Community
When picking a community pay attention to
Why I picked my libraries