Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

If you click the cc-wiki link at the bottom of this site, you get a nice plain-english description of what you are and are not allowed to do. The legal stuff is there too, but as someone looking to use a library, I don't want legalese, I want a list of what I can and cannot do.

Does a similar resource exist for software license, such as MIT, BSD-3clause, BSD-4clause, BSL, GPLv2, GPLv3, etc?

share|improve this question
2  
There are lots. But the GPL is so complicated (and subject to so many different interpretations) that it's impossible to get your head around. It's almost as if the FSF wants some wiggle room, so they don't have to be pinned down to one interpretation. You can't get a straight answer anywhere on their website. All of the other licenses you mentioned are easy; you just have to follow their attribution requirements. –  Robert Harvey Jul 29 '11 at 21:24

1 Answer 1

up vote 5 down vote accepted

The reason there isn't a Creative Commons like common summary for each is they are each defined by different groups, and if you reduce the actual definition to a summary than you leave details out. So no one group can officially summarize each. Wikipedia has a page for each license, which summarizes each.

The bottom line is if you don't understand the license you need to find a lawyer or someone that does. Each usage is different, so it is better to be clear.

Wikipedia also has a pretty good comparison. It indicates if each license allows

  • Link with code using a different license (necessary to use with closed source)
  • Release changes under a different license

and

  • FSF approval
  • OSI approval
  • DFSG approval
  • Fedora Project approval
  • Compatible with GPL

Based on familiarity with the philosophy of the different approval organizations you can get a pretty good idea about each license.

BSL, BSD & MIT are plain English and short enough to read anyway.

  • Most all licenses require attribution. It is a good practice anyway. Include it in the code, in the about page, and the documentation / website.

  • If you cannot mix with another license (link or release) then it is tricky to use in a commercial application (unless you make it open source too, thus being all the same license). You can sell (commercialize) an open source application, you just have to provide the code too!

  • FSF will not approve a license that restricts the usage. For example if the license says "non-commercial" or "not for government use" or "don't use for something the author doesn't approve of".

  • OSI means it meets the Open Source definition, which is a list of requirements.

In a nutshell, Apache, BSL, BSD, MIT and MPL can be used in a closed source application. Any changes to MPL code must be redistributed. GPL cannot be used with closed source code except under specific exceptions. LGPL is similar to the MPL, but it is compatible with the GPL (while the MPL is not for various technical reasons).

  • Least restrictive: Apache, BSD, MIT, BSL

  • Compromise: LGPL, MPL

  • Most restrictive: GPL

Hope that helps. There are a lot of other details in them about patents and such too.

share|improve this answer
    
I'm not familiar with the philosophies of the different organizations. I'm looking for whether or not you can copy the code in commercial products, what kinds of attribution need to be there, that sort of thing. Wikipedia doesn't have those. –  Billy ONeal Jul 30 '11 at 0:13
    
@Billy: Based on your explanation of what you are looking for I expanded my answer. –  Jim McKeeth Jul 30 '11 at 1:06

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.