Why The License?

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.

In The Beginning

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.

Lex Anders

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:

  • Attribution
    Now as then, peer recognition is the only payment I receive for my effort.
    I would like that my name stays on my work. If possible, I would like my contribution to be acknowledged in the final product, but I can understand that this is not always possible.
    I do not want someone to pass my work of as their own. I do not want someone to modify my work and pass it on as their own.
  • Freeware
    When I give something away for free, I would like it to stay free.
    I do not want someone to make a profit from it without some independent effort of their own.
    I have no problem with people using my source in commercial products. I even prefer it. I would however like people to add substantial value, before they begin charging for it. I have seen countless violations of principle. For example; My TGIFImage library comes with a GIF to AVI example and an AVI to GIF example. I know of at least four commercial applications that are nothing more than these two demos wrapped into a single application with some eye candy on top. Less than a days work.

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 License

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.

Alternatives

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).

OK, so what are we supposed to do?

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.