What Does it Mean to Contribute?
In the world of open-source software, it is commonplace even for complete strangers to make improvements, fixes or adjustments to the software whose source code you publish online. This is a core benefit of open-source software: the people who use and/or take interest in your software are always in the position to put their time towards improving it or adjusting it to their liking. If their preferences and changes don’t match your vision for the software you wrote, they have the opportunity to easily make their own version of your software with the changes they would like to see, leaving your software untouched.
Contributing to open-source software is a process consisting of:
- Downloading the software’s source code
- Reading the software’s documentation and engaging with its community or lead developers to understand how the code works
- Identifying a problem, potential feature or change you might like to see
- Starting a conversation with the community and/or lead developers about the change, whether others would appreciate it, and what it would take to make it a reality
- Editing and experimenting with the code, either alone or with others, in an attempt to implement the change successfully
- Returning to the conversation table when you reach dead-ends or difficult errors