DEV Community

loading...
Cover image for Why contributing to open source matters

Why contributing to open source matters

hayden profile image Hayden Rouille ・4 min read

Open source is a pivotal part of modern web development, yet so many companies who use open source every day don't even think twice about encouraging their team to go forward and contribute themselves. It's often simply overlooked, yet supporting open source provides so many benefits to both teams and individuals.

Who?

The team at Power has always seen the benefits of contributing towards open source. Our team frequently submit pull requests into open source repositories and it's strongly encouraged by our leadership team.

Our business technology department host a quarterly Nitro Create event (usually in person). Nitro, being the internal software we build from day to day, and the event being, for lack of a better term, a week long hackathon. Anyone who contributes to the creation of our product from developers, to scrum masters, to UX - are given the opportunity to work on some cool ideas and spend time working with teammates that they don't see as often.

Not only does this serve as a way to introduce all the new remote members to their teammates, but it gives our team something to look forward to on a regular basis that can be an outlet of creativity and social interaction. (which is much needed in today's climate!)

As you can imagine, COVID brought a lot of stress to a home remodeling business, but our business technology department fortunately kept operating throughout the pandemic (when I was hired) and worked hard to help the business pick up as fast as possible on the other side. Our Nitro Create event in June was canceled, and in September, with the world still in an unpredictable state, could not be held in person. So we did something (arguably) better.

What?

Instead of working together on our internal software, the team were given an opportunity to work on one of five open source projects which had the availability for us to support them and push out as much work as we could within a week. Needless to say, it was a great success. The team loved being given this opportunity. Over a third of the team that hadn't submitted an open source pull request before were enlightened to the idea and many have expressed they will continue contributing to open source as part of their ongoing development.

With 103 contributors across our team from developers, producteers, scrum masters, UX and site reliability engineers, we submitted 142 pull requests over the course of the week. The companies we supported were so appreciative. And for us, the reward was seeing the incredible difference we made in such a short period of time.

I'm sure I speak for us all when I say we're proud of the work we did, and genuinely felt welcomed by the teams as we integrated into their projects for the week.

Where?

Ruby for Good

One of the organizations we worked closely with for the week was Ruby for Good. Not only do they develop awesome products for communities that really need it, but it's all open source!

Throughout our week, we worked on several projects in development with members of the Ruby for Good team. Here are a few:

Abalone

GitHub logo rubyforgood / abalone

A data tracking and analytics app for abalone conservation efforts.

Abalone Analytics

Build Status

The Abalone project is a data tracking and analytics system aimed at storing and measuring data for population trends, mortality rates, and breeding programs. Designed as a multi-tenant application, Abalone will initially serve two stakeholders, the Bodega Marine Laboratory at UC Davis and the Puget Sound Restoration Fund in Washington State.

The Bodega Marine Laboratory's White Abalone captive breeding program is working to prevent the extinction of the White Abalone (Haliotis sorenseni), an endangered marine snail. White abalone are one of seven species found in California and are culturally significant to the native people of the area. White abalone were perilously overfished throughout the 20th century, resulting in a 99 percent population decrease by the end of the 1970s. This group is working to reverse their decline and have already seen some great success, they currently have more abalone in the lab than exist in the wild!

The…


abalone
Who wouldn't want to save Gary the Abalone!?

CASA

GitHub logo rubyforgood / casa

Volunteer management system for nonprofit CASA, which serves foster youth in counties across America.

CASA Project & Organization Overview

rspec cypress Dependabot Status Maintainability Test Coverage View performance data on Skylight Known Vulnerabilities

CASA (Court Appointed Special Advocate) is a role fulfilled by a trained volunteer sworn into a county-level juvenile dependency court system to advocate on behalf of a youth in the corresponding county's foster care system. CASA is also the namesake role of the national organization, CASA, which exists to cultivate and supervise volunteers carrying out this work – with county level chapters (operating relatively independently of each other) across the country.

Welcome contributors!

We are very happy to have you. If you have problems or questions, the fastest way to an answer is in slack https://rubyforgood.herokuapp.com/ #casa channel

ALL open issues on the issue board https://github.com/rubyforgood/casa/projects/1 are fair game unless they are already assigned to a contributor. Assign an issue to yourself or comment on it "I am working on this issue".

PRs which are not for an issue but which improve the codebase by…

Diaperbase

GitHub logo rubyforgood / diaper

Diaperbase is an inventory system for diaper banks, to aid them in tracking their inventory and providing statistics about their inventory flows.

Welcome Contributors!

Thanks for checking us out!

If you're new here, here are some things you should know:

  • We actively curate issues and try to make them as self-contained as possible for people new to the application; those ones are tagged "Help Wanted"
  • We're actively watching for Pull Requests and you shouldn't have to wait very long for a review. Try to make sure your build passes (rubocop -a is a frequent need) and that you've addressed the requirements in the issue
  • There is a wiki article called Application Overview. It needs a tiny bit of updating, but is mostly still accurate. It will introduce you to some vocabulary and general concepts, if you find something confusing and want to find the answer on your own.
  • Check the CONTRIBUTING.md file for a guide on how to get started
  • This is a 100% volunteer-supported project, please be patient with…

Mutual Aid

GitHub logo rubyforgood / mutual-aid

Mutual aid management platform for groups who build, support, and strengthen community resilience.

CircleCI Demo site Test site
CircleCI Heroku Mutual Aid Demo Version Heroku Mutual Aid Test Version

Welcome, and thanks for coming by! 👋🏾

What is mutual aid?

Mutual Aid is when people get together to build community by volunarily sharing resources with each other. Mutual Aid groups are more concerned about local resiliency than global campaigns, and prefer solidarity before charity. Mutual aid groups have existed around the world for over 200 years. Mutual aid groups generally prioritize the needs of minorities and other underserved communities.

To learn more about mutual aid, checkout this list and video.

Many people working in mutual aid were overwhelmed by requests early this year due to the COVID pandemic. Some of these groups were relying on dispatchers to match up people who could help each other. These dispatchers were in turn relying on spreadsheets, and the spreadsheets grew to be unmanageable.

We've created an app to support this work, currently used by seven mutual…

TechGirlz

TechGirlz is an awesome organization aiming to inspire young girls to pursue a career in tech. Their mission is for such an important cause and the impact they are having is truly outstanding.

Our team really got stuck in throughout the week and led workshops for several groups of girls from all around the world teaching them about different fun tech such as VR. By the end of the week, the girls were teaching them!

techgirlz

Having contributed to Abalone and CASA, I can personally say the team are a great bunch and very welcoming to newcomers. If you are looking to get involved in open source for the first time, any of these repositories would be more than happy to have you, so check them out!

Continuing into Hacktoberfest

For Hacktoberfest, I submitted several PRs to both the Abalone and CASA projects, and I know that I'll be looking to do more in the future. It was a great challenge and a brilliant community initiative which brought together a lot of people and their awesome ideas.

For myself, I've found that jumping into open source has given me the opportunity to see how others work, introduce myself to different libraries and learn from a new, innovative community. I attribute the majority of my development as a coder to open source, be it articles or pull requests. If you are on the fence as to whether it'll be beneficial, trust me - you won't regret it.

Closing thoughts

Open source is a community which so many businesses rely on but so few support. Power giving us the opportunity to make a difference
by contributing to charitable and not-for-profit projects, truly emobodies the values of open source.

I hope this article and the efforts of Hacktoberfest inspire others to take the leap into the open source world. There is so much more to gain than just notches on your Github profile. (though, who doesn't love them!)

volunteer

Power is a great company that has an ever-growing technology department, here's our job page if you're interested.

Discussion

pic
Editor guide