Digital Ocean in partnership with Github are organizing the fourth Hacktoberfest event this October. If you make four pull requests between October 1 and October 31 to any Github hosted repository you get a Hacktoberfest T-shirt. This year I decided to take part and I already made two pull requests.
I created my first pull request to an OSS project 3 years after I registered on Github. I know it can be hard to start contributing. At first I didn’t think my code was good enough, then I couldn’t find the right project with the right issue I could fix.
One day an opportunity presented itself. At work I was using auto-parcel to generate the boilerplate required for Parcebale implementation on Android. It’s a cool library based on auto-value by Google. At the time I was using version 0.3 - the version displayed in the README file on Github. A few days later while creating another value class I got an error. I googled the error and it led me to an issue on the project’s Github page. The issue was closed and a new version, version 0.3.1 was released. The README file was outdated, it still pointed to the previous release containing the bug.
I spent 10 minutes because of a bug that was already fixed. What a waste of time. If I wasted time chances are someone else will also run into the same problem so I decided to do something about it. Opening an issue on Github would be nice but the solution was so simple I decided to fix it myself and make a pull request. I also updated another dependency (android-apt) in the README to the latest version. The next day my pull request was accepted and it felt good.
A few days after Hacktoberfest 2017 started I run into an interested project on Github - TornadoFx a Lightweight JavaFX framework for Kotlin. I like Kotlin and it’s Hacktoberfest so I decided to contribute and maybe get a cool T-Shirt in the process. I noticed the project didn’t have enough unit tests so I decided to write a few. I found a file with some extension methods that were easy to test. They didn’t have tests so a wrote a few and I even found a little bug. I opened a pull request and my changes were merged. In my pull request I asked if more tests would be something they would be interested in. The owner replied:
Thanks for your contribution. Tests are most welcome of course :)
I also opened another pull request fixing the bug I had found.
Getting started with contributing to OSS can be intimidating. Starting small can help gain some confidence. Helping with documentation or tests, like I did, is a good place to start. There are thousands of beginner friendly issues tagged with hacktoberfest waiting for you.
Are you participating in Hacktoberfest? Do you remember your first OSS contribution?
The software industry moves fast. But if you keep up, you can have an incredible career.