It is rare for any software product to be entirely developed from scratch. The way developers make use of existing code and libraries can take a few forms. Each will have its own important considerations:
Newly developed: where code is written from scratch for the software product, or is otherwise owned the software developer. As the software developer owns the code or libraries, it can be used and licensed as they wish.
Licensed: This is generally subject to a third-party licence agreement. Any use of code or libraries must be in accordance with the licence agreement, even if the code was made available with or without payment.
Open source: Open source software is a form of licensing scheme where the source code is publicly available with relaxed or no restrictions on use or modification.
Defining open source
There are a few competing definitions for ‘open source software’. However, generally for software to qualify as open source, users must be able to freely (in relation to rights, not payment) copy, study, adapt, improve and distribute the source code of the software.
One of the key elements to open source licences is that any changes, improvements or adaptations to the code base must themselves become subject to the same open source licence.
Open source software is mostly made available free of charge, though this does not need to be the case, depending on the definition adopted and the specific open source licence used.
Open Source and IP
Open source code often comes with the benefit of tapping into a community of developers. But you should also be aware of the IP implications of using existing open source code for your own software or releasing your own code as open source.
There are many standard forms of licence terms which are used for open source software. It’s typical for these licenses to place restrictions on the redistribution of the open source software or software bundled with or built upon the open source software.
For example, if you use open source code as part of your work, there may be an expectation that your code will become subject to the same open source licence as the code you’ve used. Meaning there might be an expectation it can also be freely copied, studied, adapted, modified and distributed. Maybe even outside your control and without you being able to commercialise its use.
Before deciding to use open source software or release your own code under an open source licence, carefully consider the terms governing use and distribution and their legal consequences.