Musings on Open Source licensing

As I continue to make rapid progress on BlogBridge, now with a significant amount of help, I am asking myself some tricky questions about licensing, which I thought I'd try out here. (By the way, BlogBridge is the blog reader that I've been working on and which is soon going to be available in beta form.)

BlogBridge is an open source application. The source code is all available on www.sourceforge.net for any and all to look at and play with. It's open source also because of the license that you'll see in each source file, the so-called "Lesser GPL." I would like to say that I chose that one after long and careful thought, but the truth is that I picked it more or less randomly because another project that I am contributing to was using it.

Now that BlogBridge is going to get some more visibility, the question is, what rights exactly do I want to give away and which ones do I want to keep for myself?

My current answers are:

  • I want it to be legitimately 'Open Source'

  • I want anyone to be able to look at the source code and play with it, for personal purposes and limited commercial purposes.

  • I want to reserve to myself the right to license or sell BlogBridge to a commercial entity for commercial purposes.

  • I want to reserve to myself the rights of invention and origination and patent.

Ok, let's refine that.

What are commercial purposes and what are limited commercial purposes? I guess in a vague sense I would like individuals to do whatever they like with it but if IBM or Microsoft wants it they have to deal with me (phat chance!)

So here are some questions that I am trying to answer , in that context:

  • Given that all the source is already out there, what are the considerations around changing the license. If I just edit all the files with a new license and post it out on the SourceForge server, is that kosher? And does it do the trick?

  • Is there a legitimate Open Source license that exists or that has been tested or that I can create, which achieves what I outlined above?

Looking for advice. I will post further musings on this as I make progress.