Time. The most common excuse (and legitimately so) for avoiding open source contribution. Finding time outside normal work hours is difficult and the idea of grinding it out, post work day, isn't always appealing.
There's a perception that open source is a huge undertaking, but what if I told you it didn’t have to be? That there are ways to contribute to open source without absorbing your entire weekend? Don't believe me? Well keep reading…
Contribute as a user
Especially in the ruby community, it's quite common to utilize open source libraries for your day to day tasks (even if the actual work is proprietary). As a user, finding ways to enhance the tools you already use are excellent avenues for open source contribution.
Here are some simple, quick, and easy ways to contribute:
At Intridea, we utilize this method often. For example, during a project utilizing Google spreadsheets, we found a bug in the roo gem roo gem that prevented it from reading cell comments. Thus, we researched the problem, fixed it, and submitted a pull request back to the maintainer. This format required no special open source time, as it was necessary for the project, and sharing our fix with the community took only a few minutes.
Open source in small ways
Another way to open source, without devoting your weekends and nights is by creating small projects. In the ruby community, this can mean creating a gem that solves a common problem.
Recently at Intridea, we created a small open source project for the confluence-soap gem. During a project that required us to interact with wiki pages in Confluence, we discovered many of the ruby libraries were incomplete, out of date, or lacking documentation.
Instead of waiting until our gem implements all API methods though, we took the opportunity and released it ourselves. You'll notice the Confluence SOAP API includes roughly 160 different methods, while our gem features only twelve. We only implemented the methods that were useful for us, and that’s okay! You don’t have to come up with a huge elaborate project to make it worthwhile for open source.
What are you waiting for?
Open source doesn’t have to be time consuming. Utilizing everyday tasks are simple ways to participate in the open source community. As a developer, you are in the best position to enhance, create, and improve the tools you already use! So, get strategic with your work, find those opportunities, and contribute!
Got any tips or tricks for open source? Let us know!
Want to see more? Check out Intridea's newest open source: Houston: Mission Control for Distributed Teams