Software licenses and releasing Python programs for review

Rocco Moretti roccomoretti at hotpop.com
Mon May 30 11:16:44 EDT 2005


poisondart wrote:

> With the exception of the example with neighbour Bobby (which directly
> utilizes my code for profit, in which case is a definite no), I don't
> see why your other examples should make me reconsider releasing my
> software for free.

I don't think he's trying to make you reconsider releasing the code for 
free, he just wants you to think about what you want to happen in 
certain scenarios - There are no right or wrong answers, but your 
answers will help you decide what license you want to release your code as.

> You publish a magazine and include a CD with my code--you are using my
> code to attract readers (this, I did not agree to).

Well, depending on what license you use, the agreement may be implicit 
in the license. (e.g. the GPL allows Steven to do this, a Microsoft type 
EULA doesn't)

> The example with colleague Betty does not say whether she has debugged
> my code and sold it for profit. If she does, then she will have done
> something very selfish in my view--also undesirable. 

What's selfish? The fact that she debugged it? The fact that she sold 
it? The fact that she debugged it and didn't give you the corrections? 
Your answer will help you decide what you want in a license.

> If she hasn't debugged my code...what is she doing selling my property?

It depends on how you look at things. She might not be selling your 
software - she's selling a list of bug-free and stable programs, which 
happens to have a copy of your program on the same CD. If you allow free 
redistribution, this is implicit. She's distributing your program for 
free (allowed by your license), but is selling her value added service 
of certifying that the program is bug free.

> I plan to release my programs for academic and pedagogical purposes.
> The knowledge contained in these programs is the same knowledge that
> people use to speak a language--did you buy a copy of the English
> language when you decided to learn it?
> 
> This is why I feel that it would not make sense for me to sell my
> programs for profit.

You have several things going on here:

Although it might not make sense for *you* to sell your program for 
profit, someone else might think it worthwhile. Do you want to disallow 
this, why or why not?

Secondly, you should distinguish between being *required* to purchase 
the program and being *able* to purchase the program. Just because 
Barney is selling a copy of the program doesn't mean other people can't 
download it for free off of your website. They *could* pay for it, but 
they can also get it for free. Using your English language example, no 
one sold me a copy of the English language, but there are a number of 
companies which have sold the "knowledge that people use to speak a 
language" to me in the form of dictionaries, thesauruses, and grammar 
guides over the years. I'm no less free in using the English language, 
but Merriam Webster still can make money by selling it back to me.

 > The competitor Barney--This is exactly what I _don't_ want. What's he
 > doing selling my code?

Last point to consider. Say you make a restrictive license. No 
commercial use. No redistribution. etc. Barney comes along and ignores 
the license - distributes the program, sells it for loads of cash.

What are you willing to do? Send a nasty letter? Barney isn't a nice 
guy. He doesn't care that you've sent him an angry letter. He'll still 
sell your program - he's making loads of money. Are you willing to sue 
him? A license doesn't mean much unless you're willing to back it up in 
court. Are you prepared to spend years and $$$$ to make Barney stop?

If you aren't making money off of it yourself, having a restrictive 
license isn't going to help most hobbyists/academics, for the sole 
reason that they don't want to go the the effort required to enforce it.

If all you want is to make sure that your program is always available 
for free to academics/the general public, just use a lax license (like 
MIT) and provide it for free. So what if someone else charges for it? 
They can always go to you to get it for free.

If you're offended at the thought that someone else might be able to 
make money off of your program, then a certified "Open Source" license 
isn't really going to help - one of the requirements is no bias against 
fields of endeavor - they specifically mention the "no commercial use" 
clause as forbidden. http://www.opensource.org/docs/definition.php

That doesn't stop you from choosing a non-"open source" license if you 
want - just be aware that that license choice may substantially affect 
what the community is willing to give back to you.



More information about the Python-list mailing list