Difference between revisions of "Open-source"
Line 1: | Line 1: | ||
− | [[Open-source]] (or, being alternatively spelt, [[open source]]; | + | [[Open-source]] (or, being alternatively spelt, [[open source]]; originally known as [[open source software]] or by its acronym [[OSS]]; also known as [[free and open source]]; hereinafter, the ''OSS'') is software with its [[source code]] made freely available. Literally, ''open-source'' is an adjective or adjective-based noun derived from [[open-source software]] that denotes software for which its [[source code]] may be redistributed and modified, most often, under some [[open-source license]]. |
− | + | It is believed that about 88% of those [[enterprise]]s that use any software, use one or more the ''OSS'' projects. Reportedly, 94% of the users would like to contribute back to the ''OSS'' development; however, only 16% actually contribute. | |
− | + | ||
+ | ==Costs== | ||
+ | Since the ''Software'' is always distributed without any license or maintenance fee, the ''Software'' always comes at some costs usually associated with services related to the ''OSS''' evaluation, installation, integration, customization, functioning, extensions, and, security. Besides those services, key developers of the ''OSS'' may ask about voluntary donations or use [[freemium]] models. | ||
+ | |||
+ | Although all the ''OSS'' is free, not all ''free'' software is the ''OSS''. Some owners of proprietary software distribute it at no cost, but don't make its [[source code]] publicly available. For instance, [[Alphabet Inc]] distributes its both [[Google Chrome]] and [[Google Chromium]] [[web browser]]s as free software, but only [[Google Chromium]] is the ''OSS''. | ||
==Advantages== | ==Advantages== |
Revision as of 19:12, 12 October 2018
Open-source (or, being alternatively spelt, open source; originally known as open source software or by its acronym OSS; also known as free and open source; hereinafter, the OSS) is software with its source code made freely available. Literally, open-source is an adjective or adjective-based noun derived from open-source software that denotes software for which its source code may be redistributed and modified, most often, under some open-source license.
It is believed that about 88% of those enterprises that use any software, use one or more the OSS projects. Reportedly, 94% of the users would like to contribute back to the OSS development; however, only 16% actually contribute.
Costs
Since the Software is always distributed without any license or maintenance fee, the Software always comes at some costs usually associated with services related to the OSS' evaluation, installation, integration, customization, functioning, extensions, and, security. Besides those services, key developers of the OSS may ask about voluntary donations or use freemium models.
Although all the OSS is free, not all free software is the OSS. Some owners of proprietary software distribute it at no cost, but don't make its source code publicly available. For instance, Alphabet Inc distributes its both Google Chrome and Google Chromium web browsers as free software, but only Google Chromium is the OSS.
Advantages
OSS projects vary, but their advocates usually mention one or more of the following reasons for using those:
- Helpful community;
- Popularity with developers in general;
- Maturity of the solution;
- An open-source license;
- Community guidelines;
- Reading potentially helpful use cases online;
- Frequent activity.
Disadvantages
- Rarely, the users of the open-source have no formal policy for selecting or integrating open-source software;
- The biggest challenges of adopting open source were unclear documentation, lack of documentation, and the lack of external resources (such as tutorials or presentations on third-party sites).
Implementation practices
- Build the competence: solve real problems, make it easy to use, and find a community of passionate users;
- Maintain the project like a garden, which needs constant tending such as updating and bug-handling and weed control such as establishing and supervising of community guidelines;