What is Open Source Software? How Does It Work?

We all use software/apps in our devices. Have you ever wondered how they are made? How code lies behind those apps. Well, most of the company won’t reveal their recipe but there are some people/communities who are willing to share their process and code and other stuffs publicly for clarity, transparency, free study etc.

What is Open Source Software? Beyond the Code

Open source software is software whose source code is made freely available to the public for anyone to see, modify and distribute. But as a normal user, you might not see any actual difference between open source or closed source programs. It is best to show the real difference by comparing both open source and proprietary software.

Proprietary Software (like Microsoft Windows, Adobe Photoshop)

  • Closed Source: The actual code behind those softwares are heavily guarded by programmers. Only machine readable binary code is shared.
  • Strong Licensing: A user have to buy the software to use it agreeing to their terms. They don’t have right to modify, copy or reverse engineer it.
  • Centralized Development: Developing is limited to owning company. Users only can report bug but don’t have right to fix them by self.

Open Source Software (Like Linux, Firefox, VLC Media Player):

  • Open Source: The source code is published openly. It can accessible to their main website or developer’s platform like Github or Gitlab. Everyone has the right to download and modify it.
  • Permissive Licensing: Open source software are usually licensed under GPL, Apache, or MIT that gives legal permission to use, study, change and distribute modified version to anyone for any purpose.
  • Decentralized Development: Each of the softwares have their own community. They volunteer to help developers and add new features for free (mostly).

Open source refers to transparency, accessibility, and the freedom to collaborate. It is shared in order to spread knowledge and peer review

How Does It Work? The Mechanism Behind It

Open source doesn’t mean that the code is free. It functions like a digital ecosystem, governed by community , technical tools, and legal frameworks.

1. The License:

The open source license is the constitutional document of any project. It is what make close source into open one. GNU General Public License (GPL) are “copyleft,” opposite of copyright meaning any work must also be open source and ensure the freedom propagates. More licenses like MIT or Apache allow developers to use code for commercials too. It makes open source software popular for corporate businesses. The license set the rule for entire community of a software.

2. The Collaborative Engine:

GIt is the technical heartbeat of open source which is version control system. It allows developer to track down every single change in the codebase. The official version will be limited to original developer or maintainers to ensure the authenticity of the product.

This is how “fork and pull request” model works:

  • Fork: A developer is interested to contribute his/her first “forks” the main repo (repository). This creates a perfect copy of the entire project under their own account.
  • Clone & Modify: After that they clone the forked copy into local computer & create new branch to add, modify or remove any feature.
  • Test & Push: After changing, they test it out on their own devices and then upload it to their fork repo on the platform.
  • Pull Request (PR): Then they pull request against original repository. This initiates a discussion and code review.

3. The Social Structure:

An automatic merge is not what a pull request is. It starts a community review process, which is open source’s real quality control method.

  • Maintainers/Committers: These are dependable, seasoned contributors who have write access to the main repository; they are frequently the original founders. They go over the incoming PRs.
  • Review and Discussion: The suggested code is carefully examined by the community, which consists of maintainers and other contributors. They look for errors, security flaws, consistency in the coding style, and general quality. Peer review, which produces software that is reviewed by hundreds of knowledgeable eyes, is perhaps OSS’s greatest strength.
  • Merge or Reject: The maintainer will decide whether to request additional changes or merge the pull request into the main codebase after reviewing it.

The Motivations Behind the Code

Why people would work for free is a frequently asked question. The reasons are strong and varied:

  • Scratching an Itch: The earliest and purest motivation is to scratch an itch. When a developer needs a tool that doesn’t exist or there is an issue with already-existing software, they create it or fix it themselves and share the fix.
  • Learning and Skill Development: Participating in significant projects is an unmatched way to enhance your resume. It offers practical experience and open demonstration of proficiency.
  • Reputation and Career Advancement: A developer can become a highly sought-after expert by contributing significantly to a well-known project.
  • Ideology and Community: Many adhere to the philosophical tenets of software freedom and teamwork, and they derive great fulfilment from participating in an international community endeavour.

The Impact & The Future:

Open source is no longer a movement only. It is a pioneer of modern innovation.

  • The Internet: The internet runs on open source programs like Linux, Apache, Nginx and programming languages like python and PHP.
  • Artificial Intelligence: The growing AI is depended on open source frameworks like TensorFlow and PyTorch.
  • Mobile: Android is built on an open source Linux kernel.
  • Cloud Computing: Major popular cloud platform like Azure, AWS, Google Cloud are built on open source projects.

Open source isn’t only a transparent or free model but also a innovation to lead modern world without costing money.  It has democratized technology creation, allowing anyone, anywhere, to contribute to the tools that shape our future. Open source projects are becoming a necessity every day.

Leave a Comment