6 ms·
What are people's thoughts/experiences about dual licencing? Eg: is there a clean way to dual license such that hobbyist, and exploratory work (eg: a proof of
by mnahkies 11d ago
What are people's thoughts/experiences about dual licencing?
Eg: is there a clean way to dual license such that hobbyist, and exploratory work (eg: a proof of concept done in a commercial setting) are allowed, but using it in production requires a fee?
If you've done this, has it been successful? Obviously there's been many projects relicense over recent years (terraform, redis, etc) - but it's less clear to me if this is a viable path for new projects starting out, or if it just kills adoption from the beginning.
- RobotToaster 11d agoThe usual way I've seen it work is using the AGPL. AGPL doesn't bar use in commercial production, but the requirements usually scare off any corporate from using it in production.
- mark_l_watson 11d agoI like the AGPL but don’t often use it. (I did recently license two coding harnesses I wrote as AGPL.) A long time ago, I didn’t mind huge tech companies getting rich partially via open source, now I do. In the USA the collusion between government and big tech is starting to smell a little bit like fascism. Sorry, I have only complaints, not any good answers.
- ValdikSS 11d ago>A long time ago, I didn’t mind huge tech companies getting rich partially via open source, now I do. Is the concern that anybody will be earning money on your software (just that), or that you won't get any money, or that they will earn money and don't give back the code? If the company earns money and opens the code, is that OK for you? Just for you and for everyone information, Richard Stallman himself told people not only to sell their own software, but the software written by others as well! > Actually, we encourage people who redistribute free software to charge as much as they wish or can. If a license does not permit users to make copies and sell them, it is a nonfree license. If this seems surprising to you, please read on. https://www.gnu.org/philosophy/selling.html https://www.gnu.org/philosophy/selling.html AGPL, just as all other GPL, does not prohibit selling the software. If you goal is to make your software unsellable, please use your own licensing terms (there's nothing wrong with that!!!)
- ricardobeat 11d agoNo success yet, but I recently found BUSL - used by Terraform: https://en.wikipedia.org/wiki/Business_Source_License https://en.wikipedia.org/wiki/Business_Source_License It stops companies from building high-revenue products for free, while not being as scary as AGPL/LGPL from the business perspective, and completely unrestricted for everyone else (despite not being technically an open-source license).
- mihaelm 11d agoYou might also be interested in the O'Saasy license (https://osaasy.dev/ https://osaasy.dev/) which is in the similar vein, but simpler. HashiCorp switched to BUSL license for their products/tools when they already had substantial market share, and they still faced MPL-licensed forks (Terraform -> OpenTofu, Vault -> OpenBao). It will be interesting to see in a few years if those tools notably cut into their share. I'm not sure a new tool with a BUSL license will get adoption as easily.
- ricardobeat 11d agoLooks nice. Two main differences: - BUSL is OSI-approved and listed in SPDX, so corporate lawyers won't be scared away by it: https://spdx.org/licenses/BUSL-1.1.html https://spdx.org/licenses/BUSL-1.1.html - With BUSL the restriction is revenue-based. You can still create competing products, but would have to pay a licensing fee.
- mihaelm 11d agoI think it definitely hurts adoption. No hobbyist or experimenter wants to delve into legalities head first by first having to understand the licensing terms of software, whereas permissive licenses like MIT and Apache 2.0 are easily-understood and familiar. The solution is probably to be more selective what you're open sourcing if you're planning to build a business. And what you open source, you do it under a permissive license so people don't feel limited should they wish to play around with it. A more restrictive license might be more apt if you don't really want to open source, but you must for regulatory reasons.
- Brian_K_White 11d agoExcuse me but as both a hobbyist and commercial software developer I say that the gpl (any version) is quite simple enough. There is no need to go all the way to bsd/mit just to get safety and clarity and freedom from encumberance. The only people who avoid gpl and talk about mit as being the only safe option, are exactly the people no one should care about. They are the people for whom free isn't free enough, and they must steal even when it's already free. That is not "adoption" anyone needs to care about.
- throawayonthe 11d agoright but the GPL explicitly allows commercial use, which isn't what the original comment was about ("use in production requires a fee"); i agree with the previous comment that such a license is hard to assess for a hobbyist, but the GPL is not such a license (hence yes it's simple enough)
- pocksuppet 11d agoEven though it's technically allowed, a lot of companies are afraid of it. Not GPL2 - that's used a lot, because tivoization lets them ignore the spirit of it. But they fear GPL3 and AGPL. You can also just do a crayon license. "All rights reserved, noncommercial use allowed." Nobody's stopping you. If and when Debian wants to ship your package, ask them for proper legal advice about changing it, they have lawyers.
- addandsubtract 11d agoIsn't that what Epic, MiniMax, Z.ai, and others are doing, where a license is free for personal use / low revenue projects, but cost a (steep) fee for commercial use? They don't use dual licenses, but rather a tiered license.
- deleted 11d ago[deleted]
- graemep 11d agoIn practice AGPL might achieve that. It does allow commercial use, but a lot of big businesses, especially big tech, will not use it. On the other hand it is a clear, OSI approved, FOSS license.
- ghaff 11d agoWell, the language is clear enough. What's not clear are the implications of the language. And, honestly, the sensible default for a lot of companies is just not to go there. And big companies tend not to operate on hopes and prayers to avoid distracting and expensive lawsuits. Without going into details I have enough familiarity with the space to know that a lot of open source-friendly companies either avoid AGPL entirely or discourage its use.
- bob1029 11d agoIf you are trying to monetize your software, the biggest factor is whether or not your customer trusts you. MIT and source out on GitHub is the easiest way to build trust. You will find that some people simply "steal" your work in this arrangement, but much like with movie piracy I don't think they ever intended to compensate you or anyone else. So, we wind up alienating all potential customers because we are so worried about preventing ideological crime. People will steal your ideas and they will get away with it. The more you react to this in first order terms, the more it will destroy you. Most money in software is made with support contracts, not the initial sale.
- RobotToaster 11d agoHow does MIT build any more trust than a copyleft licence like AGPL? At the very least AGPL stops people "stealing" your work without contributing back their changes?
- bluGill 11d agoAGPL does not do anything to force people to contribute their changes back. They have to make the changes available, however that's very different from actually contributing back. It is not hard to make a low quality contribution that the upstream would for very good reason refuse even though it 'works'. The poster child for this is chromium which is GPL because it has clear and obvious roots in the old KHTML code of 20 some years ago. In theory you can contribute to Google movement and I suppose some people do but realistically Google controls it completely and they will do whatever they want. even though the source is available it is effectively not a contribution back.
- RobotToaster 11d agoBy "contribute back" I was referring more generally to the commons. The chrome example actually proves my point, the KDE project, or anyone for that matter, can take the changes Google made to their code. If KHTML was MIT it's likely that wouldn't be the case
- pocksuppet 11d agoYes. The clean way is to use the strongest copyleft license you can find, probably AGPL. Even if corporations are technically allowed to use it, they don't want to risk touching it with a three-meter pole. Then you offer to sell them a different license. Hobbyists and OSS folks usually have no issue with AGPL.
- knorker 11d agoDo you have data on that last bit, or just a guess? As a hobbyist and OSS developer I treat AGPL as a rabies infected animal. I may have uses for it, but I'll keep it EXTREMELY segregated from everything else.
- nine_k 11d agoBut that's the whole point of dual AGPL + commercial licensing.
- knorker 10d agoSure, but for anything except large companies it has a bootstrapping problem. I'm absolutely not going to use AGPL software in a test one-person trying to sell a service kind of deal. So if it takes off, I'm already on a non-AGPL stack, so why reach out at that point to get a commercial license for software I don't even use? And hell, even without money involved, I'm not going to make a hobby project with AGPL software either. Not only may I have small parts of the project I've not opensourced, but AGPL is untested in how far the virality goes. Are my backup cronjobs in scope? I certainly don't want to be the test case for this. Even if I win against an AGPL troll, I'll still lose.
- pocksuppet 10d agoIf you don't want to give people downstream of you my source code, I'm happy to sell you a commercial license.
- knorker 10d ago
- ghaff 11d agoYou're basically describing open core. It's hard to get the balance right. Give too much away for free and people won't buy your full product. Give too little away and they can't really properly evaluate it.
- lazyant 11d agomaybe? CC-BY-NC-SA-4.0 Creative Commons Attribution Non Commercial Share Alike 4.0 International
- rambambram 11d ago> Eg: is there a clean way to dual license such that hobbyist, and exploratory work (eg: a proof of concept done in a commercial setting) are allowed, but using it in production requires a fee? Yes, it's called language. Contracts are nothing but text, so why don't you just write down what you think should be the rules around using your software by other people? I get the urge of a lot of developers to pick an existing third party license from the shelf, but just as you can write your own code - and are not required to use ready-made libraries/frameworks - you can write your own open source license for your software.