Contributing to an open-source project isn’t only about coding.
Hohndel starts off with an idea that has been at play with the open-source community for years, when he says, “What very often happens with open-source components is that as you use them, you suddenly start seeing things that you would like to be different.” He goes on by saying, “There is this problem in this integration; there is a mistake in the translation of the user interface, there is this other component that I work with and there is a problem between them, or here’s a bug that I found.” He finishes that thought by mentioning the first time you submit a bug report to the developers, you are contributing to open source. Hohndel states, “Any interaction with the developer team is a contribution.”
To that point, Bhartiya adds, “It is natural that if you’re using an open-source tool, you will engage with code at some point.”
But not everyone who uses open source has either the skill or the time to write code, so it’s not an unavoidable path. And for those who do wish to contribute to an open-source project, it can be done via enhancement requests, submitting bug reports, helping to improve documentation, adding or fixing a translation, and helping with localizations.
One very interesting idea is that of snowflakes. Hohndel adds, “When you fix something locally, you have created a snowflake. You have created something that is unique. That is not what everyone else uses, but that is your version. And this is where the desire that I talk so much about, of contributing back to the project in a patch, in the form of code.”
Fortunately, as Bhartiya says, “When you are using open source, the code is open to you. So you will be able to see problems and may want to fix them. And scratching your own itch can become a contribution as well.” That idea is very much at the heart of where most open-source contributions start.
But what are the other ways in which companies can contribute to open source? Hohndel lists out some very good ideas such as, giving open-source projects money, helping to write code, translating documentation, helping project engineers to understand various use-cases and how the project is used in real life, creating a design process and providing input into the user interface, helping to make sure the software is usable to people with disabilities. To that list, Bhartiya adds the very important aspect of helping with marketing, which is a big part of what helps keep open-source projects healthy and viable.
How can you start contributing to an open-source project? To that end, Hohndel says the project’s code repository (such as GitHub) is a great place to start. On services like GitHub, users can open an issue for a project, which is a fantastic way to start the conversation. Ultimately, Hohndel says, “When I engage with a new project, the first thing I do is look at their mailing list and read the last couple of weeks of posts. Or, if there is an IRC or Slack channel, I see how people are interacting.” With that information in hand, you’ll find it much easier to start contributing to an open-source project.
Summary of this discussion was written by Jack Wallen