Contributing to Open Source Purposefully
Open source has witnessed an immense surge over the last few years. With a constant increase in developers stepping into it, the barrier to contribute purposefully keeps getting higher. However, all know the benefits and importance of contributing to open source. It has become a sure-shot passage for new beginners to step ahead, and the communities involved often provide a great networking opportunity with other developers.
But the question is - How do you contribute to open-source purposefully? What does it mean to make purposeful contributions? How to find open source projects to contribute to?
Every beginner googles ‘Open source projects for beginners’ but none search ‘How to contribute purposefully’. In this article, FuelEd demonstrates how to start contributing to open source purposefully.
What it means to Contribute Purposefully
Open source contribution for beginners can be a tricky thing. Nobody gives this a thought but, there is a difference between contributing for the namesake and contributing purposefully. It is the intent of the developer and the results achieved. Let's take an example:
When Alex (suppose) heard about open source, he thought: 'Yeah, I can do that. No big deal'. He found some beginner-friendly repositories, dug out a few no-code pull requests, and merged them.
What was his intent? To raise PRs that get merged. The result produced? Nothing significant. He may have spotted some minor grammatical and spelling mistakes and updated Readme, that's all. Of course, these changes also contributed to the project's betterment, and Alex may have learned how to fork, raise PRs, and much more. But open source is much more than that.
It has to be purposeful and the word purposeful arises mainly from the intent a developer enters open source with. Contributing to open source is not just jumping from one branch to other and collect metrics.
But if someone is looking for open source projects to contribute just for the sake of it, get PRs merged, and win swags, they must read this: Fake Open Source Hype.
Meaning of open source contribution for beginners
While the actual definition is the same for all, the individual perspective of open source may differ from person to person based on how they’re contributing to open source. It may mean one thing to me while something else to others.
People's perspective of open source may change over time based on how their values for software and programming change. Give these a read:
- For some, open source is just some idiots giving out free software code that anyone can copy/re-distribute to make their job easier and possibly make money out of it.
- For others, it's an amazing set of developers who code for and with the community. (Hint: they work specifically to launch beginner open source projects to contribute)
- Some love it enough to work on these OSS(Open Source Software) projects while doing their day job, and some have crossed limits in terms of helping the community that they can earn off of the donations from their work.
For me, open source is being able to share and read code from other developers. It has taught me to keep my options open and let my opinions run wild. Moreover, open source can also be seen as a passageway of amazing ideas that can be rebuilt and improved.
The definitions and perspectives are always similar yet unique to one. Now, if someone wants to contribute to open source purposefully, it's critical to figure out their perspective of open source.
Contributing to Open Source Purposefully
There are a few things to understand for a complete open source beginner: Working of open source projects, an individual's skills, motive, way of contribution, etc. In this article, FuelEd lays down some steps that one should go through in sequence while starting open source:
1- Figure out how open-source projects work
Before getting into anything, it's important know how things work. One can't just shoot blindly. The same goes for Open Source. Developers need to figure out the ins and outs of it: What are maintainers and contributors, how to raise issues, requests, pull requests, ways to contribute, etc.?
Open source is super easy to get started with. You only need to know your role, raising issues & requests, and GitHub functionalities. Once you are in the open source venture with basic knowledge, the sky is the limit.
2- Why to contribute?
What motivates me to participate in an open-source project? Is it to make my trusted software better? Do I wish to collaborate on a product with other developers?
Before engaging in open source, one must ask themselves these questions. There may be a number of reasons, but a person must select a strong WHY. Metro cannot just travel along tracks without stopping. Similar to this, the goal of an open-source journey is the resolution to the question "why."
To be honest, it's simple to start adding to open source. But maintaining it is exceedingly challenging. People come across numerous opportunities to give up. A compelling "Why" is what keeps people interested.
3- How to contribute?
You should be aware that open-source contributions aren't just about writing code. A project can benefit from contributions made in the areas of design, documentation, event planning, networking, marketing, and, of course, code. Individuals are free to choose how much they want to contribute.
Anyone who is skilled at coding can contribute to the code. The Readme file and other documents can benefit from the writing skills of someone. A talented designer can create user interfaces and other types of solutions.
Open source doesn't force anyone to work on software projects and contribute with code. It is much-much-more than that!
4- Find a project to contribute to
John F. Kennedy once said, "Ask not what your country can do for you - ask what you can do for your country." Applying this thought here: starters need to find a beginner open source project where they can provide value with their skills.
Contributing to open source happens at all levels across all projects. Hence, contributors need not worry about the type of contribution they can start with. Instead, they should look at the OSS(Open Source Software) they already use or admire.
The best way is to choose the projects people find themselves coming back to. Within those projects, whenever they find that something could be better or different, that's the cue to act. If these do not work, one can simply start with a Google search: Open source projects for beginners
Conclusion: Don't put up with any Crap!
Gordon-McKeon, program director at OpenHatch, said in an interview, "You don't have to settle for the places that are toxic and non-welcoming. A big part of being comfortable in the open source space is being confident."
And that's true. The open-source community has often been called Rough-and-Rude, especially for women. To your surprise, only 11% of the global open-source contributors are female.
No matter your race, gender, or level of experience, open source should be a welcoming community. And a good community is created by individuals, just like you and I. Therefore, a meaningful contribution can only take place in environments free from grit and grime.
Open source is supposed to be Open and Purposeful, after all - FuelEd.