open source solution development

How to Start Contributing to Open Source Project Development

Andrew Zola
Storyteller
I have many passions, but the main one is writing – learning about new things and connecting with diverse
audiences is something that has always amazed and excited me.
Andrew Zola on Linkedin

There are loads of open source projects out there and you probably use some of them already. These projects can also be a great learning tool to help you improve your developing skills as you will get to comb through carefully written code that’s being used by a lot of people around the planet.

Once you receive feedback from the project owner, you can start contributing to an open source project of your choice. But how do you choose one?

Usually, a good approach is to contribute to an open source project that you already use. It’s also a good way to eliminate problems that may have annoyed you in the past. Furthermore, it also provides you with a unique opportunity to add features that can benefit you.

So if you’re ready to get involved, the website Up-for-Grabs is a good place to start. This is because they list open source projects along with their issues. It also allows users to filter through them by technology or by the programming language.

Learn multiple major libraries and packages

Knowing a programming language and how it’s used isn’t enough, you also need to learn a bunch of major libraries and packages that are often used in medium to large projects.

So as a first step, it’s a good idea to seek out various libraries that are relevant to your programming language and devote a significant amount of time to learn it. When you have successfully completed this task, you will be rewarded with a good understanding of the code base.

Learn the Git Version Control System

The Distributed Revision Control System (DVCS) is a great way to engage in collaborative coding. This is because it will ensure that all the code is not only secure but also concurrent at any given time.

Everyone uses some form of version control like SVN and Git, but for the most part, most organizations have turned to Git for a lot of features. However, learning GitHub is not the same as learning Git.

GitHub also allows you to push your own projects to tweak it further with Git. You can take code apart or fork popular projects (where you can make your own changes and commit it to your fork). You can also get your updates from original repositories and then fuse them into your fork.

Working within the space is a great opportunity to learn to read the source code. We all know that a lot of coding documentation is extremely confusing, so this is a good time as any to tackle this challenge.

What’s great about GitHub is the fact that you can engage with other developers on the platform and even send the original author a request to take a look at your code and merge it with the original repository.

Submit your own patches

Fixing bugs is not an easy task, especially if you’re a beginner. But if you feel like you’re ready, pick an open source project in a language that you’re comfortable with and look through its bug tracker.

More often than not, these bug trackers will clearly mark the problems as introductory or volunteer. Ideally, go with a problem that you feel confident about fixing and then write an update that you’re about to take it on.

Next, solve the issue on a local system and then push it to the remote code base. But to do this step, you will need to have significant knowledge on the following:

  • Workflows for code contribution
  • The type of DVCS used by the project

You also need to be heavily involved within the community as no open source project likes to accept code from a newbie that they don’t know!