Lesson 20: Contributing to Open Source
Warning
This lesson is under construction. Learn from it at your own risk. If
you have any feedback, please fill out our General Feedback Survey.
Open Source
- Learn lots of new things, and grow as developers.
- Give back to a community that has given you something.
- You have more to contribute than you may realize!
- Meet amazing people.
- Personal fulfillment.
Personal Benefit
- ‘Learning the Ropes’ of a substantial code-base
- Working with others
- Getting code reviewed
- Documenting contributions
- Testing your changes
Free?
- Free Software:
- [Free Software] means that the users have the freedom to run, copy,
distribute, study, change and improve the software.
- The Four Freedoms:
- The freedom to run the program as you wish, for any purpose.
- The freedom to study how the program works, and change it so it does
your computing as you wish. Access to the source code is a
precondition for this.
- The freedom to redistribute copies so you can help your neighbor.
- The freedom to distribute copies of your modified versions to others.
By doing this you can give the whole community a chance to benefit
from your changes. Access to the source code is a precondition for
this.
How to Get Involved
Finding a Project
In order of perceived usefulness:
I Can’t Find a Project I Like!
That’s okay.
First Steps
Find a project
Read Contributing and Getting Started docs
Look at list of issues
Do a thing!
- Write a test
- Fix a typo
- Deploy and update the installation docs
Know your Licenses
Licenses to use:
Licenses to *not* use:
TODO: Find an Open Source Project