Table of Contents:
Many users of open source software may feel the need to give something back to the community that gave them all of these benefits they are enjoying, but may face the obstacle of not being programmers or developers. Average users may not know how to code or design, and hence, may just give up on contributing anything back since they do not have the necessary skills.
But that’s not true.
Today we’ll see some ways in which the average users of open source software can contribute to these projects, even if they have no experience at all. No designing, no programming… No issue, you can still contribute!
Ways to Contribute to Open Source Software
1. Reporting Bugs
The first thing you can do in order to support your open source projects of choice is report bugs.
Simply check for any bugs or issues that you may be facing in that software and report them to the original developers in the fashion and format they have requested.
Reporting bugs is a great deal for open source software; It makes it more polished, stable and useful in the long run for other users and hence can bring more users in the future to use it and keep using it.
While it may take some time to formally submit a bug report and continue providing feedback over time to make sure that the bug is fixed, it still helps a lot even if you just submit the initial bug report. Because now, other people who’ll be facing the same issue as you will be able to find that bug report on Google and build over it instead of starting from scratch.
But what sadly happens to most people is that they search if someone has already reported the bug they are facing, and if not, they just switch software or move somewhere else without reporting the bug, because they think they’ll have to keep updating and contributing to that bug report until it gets fixed. The “desire for perfection” prevents them from doing that act of good.
It is important for you to understand that this is not necessarily true; You can just submit the bug reports – in the most helpful and detailed format you can do – and then continue your life without looking back.
Others may try to reproduce the bug or may add more details to it over time, but you have done what you could and that’s good enough.
2. Reproducing Bugs (Testing)
The previous part leads us here. Since there will be some reported bugs and issues which are not fully documented and reported by others, it would be extremely efficient if you – as a 3rd party – came and tried to reproduce the same bug on your machine.
“Reproducing Bugs” means that according to the same steps and conditions specified in the original bug report of the reporter, you’ll try to do the same steps and see whether the bug happens for you too or not. This is important because some bugs may be specific to some user setups or hardware configurations, and your testing would help a lot in making things clear.
Clearly, these bugs may not be bugs that you are personally facing, they may be even bugs that you are not interested about at all. But since we are talking about “ways to contribute to open source” then we mean ways of improving open source, and this is an absolute method of doing so.
You’ll be saving the original developers a lot of time in debugging and checking whether this is indeed a bug in their software or not.
3. Spreading the Word
One of the nicest things you can do to contribute to open source is spreading the word; Simply do your best to attract more users to that software and make the world hear about it.
While many open source software are extremely efficient and great in doing what they do, you may find very small communities around them due to the absence of marketing efforts. Marketing is extremely crucial for open source software because usually with the lack of funding, no one will be able to market that project and make more people learn about it. Which is why your contribution in this area could be helpful.
Linux for example, as a whole, has a marketing problem.
Linux is indeed much better than most operating systems out there, but many people think otherwise due to the misconceptions and old stereotypes they have about Linux and the people who use Linux. This problem happens because no central entity exists that is interested in marketing for Linux as a whole; You’ll probably never find a TV advertisement telling you to use Ubuntu, or switch to Linux Mint, simply because there will be no profit for anyone in doing so.
Notice how although Linux is a large project with a huge community behind it, the lack of funding and organizing for the united “marketing cause” rendered the entire ecosystem less known for others. Compare that to your open source project of choice and you’ll definitely see that it has an even less chance of being known than that.
You could spread the word about your open source project via:
- Participating in user forums on the Internet and mentioning the name of the software wherever suitable.
- Making online tutorials, YouTube channels (Videos), support channels and other community platforms to engage the community in using that software.
- Making social media groups and pages to promote that software.
- Simply recommend it to a friend whenever they try to solve a similar use case as that of the software.
There are many ideas that you can implement after just 10 minutes of thinking.
Another possibility to support open source software is donations. Choose the projects you use the most each day and support them financially with whatever you can.
There are some recurring platforms out there to fund open source software, which you can use to search for the projects you like and keep donating to them with a small amount on a monthly basis. If that doesn’t suit you, then you can explore the website of that project for some one-time donation methods and see what can you give.
You’ll be most likely able to donate using PayPal, a Credit Card or via cryptocurrency transactions like Bitcoin.
Donations are very motivating for open source developers; Regardless of how small, they mean a lot to developers because it sends them a deep message that someone was ready to support them with that money rather than spending it on their selves. It reflects the act of developing open source software itself for others, which is why it is really motivating.
Some people may find their selves too poor to donate, and while this might be indeed the case, a lot of us may be spending much more than $40 or $50 on trivial things during the entire month. Rather than going to Starbucks someday during the month, you can use that amount of money to support your projects of choice and enhance the world a little bit for others.
5. Not Being a D#!k
If you would like to ask the developers of an open source project to implement a feature or fix a bug for you, then it would be very helpful to ask kindly rather than ruthlessly.
Some people think that just reporting bugs or requesting important features should make the developers instantly start working on that bug or feature. But those people forget that open source software developers are not obligated at all to do any type of work; In the same way users can take the open source software and just use it without giving anything back, developers are also not required to give anything back when someone takes the effort to report bugs or request features.
It is a hard truth that many people face when they contribute to some open source projects: “I have reported this 3 months ago why isn’t fixed until now??”. The truth is, it may never be fixed at all, depending on the time and effort needed by the developers to do it and the priorities they have.
While “open source” does not necessarily mean “free”, it does in 99% of the situations. When someone is giving you the product they worked on for months and years for free, then it should be very straightforward to be polite and kind when asking for modifications or enhancements to that thing, if you ever request in the first place.
Don’t take software for granted.
6. Help Translating
Volunteering to translate open source software not only benefits the projects themselves but also has a significant impact on the global community. With the increasing popularity of open source software, there is a growing need for translations to make these projects accessible to a wider audience. By offering your skills as a translator, you are directly contributing to the growth and success of these projects.
You can help translate your favorite open source project of choice by simply checking their official website or documentation and seeing where and how they translate their software to other languages. You can ask the developers about such info if you can’t find it yourself.
By volunteering to translate open source software, you are embodying this spirit and contributing to the growth and development of the community. Moreover, your efforts as a volunteer translator have a direct and tangible impact on the projects you work on: Most open source projects operate on limited resources, and language barriers can often hinder their ability to reach a wider audience. By providing translations, you are aiding these projects in breaking down these barriers and reaching a global audience.
Not only will you be making a positive impact, but you will also be gaining valuable experience and developing your skills as a translator. So don’t hesitate, and become a part of this global community and make a meaningful difference today.
7. Documentation Writing
Documentation serves as a comprehensive guide for users to understand and navigate through the open source project.
It helps in explaining the project’s purpose, features, and how to use them effectively. By creating clear and concise documentation, more individuals can contribute to open source projects by bridging the gap between the developers and end-users.
Non-technical users can use their expertise in writing to create user-friendly and easily understandable documents, which can make the project more appealing and accessible to a wider audience. This, in turn, can lead to an increase in the project’s visibility and adoption, ultimately providing valuable support to the open source community.
Simply communicate with your favorite open source project of choice and see with them how you can help in creating good documentation for the project.
So we have seen some good methods in which you can contribute to open source software, even if you have no technical experience at all. Doing the previous things should be quite straightforward and possible for the average Joe who wants to give something back.
If you have any other similar ideas about contributing to open source software for dummies, we would love to hear them in the comments.
Hanny is a computer science & engineering graduate with a master degree, and an open source software developer. He has created a lot of open source programs over the years, and maintains separate online platforms for promoting open source in his local communities.
Hanny is the founder of FOSS Post.