10

Are there any projects/products out there that use an open source license that basically says "free for small companies" and "cost money for larger companies" in addition to "make modifications available"? (And are there any standard licenses with such a wording?)

If I were to release a project under such a license, would it be automatically shunned by every developer on the face of the earth, or, assuming it is actually a useful project, does it have a fair chance at getting contributions from Joe Programmer?

The second part of this question can easily become subjective, but any well argued point of view will be highly appreciated. For example, do dual licensed projects made by commercial entities have success with the open source communities?

1
  • It will not be “Open Source” as it will not comply with the Open Source definition (parts 1 and 5). Additionally “Free Software” and I think “Open Source” software does not force modifications to be distributed, it only says what conditions you can distribute under (same as original) opensource.org/osd However you can make any licence you wish: the one you describe will be a proprietary licence. Aug 26, 2013 at 13:08

6 Answers 6

4

If I were to release a project under such a license, would it be automatically shunned by every developer on the face of the earth, or, assuming it is actually a useful project, does it have a fair chance at getting contributions from Joe Programmer?

Your project won't necessarily be shunned by everyone. However:

  • A lot of people will shun it on principle.
  • The chances of unattached developers contributing for free are low. There are more "worthy" projects with better open source credentials. (This might change once your project / software has proven itself.)
  • A lot of potential paying customers will think twice about whether your project has long-term viability.

(Actually, the last point applies to all customers, paying or not. The point is that if a customer application depends on your code, and your funding model fails, they can be stuck depending on a codebase that is effectively dead. Since the dual license approach tends to discourage community contributions, the chances of a self-sustaining community appearing after your company goes belly up are significantly reduced.)

The second part of this question can easily become subjective, but any well argued point of view will be highly appreciated. For example, do dual licensed projects made by commercial entities have success with the open source communities?

This is highly subjective. Success is relative. Success is subjective / debatable.

I think that the best that can be said is that dual-licensing does tend to put off contributions of effort, especially from unattached developers. Developers working for other companies may still contribute, if they / their company sees an economic benefit to doing so.

But these things are almost impossible to measure, for any number of reasons. And I'm not aware of anyone having attempted to do the measurements.

1
  • I think your point about unattached developers is dead on. Contributions from parties interested in using the project themselves may very well be healthy, while more idealistic contributors is expectantly put off. Care to elaborate a bit about why potential buying customers would think twice about whether the project has long-term viability, based on it using such a dual license? Mar 9, 2011 at 12:52
9

As has been discussed numerous times already, both here on Programmers.SE and on StackOverflow, such a license cannot possibly exist.

What you want is something like a Field Of Use Restriction in the license, but having no restrictions on the field of use is one of the defining properties of Open Source. If your license is Open Source, then it cannot possibly have a Field Of Use Restriction, and if your license has such a restriction, then it cannot possibly be Open Source.

Therefore, an Open Source license with a Field Of Use Restriction cannot possibly exist. That's like asking for a prime number which is also divsible by 10.

Note, however, that what license you use is completely orthogonal to how much money you charge. One is a legal question, the other is a question of marketing.

There are plenty of closed-source products that don't cost anything (E.g. iTunes, Acrobat Reader, Internet Explorer, generally any kind of Freeware, …) and there are plenty of Open Source products that are pretty expensive (e.g. RedHat Enterprise Linux, SuSE Linux Enterprise Server, …)

In particular, larger companies generally love to pay for software, regardless of whether it's closed-source, Open Source or magic unicorns, just so they have somebody to sue if things go south.

4
  • By the OSI defn of open source - however there are many pieces of software where the source is available but there are very strict rules about it's use - Microsoft Windows for example. Mar 9, 2011 at 6:16
  • 7
    Martin, the OSI definition of open source is the only relevant definition: they coined the term and gave a definition and OSI exists to interpret the definition in corner cases. Twisting the definition to mean things like Microsoft giving access to Windows source code in highly restricted cases is, at best, misguided, and often a case of trying to undermine the whole open source concept. Mar 9, 2011 at 7:58
  • örg: You make a good point. Am I reading you correctly in that I can license the project in the manner described in my question, it just won't be Open Source as defined by OSI? Mar 9, 2011 at 13:10
  • 1
    @Lars, People seem to love redifining the words "Open Source" and "Free Software", so much so that I had to put an explicit disclaimer in programmers.stackexchange.com/questions/21907/… to say that I wasn't interested in personal idiosyncratic definitions, only the official ones.
    – TRiG
    May 31, 2011 at 17:18
3

I would highly recommend that you speak with a lawyer about your specific situation, to make sure that the license(s) work for your specific situation. There is no example that's guaranteed to work for you, and a small mistake can cost you a lot.

Yes, it is possible to offer as many different types of license as you want, and many businesses try variations, including ones that are based on the number of users.

Ext3js (now Sencha) was sold under the type of license that you seem to want. Most products Microsoft offers are available under multiple licenses, which have varying price points depending on the size of the business. Type in "Free for personal use" to get examples of other software that has dual license.

Dual license type software tends to succeed if you mean people using it. If you're looking for people to freely work on your software, without being able to use it (and without them getting a share of the profits when you sell it), though, you'll probably not make many friends. Once others have contributed changes or improvements to your software, you will not be able to bring those changes or improvements back under your proprietary license (with exceptions - see the comments below - though the exceptions will discourage contributions)

2
  • 4
    "Once others have contributed changes or improvements to your software, you will not be able to bring those changes or improvements back under your proprietary license." Unless you have a contributor agreement that assigns copyright of contributed code back to you, surely? If I understand, this is fairly common.
    – Armand
    Mar 8, 2011 at 23:55
  • 2
    @Alison: That is quite common, plenty of licenses stipulate that in the commercial open source world. The companies obviously have their cake and eat it, and eat yours as well.
    – Orbling
    Mar 9, 2011 at 0:21
2

You want to have the source open to small companies but force big companies to pay?

Being pedantic on terminology (but if I don't you'll quickly find open source ppl who will) but that can't be an open-source license.

http://www.opensource.org/osd.html See clause 5. "No Discrimination Against Persons or Groups."

That's what people expect from a license/product that is billed as open source, if you call yours open-source then stick a "Big companies must pay!" clause in the legalese you will piss ppl off.

Not saying you can't do this, just that you shouldn't label it "open-source". People have expectations about what that means, and you are violating them. Call it "source code available" or something.

2
  • You are right. This point has also been made by another answers, and it makes sense. Although, I must say, OSI's "ownership" of the very intuitive term "Open Source" is a bit icky. I certainly understand the need to fight for that which truly is open source, but it leaves everyone else with no sensible terms to use if they want a slightly modified license. Mar 9, 2011 at 13:52
  • 1
    Well, it's only intuitive because of the hard work OSI and many fierce supporters of open-source have put into it. When it was 1st introduced, it wasn't intuitive and it wasn't universally appreciated gnu.org/philosophy/open-source-misses-the-point.html I do wish that Open Source supporters would be a little less harsh in dealing with critics sometimes, but I don't mind them "owning" this term.
    – James
    Mar 9, 2011 at 14:09
0

Then, of course, there are cases like Mozilla and the MPL/GPL/LGPL tri-license. Granted, Mozilla doesn't have (as far as I know) any field-of-use restrictions nor do they charge for their software, but it is an example of a "license flexible" popular open source application suite.

0

Yes, there are products with such licensing. A great example would be ravendb -- which is definitely not shunned by developers.

Hibernating Rhinos offers both Open Source and commercial editions of RavenDB.

Commercial editions can be used in closed source environment and are available under a subscription or perpetual pricing model. Prices are per instance. As long as the subscription is valid, new releases are included in it automatically.

You can use Raven for free, if your project is Open Source. If you want to use Raven in to build commercial software, you must buy a commercial license...

Raven’s AGPL license contains an explicit exception for OSS projects. You can release your project under any OSI approved license. Note, however, that you can’t change RavenDB's own licensing. Users of your project would still need to comply with RavenDB's licensing.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.