A Beginner’s Guide to Open Source Development

Mozilla Campus Club CCEW, Pune
5 min readJul 16, 2021

Whenever someone says ‘Open source’, if you imagine a geeky programmer crouched in front of their computer, you’ve got the idea of open source wrong. Basically, Open Source refers to something which is publicly available. The idea is very similar to the Internet where anyone can add and view new information at any time. Many times it refers to any piece of code which can be changed and improvised by anyone to make it more useful and efficient as per the requirement of different tasks or projects. Apart from programming, the idea of open source is also implemented in graphic design, writing and organizing. Wikipedia, a platform known and used by all, is one such open source project.

At the industry level, you’ll find mainly two types of software licenses: Open source and Proprietary/Closed source. As opposed to open source, in proprietary software, the source code is available to its developers. Users have to sign a license inhibiting them from making any changes to the software. So if a user faces any issue while using the software, they need to report it to the creator/author. Thus, the process of resolving an issue is relatively tedious. So you can see why many organizations prefer to keep their software open source…

Open source promotes improvisations and creates space for innovation. It enables you to enhance your code and makes debugging easier. Linux operating system is an open source project. In Linux, if the system is exposed to any viruses or malware it can be fixed quickly by anyone in the community. Linux can be easily secured and protected as compared to Windows OS. In general, this approach helps in developing user-centric products, optimizing the product even more as more users start using it..

In open source, anyone can raise an issue/pull request and anyone across the globe can start working on it staying at their home. Quite an advantage during the pandemic, don’t you think?

As a contributor, open source allows you to enter a community of like-minded people, to collaborate and helps improve your existing skills. Open source is a perfect pathway to select a project, practice and find a mentor.

Beginner developers can also learn to write a clean code which is readable and maintainable for others as well.

Although open source provides one with an array of opportunities to explore and learn from, engagement of undergraduate students in the Open-Source Community is very less. Thus, we at the Mozilla Campus Club of CCEW strive towards creating awareness about open source development among the students.

Now you might be wondering, are there any major prerequisites for making contributions? No, it is not limited to experienced undergraduates or professionals. Anyone familiar with the basics of coding and at least one programming language can start contributing to open source!

“When you are making your first contribution, finding the project and community whose cause resonates with you is the hardest. Once you are past that and you start making your contribution, you realize that the experience you are gaining is invaluable,” says Shriya Bhat, the former Captain of Mozilla Campus Club, CCEW.

So how to get started? Firstly, make sure you check out GitHub as it is one of the great places to start. There you can directly share your ideas and projects with a large group of people and get their insights without any formal association with any organization/employer.

There are various platforms and organizations that have their open-source programs with a well-planned timeline throughout the year. The popular ones include Google Summer of Code, Google Season of Docs, GirlScript Summer of Code, Outreachy, MLH fellowship, DigitalOcean Hacktoberfest and Devscript. The participants have the freedom of choosing their project problem statements from a wide range of projects of various domains like Web Development, Artificial Intelligence, a programming language-based project, and so on. You can also get involved with an open source community and choose one of their projects that is open for contribution. Once you select a community, join their mailing lists or IRC channels to connect with other developers/contributors in the community.

In all, there are a plethora of open source projects. Some resources to find beginner-friendly projects are:

You can also find ways to contribute to Mozilla at https://www.mozilla.org/en-US/contribute/

Once you come across a project you would like to contribute to, you’d have to follow these steps:

  • Go through its documentation and connect with the mentor or project admin. Look for the issues you can work on. The process is on a first-come, first-served basis. Select an unassigned issue and ask the mentors to assign it to you.
  • You will have a limited amount of time to work on this issue as per the program or community guidelines. If you get stuck somewhere or have doubts while resolving the issue, reach out to mentors or other community members.
  • Once done with the issue, raise a pull request or create a git patch as per the guidelines for contributors.
  • Sometimes you might fail to push a pull request because of a given amount of time. While making a pull request, conflicts might also arise. But try to resolve these conflicts and raise a pull request again.

The feeling when finally your pull request is accepted is damn amazing!

  • And Voila! You have made a change for the community.

But remember, consistency is key when it comes to open source contribution. Once you are a part of the community, you shouldn’t stop at a single contribution. Contributing from time to time will not only increase your chances of getting selected for popular programs, but also ultimately lead to the growth of the community.

Let’s get to know what a member of our own Mozilla Campus Club who has made amazing open-source contributions has to say.

“As a beginner, open source was quite intimidating. It is not about how much you know, but it is about how much you learn throughout the process. No contribution is big or small. During the contribution period, you explore a different side of learning by doing.” -Deeksha Jagtap, Mozilla Campus Club Member, CCEW.

As you can see there is so much for you to explore and learn about open source. Brace yourselves and feel free to dive in and put your skills to the test!

--

--

Mozilla Campus Club CCEW, Pune

Mozilla Campus Club CCEW is a student committee working to spread awareness on Open Source software.