Background image from: https://opensource.org
Open source projects don’t all have to be massive endeavours like Kubernetes, OpenStack, or Android. It’s great that these initiatives were open sourced, that vendors have been able to play nice, and they’ve become a standard. But the reality is, as a developer, you are far more likely to use a smaller open source library in your day-to-day work that are maintained by a few passionate folks, like Homebrew or python-requests or markdownlint.
There are a bunch of blog posts about contributing to open source. I really appreciated Ian Stapleton Cordasco’s words from his blog post.
Back to the story. A colleague at work mentioned he found a cool project called Googliser to download images from Google’s Image Search. He needed images to build visual recognition models. Trouble was, Googliser didn’t have a feature he wanted, specifically to filter by license, so he avoided using it. Womp womp.
I looked at the code for the project, realized it was just a bunch of bash, and said something along the lines of “Why don’t you just add that feature?”. He was confused, not having ever contributed to open source projects he didn’t know where to start (my first dive into the world of open source was back in 2012).
So I went home early that day and whipped up a pull request to add the feature he was looking for. You can see the pull request it in all its glory.
Pro tip: As Colleen Murphy has said many times over, commit messages matter, so make them good! Watch the video
So why am I writing this? I’m hoping that you are encouraged by this post to pick a small open source project you use on a day to day basis and contribute back to it. Submit a small PR, take a look at the code, open an issue (heck, even if it’s to just say thank you!). Github makes all of this incredibly easy, go and put yourself out there. Most maintainers are appreciative of the feedback, you’ll be changing someone’s day for the better!
And, plus, the kudos are always cool.