Open Source Can Propagate to Fill All the Nooks and Crannies That People Want It to Fill.
— Mitch Kapor
To be completely honest, this article may be just to spark enough motivation in me to finally make my first contribution (also to spark some bravery). I mean, here I am being brave putting things out there, I should brave up and do the same with code, right?). Anyway, I did find some great information, which I would like to share with everyone. I wanted to get started with Open Source and contributions, so I did some research because I have no clue what I could possibly do or how to find Open Source projects. So, here goes…
In my search, I came across a video on teamtreehouse.com about How to Find an Open Source Project (which I only watched part of before it asked me to sign up, but it gave me enough good information in the first 30 seconds, which to me is a good sign for those who may want to actually sign up — bonus, there is a 7-day free trial 😉).
So this video informed me of the Explore tab on GitHub, which gives you a list of Open Source projects related to topics you have starred. After exploring GitHub Explore a little, I found an article on How to Contribute to Open Source on GitHub, which was super helpful. Down at the Anatomy of an Open Source Project, it really has a good explanation of what to look for.
First, you want to make sure that it’s Open Source by looking for the LICENSE, then read up on what the project is and what it does in the README. Then check out the CONTRIBUTING to see what the preferred workflow is for the project. They may have specifications on how to write your code, like some specify how many spaces each indent should be, a little bit about syntax, how they like you to fork and clone the project, or how to set it up if it is tricky. They also may include information about how they label things, how to make pull requests, and what all you need to do when you make a fix or implement a new feature. They may have you write tests for it and/or modify the documentation to include what you have done.
Another good thing you can do is type into the search things like “Open Source”, “Good First Issue”, “Beginner Friendly”, and searches similar to those. It will find some good Open Source projects and some that have beginner-friendly issues, which may be a good place to start if you are new to this (like me!).
From there, you can look through the code and file structure to get familiar with it a bit, or just dive into the issues tab and see what needs to be done and how you can contribute. Be sure to follow the CONTRIBUTING guidelines they set for you and the CODE_OF_CONDUCT. That’s as far as I’ve gotten, I hope this helps someone. I’m off to try and make my first contribution…