Karambir Nain

Beginner’s Guide to Open Source Software

Many students complete their higher education in college without even knowing what is open-source and how it can help them in their career. They just want to develop for some for-profit company and earn some money. But nowadays Open-Source is becoming a must for every Computer Science student.

Following are some of the frequently questions asked about Open Source Software that may help you:

What is Open Source?

Quoting Wikipedia:

In production and development, open source is a philosophy or pragmatic methodology that promotes free redistribution and access to an end product’s design and implementation details

Open Source Software is the software which source code is available for free to study, change, improve and at times also to distribute the software.

Why it is good for students?

Students don’t get see code base of Windows OS or Microsoft Office. They do not have a clue, how a proper software is developed and coded. They have written some nifty programs and some small projects each semester, but what about software that require collaboration of hundreds of people, 1000 LOC.

Open Source Software gives all of this. They open their code base to be used and studied. And if someone found they’re interesting enough to collaborate, then they can. Anyone can file a bug report, feature code to most of the Open Source Software(OSS).

When students interact with other developers on that project and write code with them, they get a picture of how a well polished is written and shipped, how testing is done. They read other people’s code and come across different ways of expressions in software world.

Moreover, when you write your own software and open source it, after looking at it, people in community will contact you for business and jobs. So it’s a Win-Win.

How to find and contribute to Open Source Software?

There are many well known projects that people will tell you about. But start with something small, something you can get familiar with in small-time. Here is how you do it simple way (See Note below):

  1. Go to GitHub and search for a software in your favourite programming language.
  2. Select any project and clone it.
  3. Use it, explore its code.
  4. When you are using it, you may find some bug, file it on GitHub. or
  5. If you have feature in mind that can be implemented in that software, add that.
  6. When writing code, try to follow original developer’s style of programming.
  7. Push it and make a pull request.
  8. There is more than 95% chance, that concerned developer will contact in 48 hours.

And you have made your first contribution to Open Source.

Application software

Operating systems

Programming languages

Server software

#open-source