Know Your Software: Defining Open Source Software
Open Source software is an alternative which cuts the massive licensing fees that proprietary software leeches from businesses. Detailed definition becomes information for businesses to differentiate between Open Source and proprietary software.
Open Source Definition
There are many definitions of Open Source in various fields. In the software world where the term originates, Open Source means a software’s source code can be freely and publicly accessed. Created on the start of the Open Source movement in 1998, the detailed definition from Open Source Initiative (OSI), the movement’s steward organization, is the most suited to define Open Source.
Open Source Definition/OSD from OSI states that a software is considered Open Source if it fulfills the following criteria:
- Free redistribution: Users may sell or give away the software;
- Easy source code access: in clear non obscure form to facilitate further modification;
- Allowing derived works: which may be distributed with the same license as the original form;
- Original source code Integrity: modified source code is redistributable as a separate version, or redistributing modified version as a patch;
- Not discriminating any person: accepting contribution from anyone;
- Not discriminating any field: embracing all users, including business users;
- Distributed license: executable license rights without needing another license;
- Non-product specific license: the software grants equal rights as a single product or as part of a bundle;
- The license doesn’t restrict other software: allowing distribution along with other software;
- Technology-neutral license: Not locking the software on certain technology or interface.
Open Development Model
What clearly distinguishes Open Source and proprietary software is the Open Development Model. While proprietary software is developed under a closed model with only a certain number of developers, Open Source software uses a different approach, which is distinguished by the following traits;
- Freely and publicly accessible source code
Source code availability is the most important distinction between Open Source and proprietary software. Proprietary software hides the source from the public. On the other side, Open Source software enables the public to access the source code, whether only on each release, or on constantly available. Opening the source code encourages more feedback, speeds up testing and improvement.
- Peer production cooperation
Instead having their roles assigned like in proprietary software development teams, Open Source project members chose their own roles. The development is run with peer production work method where multiple independent committees coordinates the efforts of many contributors to achieve mutual result in the software’s release version.
- Contributor’s voluntary participation
Different from proprietary software teams, Open Source contributors work voluntarily. They understand the project doesn’t directly offer financial rewards. Sometimes some contributors may not deliver to their roles. But there’s a natural selection in Open Source projects where participants who don’t deliver get disregarded, enabling the project to keep producing world class software.
- Geographically varied contributor backgrounds
Open Source project contributors often vary in geographical location, in many countries and even continents. Individual work results are submitted through the internet, so to in doing peer review, discussions and coordination. This decentralizes Open Source projects’ decision making because many committees can handle different aspects of the software functions.
Selecting Your Software
With the Open Source Definition and the nature of the open development model, we can categorize a software as Open Source or not, and differentiate between Open Source and proprietary software. It’s also important to know that Open Source software is divided as the pure version and dual licensed ones.
By embracing software commercialization, Open Source software evolve into not constrained by the “proprietary or not” grouping. Now Open Source software offers paid or free alternatives. Paid Open Source software offers the dual licensing scheme dual licensing, with the free version having limited features, to interest users into buying the commercial version. For example there is MySQL database system, and content management system MagnoliaCMS. On the other side the pure Open Source software is distinctly with no licensing fees, with a permissive license, and with no commercial company as the software’s owner. For example there are PostgreSQL database system and many versions of Linux operating system.
In conclusion, Open Source software definition is important in categorizing whether a software is Open Source or not. With detailed definition, business users can avoid problems that may rise from Free Software which are not necessarily Open Source.
More info about open source and database postgresql please visit www.equnix.co.id/postgresql
Copyright © 2016, PT. Equnix Business Solutions. All rights reserved.