What software license should I release my programs under?
December 5, 2006 5:35 PM   Subscribe

What kind of software license should I release my programs under?

I have written some really great software that I have prior released under GPL. I recently rewrote it and added a bunch of great upgrades. I would like to keep it open-source, and free as long as it is not used for any commercial use but my own. That includes even if people change it, I don't want them to be able to use it for commercial use. What kind of software license should I use?
posted by lockle to Computers & Internet (9 answers total) 2 users marked this as a favorite
Just so we're clear, what you're describing is not the least bit open-source. The "open" in "open-source" means the freedom to use, modify and distribute the work for any purpose. You want to apply restrictions to how people can use your software, which is your right -- but you can't call the result open source.

But you don't have to use someone else's license. Write down the terms you're willing to let people use the software under, and away you go. If you want more legalese, you might find the Creative Commons software licenses up your alley.
posted by mendel at 6:20 PM on December 5, 2006

lockle: could you link to the software?
posted by phrontist at 6:21 PM on December 5, 2006

Whoa, that is not the page I thought it was, sorry. Creative Commons has noncommercial licenses for creative works, but not specifically for software (where they're encouraging GPL and LGPL). Poke around the same site -- just not the software section.
posted by mendel at 6:22 PM on December 5, 2006

You want to apply restrictions to how people can use your software, which is your right -- but you can't call the result open source.

That's BS. You give the source code away, and you can call it open source. The OSI might not like it, but they're just trying to subvert terms. It's certainly not closed source.
posted by smackfu at 6:41 PM on December 5, 2006

But that's neither here nor there, and I shouldn't have bothered arguing it since it's off-topic.

The MAME license is one that doesn't allow commercial redistribution.
posted by smackfu at 6:50 PM on December 5, 2006

Unless your software contains no derivatives of earlier works (uses no one elses functions or runtimes, libraries, etc.), you may be bound by the terms of the license(s) for dependent code you use, even if your products aren't intentional forks of some other open source project. Even if you don't incorporate any one else's code in your software, you might want to pay attention to, and use (or very closely copy) existing "free software" licenses that have stood some court tests, such as those scrutinized by the Debian project, if you want your software to be eligible to be included in major free software distributions, or hosted in archive sites.

Getting unduly creative with your license terms is the shortest way to having your software ignored. Writing your own license will make you a community of one, insofar as development goes. Some projects are, however, by their nature, the lonely offspring of iconoclasts.
posted by paulsc at 7:03 PM on December 5, 2006

Hang on, do you mean that:

a) you want to release your code under two licences, one open source and one commercial, and you will continue to develop the commercial version independently of the open source version; or

b) you want to release your code under a licence which is copyleft in every respect except that you reserve the right to use other people's modifications in your commercial (possibly closed-source) product, while giving nobody else this right?

(a) is easy. Release your code under an open-source licence which prevents commercial use (huge list of software licences to choose from here; sorry I can't suggest a specific one) and make your own commercial fork. You won't be able to use a lot of open-source stuff in this fork, possibly including things like bug-fixes or patches submitted for the older, GPL version.

(b) is trickier. The Netscape Public Licence did something like this and it pissed a lot of people off. If you're less popular than Netscape I wouldn't bother, because nobody's going to give you their code.

Be aware that putting a non-commercial clause in your licence will cut down a lot on its popularity, because it won't be able to (for example) be included on compilations of free software which are sold. I accidentally included a clause like this in the licence for a programme I wrote years ago and it's been a pain ever since.

(I am not your lawyer - this is a general discussion of the law and not legal advice! Consult a qualified lawyer in your jurisdiction before you choose a software licence.)
posted by A Thousand Baited Hooks at 2:45 AM on December 6, 2006

Response by poster: What I mean is the software is used for surfing the internet anonymously. It is a great freeware program, and I am developing a commercial serverice to enhance it. I don't want all those other commercial services out there to be able to start using my software to create competing product/service bundles. That is my competitive advantage and I don't want to give it away to my competition. I totally plan to keep developing it, and letting people use it for free, and distribute it freely, modifications or otherwise, I just don't want to allow any part of my code to be used for commercial competition. If people want to distribute it as is, or rebrand it, that is fine. Just not allow them to use is for a commercial means other than distribution (like freeware cds) where my competition could start using my hard work for their profit.
posted by lockle at 6:34 AM on December 6, 2006

Something to consider since you've mentioned the practicality leading to the licensing: Assume that competitors are going to take your software and use it to compete against you regardless of the noncommercial clause in the license. Will you have the financial and legal resources to make them stop? If not, it doesn't matter what you put in the license.

(Alternatively, consider a competitor starting up and offering the service for free, which would comply with the license but ruin your business in the same way.)
posted by mendel at 6:07 PM on December 7, 2006

« Older Telling it Like It Is.   |   Is my new Macbook supposed to crash? Newer »
This thread is closed to new comments.