Free and open source software (FOSS) is software that uses a software license that is both recognized as “free” by the Free Software Foundation (FSF) and “open source” by the Open Software Initiative (OSI).
The definitions of “free” (based on the “four essential freedoms”) and “open source” (based on the Open Source Definition) software differs in goals philosophy behind, but have commons points is that it is software whose source code is viewable, modifiable and redistributable under the conditions established within its license.
Though there are a few exceptions, practically all software that can be considered free it can be also considered open source and viceversa.
FOSS Licenses
As introduced before, FOSS is defined based on its license, so this is a critical point.
You can read about the different FOSS licenses available on this post.
Benefits and Risks of FOSS Projects
This section summarizes the advantages and disadvantages of creating and using FOSS projects.
Take into account that it is different to create than to use FOSS projects. The post tries to take both points of view.
The advantages and risks of creating FOSS projects must be taken into account when assessing whether a project should be FOSS. The same applies when deciding to use FOSS projects.
Also take into account that proprietary software projects also have their advantages and disadvantages. There are also benefits and risks that are common for both FOSS and proprietary risks, for example the risk that a project is discontinued.
Benefits of FOSS Projects
A FOSS project may benefit over a closed-source alternative in some aspects for both project owners and users.
Benefits of developing FOSS projects:
- Direct benefits
- Source code peer review
- Testing
- Source code contributions (patches) by community
- Time not spent on the previous activities could be spent somewhere else
- Expanded market share (e.g., CNCF only accepts FOSS projects in its toolchain)
- Indirect benefits
- Increased market share
- Better reputation / brand
- Shared risk
- Reduced source code maintenance costs
- Reduced competence advantages of closed source competitors
- Indirect (non-sales) incomes
Benefits of using FOSS projects:
- No single provider (vendor lock-in) risk
- Enhanced source code reliability
- More support options
- More customization options
- Reduced or removed software use costs
Risks of FOSS Projects
Operative risks of creating FOSS projects:
- Forks may split the project attention and resources, even overthrowing the original project
- Competitors may get advantage of exploiting the product for free and without collaborating
- In case of permissive licenses, forks may use an incompatible license (like copyleft or closed source) whose contributions do not benefit the original project
- License restrictions. In case of copyleft licenses, there may be restrictions to include or link source code on permissive or proprietary projects.
IT security risks of using FOSS projects are detailed on this post about FOSS security.
FOSS Operating and Business Models
You can read a summary about how to get incomes from FOSS projects on this post.
FOSS Project Management
You can read about how to manage a FOSS project on this post.
FOSS Organizations
Types of FOSS organizations featured on this post:
- FOSS foundations
- FOSS promoters
FOSS Foundations
FOSS foundations are non-profit organizations that support and fund FOSS projects. They usually receive funds from donations by organizations and individuals.
You can read more about FOSS foundations on this post.
FOSS Promoters
FOSS promoters that not included in any of the previous categories:
- Open Source Initiative
Open Source Initiative
The Open Source Initiative (OSI) is reviewing and approving licenses that comply with the Open Source Definition (OSD).
Open Source Initiative official website
OpenUK
OpenUK is a UK-based not-for-profit company which supports open source collaboration and open technologies within the United Kingdom.
EU’s Joinup
Joinup is an European Union collaborative platform facilitating the sharing and reuse of IT solutions developed for the public sector or public administrations.
Joinup featured projects: