Software license

Chanaka Madushan Herath
3 min readSep 7, 2020


What is a software license?

A software license is an agreement between you and the software owner, which contains legally binding instructions for the use and distribution of the software.
Software licenses generally give the end user the right to use one or more copies of the software without infringing copyright. The license also specifies the responsibilities of the licensee and may limit the use of the software.

Software licenses typically answer the following questions:
Where can the program be installed and how often?
Can you copy, modify or distribute it?
Can I see the source code?
Software fees and license fees (if applicable) are sometimes mentioned in the license agreement, but are generally described elsewhere.

The formally generated code is usually accompanied by a specific software license.

When writing code, the code will be reused, including snippets, libraries, functions, frames, and the entire application. If software code is added to the code library, all software code has certain rights and obligations. Free and open source software (FOSS) is free of cost, but you can not use it your way. You must also reuse snippets without permission from Stack Overflow.

There are many types of software licenses and there may be severe penalties for license violations. If you reuse the data without fulfilling your license obligations, you may be charged a license and may be required to publish your own source code. To protect your code and your organization, you must understand the licenses of this software before using the code (including libraries and frameworks).

Different types of software licenses

Public domain -
This is the most generous type of software license. As long as the software is in the public domain, anyone can modify and use the software without restrictions.

Permissive -
Contains minimum requirements for software modification or distribution. This type of software license is probably the most widely used license for free open source software. In addition to the Apache license and BSD license, the MIT license (also known as “Apache style” or “BSD style”) is another popular variation.

LGPL(Lesser General Public License) -
The GNU Lesser General Public License allows you to connect to open source libraries. Just compile or link the LGPL- licensed library to your own password and you can share the app with any license you need (even with an exclusive license). However, if you modify the library or copy part of the library in code, you must share your application under similar conditions in the LGPL.

Copyleft -
The GPL is the most popular example of copying or cross-licensing. These licenses allow you to modify the license code and distribute new projects based on the license code, provided you are distributing new projects or modifications with the same software license. The idea is that software users have the right to modify the code, so they will have the provision of their own source code. Of course, it may not be in your best interest to publish the source code, and the link copy license is also referred to as a shared license or restricted license.
This is the most stringent. The idea behind it is to maintain all rights. Commonly used for proprietary software that cannot be modified or redistributed.
Software licenses are generally proprietary, free, or open source, and what sets them apart are the terms under which users may redistribute or copy the software for development or use future.



Chanaka Madushan Herath

software Engineering Undergraduate | University of Kelaniya