Software Licensing

Niroshan Pushparaj
6 min readAug 11, 2021

Most of the people don’t think about Software License. What do you think about Software License. Is it important for our career path?. Let’s talk about that.

What is Software License ?

A Software License is a legal instrument (usually by way of contract law, with or without printed material) governing the use or redistribution of software. Under copyright law all software is copyright protected, in source code as also object code form. The only exception is software in the public domain. A typical software license grants the licensee, typically an end-user, permission to use one or more copies of software in ways where such a use would otherwise potentially constitute copyright infringement of the software owner’s exclusive rights under copyright law. Usually, software ownership remains with the software developer, and end-users license a copy for private usage.

Types of software licenses

If you write code, you also reuse code, including code snippets, libraries, functions, frameworks, and entire applications. All software code comes with certain rights and obligations if you want to add it to your code base. Free and open-source software (FOSS) is free of cost, but you aren’t free to use it as you wish. Even unlicensed code snippets copied from Stack Overflow have obligations for reuse. But formally developed code usually comes with a specific software license.

There are many different types of software licenses, and the penalties for license non-compliance can be harsh. To protect your code and your organization, you need to understand these software licenses before using any code, including libraries and frameworks, you didn’t write yourself. See our list of the top open source licenses and their potential legal risks. Here are five types of common software license models you need to understand.

1.Public domain

This is the most permissive type of software license. When software is in the public domain, anyone can modify and use the software without any restrictions. But you should always make sure it’s secure before adding it to your own code-base. Warning: Code that doesn’t have an explicit license is NOT automatically in the public domain. This includes code snippets you find on the internet.


Permissive licenses are also known as “Apache-style” or “BSD style.” They contain 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. Aside from the Apache License and the BSD License, another common variant is the MIT License.


The GNU Lesser General Public License allows you to link to open source libraries in your software. If you simply compile or link an LGPL-licensed library with your own 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.


Copyleft licenses are also known as reciprocal licenses or restrictive licenses. The most well-known example of copyleft or reciprocal license is the GPL. These licenses allow 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. (A derivative is any new software you develop that contains the component.)

The catch here is that the users of your software would also have the right to modify the code. Therefore, you’d have to make your own source code available. But of course, exposing your source code may not be in your best interests.


Of all types of software licenses, this is the most restrictive. 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.

Copyright law

Copyright refers to the legal right of the owner of intellectual property. In simpler terms, copyright is the right to copy. This means that the original creators of products and anyone they give authorization to are the only ones with the exclusive right to reproduce the work.

Copyright does not protect facts, ideas, systems, or methods of operation, but instead protects the way that these things are expressed. You can outline your ideas in writing or drawings, but a copyright cannot protect the idea itself. Instead, it protects fixed, tangible mediums of expression that can be reproduced, i.e. the final written or artistic work.

Software Copyright Infringement

When you run a program on a computer it is often impossible to avoid copying some of the code as there is normally some automatic copying of the program that takes place within the computer’s memory in order to enable the software to function. Also uniquely with software, copyright is not only infringed by taking a direct copy of the original work, but also by adapting versions of the original.

Software copyright can also be infringed without even taking a copy of the code. For example, using an original computer program for “inspiration”, to create the same functionality in a new program. Even if none of the original code is actually used, the copyright in the original program may in some cases be infringed.

Software copyright is a complex and evolving area of law and unlike other artistic works, software copies are sold with specific terms attached, in order to highlight what constitutes acceptable usage.

How to copyright software

Software copyright is predominantly used by software developers and proprietary software owners to prevent unauthorized copying of their software. The copyright holder is typically the work’s creator, or a publisher or other business to whom copyright has been assigned. Copyright holders routinely invoke legal and technological measures to prevent and penalize copyright infringement where works protected by copyright law are used without permission.

Where there is no direct copying of code, line-for-line, it can be difficult to prove that copying has actually occurred. One way of trying to make copying easier to detect is to include redundant code or program components in among the real code. If an alleged copy includes the same redundant program components, even if they are not line-for-line copies, it can provide a very strong inference that copying has occurred.

Independent software vendors should be very careful about disclosing source code. If someone can independently create from scratch what you have produced, just by looking at your source code, providing that the code is substantively different then your software copyright has not been infringed. The modification of your copyrighted software for personal use may also be deemed acceptable under the caveat of ‘fair use’ and also code breaking and reverse engineering when a ‘legitimate reason’ can be provided for doing so. However, ultimately any unauthorized use of the software is deemed to be piracy or theft, in recognition of the commercial harm of infringement of copyright holders.

Ownership vs Licensing


When a developer or a company developed a software, the company or the developer has all it’s rights to distribute, sell, modify or rent. This is called the ownership.


Licensing means when you buy a software, You will get a license with the software. which includes some guidelines (can dos and cannot dos) to use the software.

Before you install an application, always read the license and agreement . Most vendors won’t negotiate or modify a software license, if it includes unfair or unreasonable terms, your only recourse might be to return the software to the vendor.

Thank You !!!