There is nothing wrong with your television set. Do not attempt to adjust the picture.
As Jan Goyvaerts just pointed out, there’s potentially a slight problem with the license I have used for my source code.
First of all let me put any doubts to rest; If you distribute your software in compiled form, and have used any of my software libraries, you are not required, by me, to publish any source code.
Before I address the specific issue, let me explain why I have even bothered to put a license on the stuff I release.
Over the years I’ve released a lot of source code. In the beginning the software was distributed on fan-fold paper, floppies at computer club meetings, through BBSs and later through FidoNet. Back then the term Open Source didn’t even exist and a license was just something you needed to drive a vehicle. For me at least, there was no need to attach any terms to the code I released because I either knew my users personally or didn’t care what people did with my stuff. After all it was just source code. All the programmers I knew wrote code for fun - Not because they got paid for it (that was just an added bonus). So in theory, no money was involved. We were all just happy hackers.
Then the internet exploded and everything changed.
With the internet as the new distribution channel my stuff suddenly got global exposure and I no longer had any control of who used it or what it was used for. That in itself wasn’t a problem, I still enjoyed what I was doing, but more and more people asked me if they could use the source in commercial applications, was this OK, was that alright, etc. I also started seeing new software libraries containing code I had written, but without any mention of me. Clearly I needed to put down some terms of usage. So I introduced THE LICENSE.
I’ve never been an open source fanatic so I have no problem with commercial closed source usage of my stuff. Although the term “quodque pro quo” does sound cool, I have never intended my licenses to poison applications that use my source code.
When I release source code I have a few simple principles that I would like the users to respect:
I’m guessing that you, as you read the above two points, had no problem understanding the first point. It’s the second point that people most often misunderstand. I don’t blame you. The last few licenses I have used have not mentioned this point at all. Not that I don’t care anymore, but if I can’t explain to people what I mean, I can’t very well expect them to abide by my terms.
Again: If you distribute your software in compiled form, and have used any of my software libraries, you are not required, by me, to publish any source code.
The Create Commons license I use now has replaced various homegrown attempts of weak copyleft licenses. IANAL so none of them ever worked very well. They were either too restrictive, too vague or so complex that you need a lawyer and a philosopher to understand their purpose.
I chose a CC license because, contrary to the other licenses, they provided the easy to understand Commons Deed (and nice graphics too). From experience with my previous licenses I knew that this was something both I and my users needed.
The concern Jan Goyvaerts has raised with the CC_BY_SA license has to do with the interpretation of how the license relates to software that uses or has been linked with a library licensed under the Share Alike license. Jan’s interpretation of the license is that it requires him to release the source code of his application.
I agree with Jan that there’s room for interpretation in the license, but at no point does the license state that just because one has used Share Alike licensed source code, one has to release source code. The license just states that one must adapt a compatible or similar license.
Please understand that the purpose of the CC_BY_SA license, and basically all copyleft licenses, is to protect the rights of the author. Even if his work is altered or redistributed in another form.
After reading Jan Goyvaerts article I studied the CC license once again and stumbled upon this in the CC FAQ: Can I license software using CC licenses?
It wasn’t there a year ago, so I guess someone else came to the same conclusion as Jan. I’m still pretty sure that the intended purpose of the CC license isn’t what Jan fears, but if there’s doubt, there’s lawyers, and nobody likes those.
So what are the alternatives? I’ve glimpsed through the LGPL and BSD licenses and I really don’t like either of them.
IMO the CC LGPL deed gives the user the completely wrong impression of the purpose of the license and AFAICT, IANAL, etc, LGPL does not deal with attribution at all
Then there’s the BSD license which pretty much only cover attribution, but which I think the CC BSD deed also misrepresents. Also the BSD is disqualified because it isn’t a copyleft license and for use of UPPERCASE :-).
The MPL is probably the best alternative. It’s fairly easy to understand, it’s weak copyleft and it’s compatible with my intent. Unfortunately there’s no easy-to-understand summary available (and no cool logos).
I will change the license sooner (unlikely) or later (or much later). It’ll happen when I get the time and motivation to do so. Until then, anyone that has reservations about the CC license is welcome to contact me directly.
I’m not sure if a statement made in a blog has any legal value, but if it’s any help for you, y’all are hereby granted the right to apply the MPL license to any and all of my software libraries.
I've recently been looking into this area myself.
At the end of the day, it doesn't matter how tightly drawn up a license is, once we give away source all bets are off - someone intent on ripping off your effort without giving you any recognition is able to do so and it's unlikely that you will ever find out or be able to do anything about it if you do.
Similarly anyone willing to respect your rights and generosity in making the source available will do so, even if the license doesn't require it.
I wrestled with wanting to give source away but also be recognised for doing so, until I realised that the two aims were somewhat contradictory.
If reach the point where I am willing to give something away, I have inherently reached a point where recognition or reward for doing so is not important. I just need to realise that myself.
It's almost as if it's one hemisphere of the brain - the creative side perhaps - wanting to give it up, and the other hemisphere - the logical/rational side - clinging to an ingrained notion of property and fighting that urge.
In the end I went with the X11 (a.k.a MIT) License - for one thing it was the easiest and least intrusive to incorporate into my source - where of course it is most important.
I would be interested to learn whether you considered that one, and if you did why you went with the MPL instead.
Thanks for your response, Anders.
If attribution is important to you, then I agree that the classic open source licenses aren't a good option. If you want to keep the CC-BY-SA license, while still allowing your component to be used in closed source applications, you can do that by explicitly granting permission to do so. E.g. "This software component is licensed under <a href="http://creativecommons.org/licenses/by-sa/3.0/">CC-BY-SA</a>. The Share Alike condition is waived if the component is used to create an application or product where the component is not a substantial part of the overall application or product."
The commons deed clearly states: "Any of the above conditions can be waived if you get permission from the copyright holder." Adding a few sentences to the "license" section of your component's page should do it. Ideally, put those same few sentences at the top of the (main) source files of your component. Then there's no argument as to what license you've chosen to put onto your software.
Incidentally, if you don't put a license on your software at all, the default is that nobody can legally do anything with it.
I have read the CC-BY-SA deed many times but still don't know what people can do with a commercial product using some CC-BY-SA components.
If I create and sell a CC-BY-SA product (binary code without source code) using some CC-BY-SA components, can people:
- Distribute (copy) it to their friend freely ? - I hope not, that violates the commercial law.
- Share the source code to other people ? - How? Can they ask me to give them free source code?
The CC-BY-SA license does not affect your rights to your own compiled product. It only protects my rights.
I'm not sure what more I can say if this article didn't explain my position and the purpose of the license.