By Open Source software we refer to any computer program whose source code is freely accessible and universal, and whose license offers cumulatively, without exception, the following four freedoms:
- The freedom to use the program for any purpose;
- The freedom to study the functioning of the program and to adapt it to new problems;
- The freedom to distribute the program to third parties;
- The freedom to improve the program and make the modifications public, for the benefit of the whole community.
Most of Open Source software projects are managed and developed by heterogeneous programmer communities - which do not necessarily belong to the same organization - and distributed - often from different regions of the globe.
This innovative development model is based on the joint effort of multiple programmers, but they do so for different reasons: the technical challenge, the recognition, because they are users of the software or because they work in organizations that support the projects.
Many Open Source projects are associated with universities, research centers or companies that guarantee the continuity and sustainability of projects. But the Open Source model allows anyone who wants to get involved in the community to do so, regardless of whether or not they have a link to those organizations.
Communities are vital to Open Source projects, and the more active and broad the community are, the greater likelihood there is for an Open Source project to grow and to provide better functionality to its users.
Therefore, organizations that adopt Open Source software and benefit from its use should actively contribute to these communities by detecting errors, suggest improvements, design developments or contribute to its dissemination. It is this participation that guarantees its sustainability.
Adopting Open Source software does not only mean using it for a specific purpose, but it does involve active participation in its community.
This is precisely one of the great advantages of Open Source solutions, the organization and efficiency of the communities associated with it; these expert user communities, often developers, simultaneously act as a support network while allowing developers to track and correct errors in a process of continuous improvement.
Open Source Software typically reveals greater cost competitiveness compared to proprietary solutions, however being free does not necessarily mean being free.
Companies providing Open Source software base their business model on contracting for maintenance and support, training and other services, yet this cost is usually competitive compared to the costs of proprietary software.
Another aspect that sometimes raises questions in comparing these two types of solutions is the copyright. Open Source software respects copyright based on a license that determines the type of protection associated with respect for intellectual property, availability and distribution of source code, and restriction of use.
Generically the big difference between Open Source and Proprietary solutions is in access to the source code that companies providing Open Source solutions make available.