Hi,

I've been looking at software licenses and JavaScript and have to say it is a little confusing. I wondered if I could get clarification on a few things (and yes I accept it is not legal advice). From what I can tell there are:

Licenses that promote open source
GPL
LGPL
MPL

Licenses that let you do just about anything
MIT/X11
Apache
BSD

The MIT one seems to be the most straight forward and am pleased to see that most of the JQuery plugins I use use this license.

  1. Am I right in saying that GPL is a poor choice for JavaScript? It seems there is a lot of confusion over what constitutes “linking” in the context of a website. By the way, what exactly is static and dynamic linking?
  2. Does GPL mean everything you write that uses a GPL license must be open sourced under GPL whereas LGPL and MPL are geared more towards only making certain libraries/modules and derivative works open source?
  3. I use CKEditor which is triple-licensed under GPL, LGPL and MPL. The Mozilla Public License looks the most permissive. I read the FAQ on Mozilla and it seems you can modify the source “privately” (i.e. you don't distribute it to the public) or use it as is and not have to open source it. If you do modify it and distribute it, you need to open source the library you changed and publish any changes. In the context of using CKEditor (a WYSIWYG editor) for clients' websites would this count as private use seeing I am not distributing it? What if the editor appeared on a publicly available part of the website (i.e. not the CMS)? Is that distribution? It doesn't matter either way as I have not changed the source. I am just curious.


It seems like a bit of a minefield out there but from what I can tell the MIT license is best if you aren't bothered about open source. If you are go for the MPL.

Thanks.