As a part of this series, I am writing on software licensing models (software licensing and open source), particularly when you use software components inside your software product. For example, you could be using an open source software for parsing XML, instead of writing your own software for this purpose. The same thing could be repeated for any such open source software product that you may want to use.
Now, if you want to use a service (such as providing an email service, or having an online photo editor, or some other similar service), then it is easier to use open source software than if you are distributing your product as a shrink wrapped software. So, in the previous post, we talked about how using a CopyLeft license put terms on the final software that any derivative work based on the copyleft license would also need to be released on the same license as the copyleft software. Further, these rights cannot be subjected to revocation at a later point. So, if a free software does not ensure that derivative works be distributed under the same license, then it is not a copyleft license.
In addition, copyleft itself has weak and strong provisions. A weak copyleft provision allows that if a commercial software uses a copyleft software component, then only if the component is changed, then the changed section of code will need to be available for re-distribution. The concept of a weak copyleft provision is provided under the GNU Lesser General Public License and the Mozilla Public License (so you can find commercial software that actually incorporates component software that is licensed under the LGPL and MPL); while there are strong licenses such as the GNU General Public License that enjoins the entire incorporating software to be released under the same terms as the component.
What this also means is that if you are working with a commercial software company, then any use of licenses which have terms such as copyleft, GPL, LGPL, etc needs to be looked at very carefully before you go ahead with using such software. Using GPL would in almost all cases be totally ruled out.
More in the next post ...
Sunday, November 6, 2011
Different licensing situations in software development - Part 7
Posted by
Ashish Agarwal
at
11/06/2011 04:05:00 PM
0
comments
Labels: Copyleft, GPL, LGPL, License, Licensing, Open Source software, Software development, Software Development Licensing, Software licenses, Software licensing
![]() | Subscribe by Email |
|
Thursday, November 3, 2011
Different licensing situations in software development - Part 5
In previous posts (License conditions), I have been writing about the need for having the proper software licenses when you are developing a software product and you are using some external software components inside your software.
There are a large number of software components apparently available free for you to start using. Suppose you want to have a database inside your software and don't want to pay the large amounts needed for MS SQL Server, or Oracle Database. Or you could need a XML parser, or some software for running regular expressions, or many other such needs, and when you search for these software, you will find plenty of such software available in the market. When you are starting a software product, there is plenty of temptation to pick up a component that meets your needs, and just start using it. I hope that some of the previous posts have explained that there are a number of problems with going ahead with such an approach.
So, if you do want to pick up an open source component to use in your own software, you need to understand the terms under which the software has been released, and if you don't have a legal person to help you, then you can be in some problem. At the very least, you should be able to look at the type of license with the software component, and then be able to say whether the license meets your needs. Here is an explanation of what open source software is, and what are some of the common types of software licenses used in open source software:
Open source software means software that is available in the form of source code; also the license available with the software gives users the permission to modify / change / compile / and in some cases, distribute the software source code.
Using open source software (either in the form of the application, or using the source code inside your application) has resulted in a huge amount of savings for consumers, but there are some legal implications of using this code.
Some of the open source software in use are:
Apache License,
MIT License,
BSD license,
GNU Lesser General Public License,
GNU General Public License,
Eclipse Public License and
Mozilla Public License
I will continue on this subject in the next set of posts ..
Posted by
Ashish Agarwal
at
11/03/2011 08:53:00 PM
0
comments
Labels: License, Licensing, Open Source software, Software development, Software Development Licensing
![]() | Subscribe by Email |
|
Sunday, October 30, 2011
Different licensing situations in software development - Part 4
In previous posts (licensing situations in software), I have talked about how not licensing any sort of stuff not owned by you can cause a lot of problems. This can be when you are using software that is not owned by your company (and for which you have not taken the license to use within your software), or when you are using content such as images that does not belong to you. Another great example is when you use quotes / sections from books / parts of poems that do not belong to you (which can happen if you are developing a software that does some sort of word processing / helps in the creative process / have a website that provides some sort of content (such as a site that provides you electronic greeting cards)). All these cases lead you towards violation of somebody else's ownership and possible legal action against you.
If you think that this is not serious, consider the following cases:
Claims by Microsoft (link). These claims are from Microsoft against Open Source software.
Action against Microsoft (link). This was a judgment against Microsoft by a judge for the incorporation of some software.
These are big cases, but there are smaller cases that happen all the time, where companies have to pay damages because they are using some components for which the licensing is not proper. So, you need to ensure that any component that you integrate, or any content owner by others that you integrate, all needs to be thought through and part of a strategy.
Well, this is enough for this post, will write more on this topic in the next post.
Posted by
Ashish Agarwal
at
10/30/2011 08:47:00 PM
3
comments
Labels: Images, License, Licensing, Software development, Software Development Licensing, Software licenses, Using licensed software
![]() | Subscribe by Email |
|
Saturday, October 29, 2011
Different licensing situations in software development - Part 3
In previous posts (software licensing), I have been writing about software licensing, the need for the same, and what implications this has for the software development process. In this post, I will write more on this topic.
Another area where people slip up is when they need an image for their software. Consider that you are developing a software that is meant for children, and you want a great image for some of the dialogs / screens that are there in the software. Now, what do you do ? Well, I have seen many cases where people look for some great looking images on the internet, find them, reshape them as per their needs, and then start using those images.
In many cases, this strategy works, since the original owner of the image does not that something like this has happened. Or the images used are such that they are somewhat generic, and the owner cannot even figure out that this is their specific image. Or, the person thinks that it is just an image, and the effort involved to challenge the usage of the image in a commercial usage is not worth it.
But there is a contra case. Suppose you just downloaded some images, and these images also show some recognizable faces. This is a very serious matter. When a recognizable person is used in commercial situations, the person should have given permission to use their image for this specific purpose. If this is not done, the person can file suit, and possibly claim penalties for such unauthorized usage. Such usage is typically covered under a term such as a model release (link)
In case you are still not convinced about the need to use the proper software licenses / copyright of images, I will wrote more about this in the next post on this subject.
Posted by
Ashish Agarwal
at
10/29/2011 12:49:00 PM
0
comments
Labels: Copyright, Development, License, Licensing, Software development, Software Development Licensing, Software Development process
![]() | Subscribe by Email |
|
Sunday, October 16, 2011
Different licensing situations in software development - Part 2
In the previous post (software licensing in software development), I had written about some of the situations that emerge in the realm of commercial software development. Most of these have to do with the usage of software from other companies that are included in your own software. One may ask as to why you would need to include software from other companies as part of your own deliverable ? Well, there are many reasons. The biggest reason is that your team cannot write software for everything that is needed to be done, and somebody may have done a far better job in a specific area of software that you would take a long time to do.
Consider some specific situations. You have a children's software that allows them to create their own cards with a lot of fancy stuff, and eventually, you would be able to create some cards with lots of music and some videos. One of the ways to share this is through writing such cards to a DVD, such that you can give this to the friends of your children and they can play this on their own DVD players. There are 2 spots where there is a need for some specialised software. One, when you are using pictures and videos, these can be in a number of different formats and you need a way to read the most common of these. If you were to try and write all such tasks into your own software, your team might not have the technical ability to be able to decode some of the formats, and you will need to use some external software or codecs for the same purpose.
Similarly, when you need to write these creations to the DVD, you need some specialized software. Writing to DVD requires the ability to connect to the DVD using the appropriate middleware, and a lot of this stuff is already present in existing software that can be used in your own software.
These are 2 simple cases that show the usage of other 3rd party software in your code, and as your own software becomes more complicated, the need for more such software becomes even more complicated.
I will write more in the next such post ..
Posted by
Ashish Agarwal
at
10/16/2011 02:42:00 PM
0
comments
Labels: Software development, Software Development Licensing, Software licenses, Software licensing, Software Process
![]() | Subscribe by Email |
|