Software Licensing
This a short article to get an idea about currently available software licenses.
What is a Software license?
Software is a series of instructions that tell the hardware of a computer what to do. When we purchase software, you obtain a license agreement, which grants you the right to use the software. That provides legally binding guidelines for the use and distribution of software. It is an agreement between you and the owner of a software program. The license Also defines the responsibilities of the parties entering into the license agreement and may impose restrictions on how the software can be used.
Some examples of software licenses:
· Single-use license agreement
· Software site license
· Network site license
· GNU general public license (GPL)
Software licenses typically provide end-users with the right to one or more copies of the software without violating copyrights
There are two categories of software licenses
· Proprietary- These are software that sold or distributed under a registered trademark. A company develops and makes available this software either at a cost or as a free to install package. (End-user license agreement)
· Open Source-These are software that is designed and shipped for free such that one downloads them and installs without financial commitments. That is expected that the users do not distribute this software to other users.
5 types of currently available software licenses
01.Public domain
Most permissive type of software license. Can anyone modify and use the software without any restrictions but secure before adding it to your codebase. A code that doesn’t have an explicit license is NOT automatically in the public domain. This includes code snippets you find on the internet.
Examples: SQLite, I2P, and CERN httpd
02.Permissive
Also known as “Apache-style” or “BSD style. It Contains minimal requirements about how the software can be modified or redistributed. This type of software license is perhaps the most popular license used with free and open-source software.
Examples include the GNU All-permissive License, MIT License, BSD licenses, Apple Public Source License, an Apache license.
03.LGPL
Allows you to link to open source libraries in your software. If you simply compile or link an LGPL-licensed library with your code, you can release your application under any license you want, even a proprietary license. But if you modify the library or copy parts of it into your code, you’ll have to release your application under similar terms as the LGPL.
04.Copyleft
Also known as reciprocal licenses or restrictive licenses. This allows you to modify the licensed code and distribute new works based on it, as long as you distribute any new works or adaptations under the same software license. For example, a component’s license might say the work is free to use and distribute for personal use only. So, any derivative you create would also be limited to personal use only. Users of your software would also have the right to modify the code.
An example of copyleft or reciprocal license is the GPL
05.Proprietary
The most restrictive software license type. The idea behind it is that all rights are reserved. It’s generally used for proprietary software where the work may not be modified or redistributed.
Examples of proprietary software include Microsoft Windows, Adobe Flash Player, PS3 OS, iTunes, Adobe Photoshop, Google Earth, macOS (formerly Mac OS X and OS X), Skype, WinRAR, Oracle’s version of Java, and some versions of Unix.
Hope you all get a better idea of what is software licensing, types of software licenses with examples.Thank you for reading my article.