Open source software has helped accelerated the development of information technology, generating opportunities never seen before. Just think about startups and small businesses using free CMS such as Drupal or WordPress, or desktop environments provided by Linux distros that we can use for free.
Open source software we can download from places such as Sourceforge, GitHub, or the WordPress Plugin Repository are usually written and maintained by volunteer developers in their free time. If we’ve ever used an open source software, we are not just simply an end user, but also a member of the Open Source Community.
As the success of the movement highly depends on its users, it’s important to think of open source as our own project, and ponder about what we can do to help improve open source products (software, plugins, themes, code snippets, blogging platforms, operating systems, etc.) that we use.
With Christmas is coming, in this post we take a look at how we can give back to the Open Source Community, as much or as little as we have the time and the capacity for.
1. Give positive reviews to our favourite software
As open source developers usually are not financially compensated, they need to be motivated otherwise. Many of them have sadly experienced that users tend to give negative reviews much more easily than positive ones.
This tendency is usually seen as a result of basic human psychology, as an angry user confused by a non-functional software will comment more quickly on quality than someone whose needs have been satisfied, but it’s worth to think about it from another aspect too.
Getting little positive reviews can be extremely demotivating to open source developers, so if we find a good theme, plugin, or software, it’s always a good idea to go back to its site of origin, and leave a positive feedback to the devs.
Even if they don’t have the time to reply, they will surely appreciate it. Christmas can be a good time to surprise the authors of our favourite plugins and themes with a stunning review as a gift.
2. Ask questions before giving negative reviews
Despite all good will, it frequently happens that something doesn’t work as we’ve imagined. It’s not necessarily the issue of the software, but it can also originate from the problems of our local environment, the incompatibility of other software that we use, and many other things.
Leaving a negative review needs to be seen as a last resort if we want a thriving Open Source Community. We always need to remember that we get the software we need for free, so we are not that much in the role of a customer but rather of a peer.
Online platforms where we can download open source software usually provide some ways to contact the developers, so before leaving that witty 1 star review, it’s always a good idea to describe the issue in detail (more below), and ask questions in the support forum. In most cases developers will quickly reply.
3. Help developers easily reproduce bugs
Whether we have access to a support forum, or a bug tracking system, or we just contact the developers directly by email or via a social media site, it’s always crucial to describe our problem in detail.
Good bug reporting is a form of art of its own, and can tremendously help developers,if done correctly, so it’s worth the give a thought to how to compose it properly.
Developers need to know step by step what we did before encountering the bug, how the malfunction exactly happened, what other software/plugins run at the same time, and in some cases the platform, operational system, and device we used.
Bug reports and reviews that only tell that "this plugin sucks" or "worthless crap" are not particularly useful.
4. Contribute to support forums
If we’ve already been using a software, a plugin, a theme, or a blogging platform for a while, we can easily give back to the community by sharing our existing knowledge with less experienced users. Most sites offering open source stuff have thematic support forums where anyone can register.
We don’t have to be a developer to help, as usually there are also many non-technical questions. Contributing to support forums is not only important because we can help others, but also because this is a way we can keep our knowledge fresh.
5. Spread the word about software we like
If we’ve find something we particularly like, providing free coverage or promotion to it is also an excellent way of being a dedicated member of the Open Source Community. If we have a blog, or contribute to someone else’s, we don’t need to do anything elseother than write an interesting post about it. Here, at hongkiat.com we’ve done this many times, and will keep doing it in the future.
If you don’t own a blog, you can also choose to spread the word about your favourite software on social media sites. We don’t just help open source developers this way, but also other people who look for a good software for this or that purpose.
6. Recommend features, but with great care
Feature requests can be useful, but only if they are done with great care. If we do it with consideration, and show developers that we understand and appreciate their work, we can give them valuable ideas by informing them how they can improve the software.
Unfortunately many users don’t behave really respectfully when making feature requests, some of them even give bad reviews to perfectly functioning plugins just because they don’t provide the features they need.
This kind of behaviour turn many talented developers away from open source, so if we want the community to thrive, we always need to treat developers as partners, and ask for features with respect.
7. Be a software tester
Software needs to be thoroughly tested, so if we have a little free time, or are particularly interested in a plugin or an app, we can participate in the development process as a volunteer software tester. Open source teams usually inform users about testing opportunities on their websites, in newsletters, or on their social media profiles.
For instance the WordPress Theme gave developers the chance to test their latest default theme, Twenty Sixteen, and they even give detailed instructions on how the testing process works. By testing products we don’t just help, but also can learn a lot about the development process and the particular software.
8. Upload a patch or an enhancement
Open source teams always welcome new developers, so if we don’t want or have the time to begin our own open source project, it can also be extremely helpful if we just upload patches for existing bugs, or enhancements for improvement. If we want to do that, we usually need to create a patch file that contains a list of the differences we made.
The WordPress team explains it very clearly how to submit a patch in accordance with the SVN version control system used by WordPress, and here’s a guide about how we can make a pull request if we want to contribute to a GitHub project.
Creating patches require coding, so it’s only recommended to developers.
9. Contribute to documentation or translation
Usable software doesn’t only consist of code, but also needs understandable documentation, and in a globalized world, translations too.
Most open source teams allow users to edit their existing documentation and to add new information to it; just think about the WordPress Codex. We don’t necessarily have to think about big things, we can even help by fixing typos and misinformation.
We can also collaborate to open source by translating our favourite software or app to a foreign language. This kind of contribution is excellent for people whose native language is not English. After all, why would we want to live in a world where cool apps and software can’t be reached in other languages?
Software localization usually use apps such as Poedit that make it possible to translate just one or two sentences at the same time, so we don’t necessarily have to work a lot, as every little contribution helps.
10. Keep using Open Source Software
If we want to see a lively open source scene, we need to keep actively using open source software, and not be afraid of trying out new ones. If we find something good, we shouldn’t hesitate to recommend it to others, so they can also benefit from it.
Even if we are only ardent and respectful users not doing anything else apart from sharing our experiences, we’ve already contributed in a meaningful way.