Open source (from the English. Open Source Software, OSS) is a term for software intended for public access, where anyone can view, modify and use its code at their discretion.
image
Open source software is developed in a decentralized, collaborative effort by many unrelated developers. Open source software is usually more flexible in functionality and longer maintained. In addition, the development itself is much cheaper than that of proprietary counterparts. This is because such software is created by communities of independent developers, and not by one author or company.
The open source movement proposes a model of decentralized software production to more effectively solve problems that arise in the development process. The final product, as a result, is more functional and more reliable.
The Internet is one of the first open source projects
In the 50s and 60s, researchers developing early Internet technologies and telecommunications protocols relied on an open research environment. The Advanced Research Projects Agency Network (ARPANET), which later became the backbone of the modern Internet, encouraged an open feedback process and a fresh look at the product being developed. Development teams shared and refined each other's code. Later, various forums helped to facilitate communication and develop uniform standards for collective development. The Internet as a technology was founded on the values of collaborative collaboration, peer review, communication and openness.
How does the open source development model work?
The open source development model exists thanks to the developer community. Products based on an open source year are released with a corresponding open source license, so any developer can view or modify their source code.
Many open source projects are hosted on GitHub, where you can access repositories or contribute to development. Linux®, Ansible, and Kubernetes are examples of popular open source products.
Sometimes large IT companies get involved in the open source software development process. They take the already written code as a basis, fix bugs, vulnerabilities and add new features. All of these improvements can then be brought back into the original project for the benefit of the development community.
Linux and open source
Linux is a free and open source operating system released under the General Public License (GPL). It is also the largest open source software project in the world.
The Linux operating system was originally created as a free alternative to the MINIX operating system based on the principles and design of Unix. The creators so wanted to emphasize the principles of free software laid down during the development that they even initially called their offspring "GNU" (from the English "GNU's Not UNIX" - "GNU is not Unix"), although the system was still built on the basis of Unix.
Since Linux is still released under an open license, anyone can run, study, modify and distribute the source code. Even sell copies of your modified code, if it is done in accordance with the license.
What is the difference between free, closed and open source software?
Open source software has long been understood as "free software". The free software movement was founded by Richard Stallman in 1983 as part of the GNU Project. This movement was organized around the idea of user freedom: the freedom to see the source code, modify it, and redistribute it as you wish.
Free software appeared in response to proprietary or closed software. Closed source software is not available for viewing, modification, or use in the development of other products. Only owners of closed source code have the legal right to access it. And ordinary users who have bought a licensed copy pay only for using the program for its intended purpose.
The very name "free software" caused a lot of confusion, because it did not mean the product was free, but only free use at the discretion of the user. Kristin Peterson tried to solve this problem in 1998 when she coined the term "open source". It focused better on the point and did not confuse those new to the concept of the free software movement.
Peterson coined the term "open source" to replace the former "free software" at a meeting of a working group that was working to bring the practice of free software to the wider market. The goal of this group was to let the world know that software is better when it's open source and freely modifiable.
Eric Raymond was one of the members of the above group. In 1997, he published some of the key points about open source in his highly influential essay The Cathedral and the Bazaar. In 1998, partly in response to this essay, Netscape Communications opened the source code for its Mozilla project as free software. This code later became the basis for Mozilla Firefox and Thunderbird.
Netscape Communications' support for open source software has led the community to consider how to emphasize the practical aspects of this movement for businesses. The difference between "open source" and "free software" was later documented. "Open source" is a term advocating the methodological, production, and business aspects of free software. "Free Software" remains a label for discussions that emphasize the philosophical aspects of the same issues, as they relate to the concept of user freedoms.
In 1998, the Open Source Initiative was founded, formalizing the term "open source" and establishing its well-known definition. Although the open source movement was treated with caution from the late 90s to the early 2000s, it has steadily moved towards becoming the industry standard that it is today.
What are the main advantages of open source?
There are many reasons why people prefer open source to proprietary software, but the most common ones are:
Expert assessment . Since open source is freely available and the developer community is very active, the code is actively tested and constantly improved by different programmers.
Transparency . If you need to know exactly about all the changes that have occurred in the code, and at what stage of development the project is, open source will solve this issue in the best possible way. After all, anyone can check and track changes in real time.
Reliability . Proprietary code depends on a single author or company to control and develop it. Open source lives in complete independence from its original authors. After all, it is constantly updated by active developer communities. Many interested programmers regularly test and update the code to make it better.
Flexibility. Open source code can be used to solve a huge range of different problems. At the same time, there is no dependence on the skills of the specialists who launched the project. After all, one way or another, other developers will come to the rescue and give their expert assessment when implementing new solutions.
lower cost . Open source software development is usually driven by pure passion. And for finished products, even if they ask for some kind of mandatory fee, in return they offer support and assistance in setting up.
Not tied to a vendor . Freedom for the user means that at any time you can take open source code and use it however you like.
Open Collaboration . Having active developer communities means that you can easily and quickly find help, resources, and different visions for solving a problem that go beyond the interests of a particular group of developers or companies.