Open source software has been the origin of a huge range of widely-used products from Linux to WordPress but what is it exactly, and what advantages does it offer for software developers?
What is open source software?
An open source software license is one for which the original author has decided to publicly distribute the underlying source code with the understanding that it will be reused, added to and — hopefully — improved upon by the greater software development community.
It is a licensing model that encourages broad collaboration with the idea that great advances can come swiftly when people work in unison. But more than just a utopian ideal, open source licensing fuels businesses across all sectors. In fact, much of the internet is built upon open source software licenses. It has been a catalyst for fast, high-quality development that has enabled the widespread use of technology and ushered in many advances in science and technology.
In the world of innovation, intellectual property is one of the key assets a business or independent developer can own. In the case of the software industry, developers typically compile their code into applications, and do not share that code with the public. Software code is like the secret recipe for Coca-Cola; highly valued proprietary information that is protected by copyright. If a competitor should try to reverse engineer the source code — or even the functionality — of a piece of software, the original author can take legal action against them.
With an open source licensing agreement, however, the author provides the code to the public and, in a way, says, “Here. . . why don’t you have a go at it?”
What are the advantages of an open source license?
The reasons for choosing to offer an open source license are many:
How does open source development work?
The global open source software community is self-regulated by a consortium of volunteers at the Open Source Initiative (OSI).The OSI has taken on the task of defining open source software and establishing basic rules for participating in this licensing model, including but not limited to:
Open source software differs from Freeware, which is software that the author provides free of charge (and often without a commitment to supporting the software), but with very clear restrictions on how it may be used and no provision of source code. Whereas Freeware is often a small application that performs a very specific function (often solving a universal problem), open source software can be very complex and highly functional. It benefits from being developed and supported by a large global community.
Where has open source software been used?
There are many examples of highly successful open source software products, some of which you may already be familiar with:
Read more: Top 10 open source automated testing tools