How I got into Open-Source

I made my first PR to an open-source repository yesterday, which was a watershed moment for me. I've been in tech for quite a while now but decided to double down in 2022 and today marks a milestone in my journey for me. Here's how I made my first contribution to open-source.


What is open-source?

The term open-source refers to something people can modify and share because its design is publicly accessible. Open source software is software with source code that anyone can inspect, modify, and enhance. Open source helps us learn new technologies, build better communication skills, understand coding standards and conventions, access bigger communities, and become cleaner and more efficient developers. There are over 154,000 open-source projects on Github alone and a lot more on other platforms that are open for exploration.


How do I get Open Source projects?

There were several sites I visited in my quest to find projects with the right technology framework or stack I knew, and that had good first issues I could contribute to. Frantz Kati was a great help in my decision and search for opensource projects, he suggested going to YCombinator's startup directory and applying some filters to get some projects I could apply to, in my research I found out FAANG companies also had open-source repositories I could contribute to, Spotify had a great collection of OS projects too and GSOC was coming up in late March. I reached out to a couple of Projects and got some responses, some interesting and some I found above my skill set.


Raising Issues

Raising issues on a project's GitHub page is one way to kickstart your contribution journey or you could head over to the issues tab on that repository and check out what issues you could resolve.

On the first repository I visited, I did a total redesign of their landing page and raised an issue where I asked to be permitted to effect those changes and I s politely shut down, I did not let that deter me and I moved on, found other repositories where I was over my head not knowing what I was doing until I came across a repository that had good first issues waiting to be resolved.

I picked one up and though it had been assigned, the guy it was assigned to had not fixed it, I asked for details about the bug and asked that it be reassigned to me. I got approval, it was reassigned and I got down to work, I got David on a video call for some guidance and in about 30 minutes that bug was resolved. I made a PR request and got it merged today. A milestone was achieved.


Lessons

The whole process was an interesting one and here are a couple of noteworthy things I observed first-hand.

  • The web is littered with Open source projects, you just have to research to find them.

  • When you pick up an issue, make sure to resolve it immediately, failure to do so could result in it being reassigned to a more willing or available participant.

  • Asking questions helps you not to lose your way, in asking questions via the project's communication channels, I was able to get to the core of the issue faster and resolve it quickly.

Thanks