DEV Community

Cover image for Demystifying Open Source Contributions

Demystifying Open Source Contributions

Wassim Chegham on June 01, 2019

This quick guide is mainly for first-time contributors and people who want to start helping open source projects. As an author and maintainer of a...
Collapse
 
oscherler profile image
Olivier “Ölbaum” Scherler

Good article, thank you. But I think you were a bit heavy-handed with the “it’s easy” seasoning. I’ve seen high profile projects where the tool chain was so convoluted that you couldn’t figure out how to build the documentation after fixing some simple things. Ironically, the documentation about contributing to the documentation was the most lacking part.

So I think some useful advice would be to choose the first projects you want to contribute based on how easy they make it seem to contribute.

For example, I recently opened a very simple pull request in Ansible. They have a very thorough Developer Guide that starts with a list of “I want to…” statements, so you can quickly find how to set up your development environment, how to debug a module, how to run the test suite and add tests.

Then when I opened my PR, it was labelled as “first time contributor” (by the Ansibot I presume), so another contributor told me how to add a unit test and a changelog fragment, with a sample file and a patch.

That was an awesome experience, and it contrasts with some other projects that seem to have a mentality of “no bug reports, make a PR,” or “a PR without unit tests is useless.”

Collapse
 
ssimontis profile image
Scott Simontis

I have learned that the best way to have a fair shot at contributing is to find less-popular repos. Sometimes I will stumble across some random repo and notice an issue I think I can fix in an hour or so, and I proceed to do so. Is my name being praised by the React community? Nope. Did > 2 people care about my contribution? Probably not. I look at it like a random act of kindness...as I venture through the woods of Github I come across something out of place and I put it back where it belongs. Maybe it will inspire the author to revisit the project they have been neglecting. Maybe it solved someone else an hour of headache. Whatever the hypothetical case may be, a lot of people with smaller projects are truly grateful for the help and it makes it feel a lot more meaningful.

Collapse
 
ahmedhusseinf profile image
Ahmed Hussein

I have the passion to do it. but the thing is everytime I open the issues and try to find a good-first-issue to suit the newbie me. I find out that someone else already got to it and completed and mostly they are the main contributers to the project.

Collapse
 
vintprox profile image
Rodion Borisov • Edited

It seems like every "good first" thing is subject for race conditions: one has to self-assign in few hours! 🤔 Inb4 main may be bored of other important tasks 😂

Collapse
 
carolinakinetic profile image
CarolinaKinetic

As a technical writer wanting to get into open source, I appreciate that this article is writer-friendly!