68

I am working on a product that I don't feel is completely ready but I have a set of users that are very interested in using it now as "alpha" testers. I would like to give them the product now for free as "alpha" testers, but I would like to later license the software.

Is this possible? Can anyone point me to any links/books/articles/etc?

Thanks.

EDIT: Due to the lack of my clarity and the reponses to the question I thought I should add this statement.

I haven't decided if I am going to close-source or open-source this project yet. The user base that wants to get their hands on it now has kind of surprised me and I was concerned about what my options are as far as being able to give it to them now as open-source and later change to closed-source, or even vice versa.

Thanks to everyone who has answered and commented. I appreciate it the insights.

Adam
  • 1,093

5 Answers5

58

If you own all the code, then you can re-release it under whatever license you want.

The problem comes if someone has contributed patches to the project. What usually happens is that they own that code, and they contributed it under the current software license. (You should have some sort of contributers agreement that covers this.) Therefore, to re-license it you will need their permission. Depending on how may contributers you have, this could be hard. For a reference for this, look at the OpenStreetMap license change and how long that is taking.

But IANAL, disclaimer etc.

And what people will make of your license change is another matter, as another answer comments on.

EDIT: I answered this as it relates to open source products. But re-reading the question I see it's not clear whether it's closed source or open.

If you are talking about 2 closed source licenses it's easy: If you own all the code, then you can re-release it under whatever license you want. Just make your alpha version commercial closed source license, all the usual terms (no copying etc.), just with a price of zero.

Lernkurve
  • 847
James
  • 1,873
22

This is a tricky question, which depends on how unique the software is, and whether you expect outside people to be able to make a lot of significant contributions.

If people only send you trivial changes to your software, then you (as the original author) would remain as the only person who would hold the copyright rights to the software, and, as such, you can close it down at any time you wish. However, realise that if you've released prior version of the software under a standard open-source licence, then anyone would be able to fork your software from such old copy, and thus, chances are, you might always have an open-source competitor to your proprietary software package. This is actually exactly what has happened to Tatu Ylonen, the original author of SSH, who has since been the founder and CTO of ssh.com, having not much to do with OpenBSD and OpenSSH, even though they distribute files with his copyright. (Although Tatu Ylonen's main publicly known regret is not related to copyright, but rather that he lost the marks "ssh" and "secure shell" into generic use, losing his trademarks.)

So, what if people do send you significant changes to your software, which would be covered under copyright, and which you'd want to integrate into your source tree? You could set up one of those legal agreements, whereby contributors would assign their copyright to you, thus, legally, you'll still be the only "author" of the software. I come from the FreeBSD/OpenBSD camp, and in our view, copyright assignment is generally considered bad taste. FSF is pretty infamous for their copyright assignment on most of their software; NetBSD has it as an option to their members (which allowed The NetBSD Foundation to remove two clauses from their licence in all files where none of the individuals claimed an individual copyright to); many commercial companies have all sorts of contributor agreements that do all kinds of assignment. Where does Linus Torvalds stand? Linus also dislikes the contributor agreements, and, as you may guess, Lunux kernel doesn't have any, apart from GPLv2 itself.

So, what if you do accept copyrighted changes into your tree, without copyright assignment? This is where your original choice of licence comes into play. If you choose GPL, and thus the contributors will licence their own code to you under GPL, too, then you're pretty much stuck with GPL, and will always have to release the source code to any subsequent commercial product (but so will all of your competitors). If you choose a BSD/ISC/OpenBSD licence, then you could close the source to add extra pay features at any time you wish, without having to release any of the source changes (but you're also giving the same right to your competitors).

Of course, if years down the line you decide that, in retrospect, you would have wished for your software to be under a different licence, you could always try contacting all of your past contributors to re-license their changes under your new licence. This is a very painful and long project -- what if someone cannot be contacted? Mozilla and VLC did such relicensing in the past; they've certainly must have enjoyed the benefits of their new licence, but I highly doubt they've enjoyed the years-long process.

Anyhow, regardless whether you choose to go GPL or BSD, having an open-source version of your software would always have a great deal of benefits, proven by many successful commercial companies that revolve around writing and releasing open-source software.

cnst
  • 379
5

Your question is a bit unclear. The license doesn't typically control whether you give something away at no cost or not. The license has to do with things like ownership of the code, distribution, warranty and fitness for use, etc...

Are you intending to give them source code? If so, are you intending for them to be able to release their own products with it? Then you need a source code license.

If you are just giving them the binary, and don't want to charge for it, then you can just come up with a bare-bones license that covers your butt in terms of warranty and liability. State your copyright, say that it's only distributable as you specify.

Each version of the product you release is governed by it's own license, and if you are the sole developer, you can choose whatever license you want at any time, and change it at any time.

2

Well, personally I think it's a good thing that you're thinking about licensing at this stage.

From a consumer standpoint, I don't think you should change licenses once you choose one. That's not to say you can't (Movable Type is one notable example), but you run the risk of driving your userbase away (Movable Type is one notable example).

Michael
  • 273
0

Yes you can provide them with a limited time version that will stop running at a certain point in time.

You can always release new version with an extended expiration if needed.

Until you are ready with the final version.