6 ms·
> we are not able to opt out of diffusion of progress. People move between companies and between countries and take their ideas and talents with them. Never fo
by o11c 1y ago
> we are not able to opt out of diffusion of progress. People move between companies and between countries and take their ideas and talents with them.
Never forget that Industry itself came to America by way of direct theft. https://en.wikipedia.org/wiki/Samuel_Slater https://en.wikipedia.org/wiki/Samuel_Slater
=====
If you care about your users, you should always prefer some copyleft license.
Prefer permissive licenses only if you want to subsidize big business. Hopefully you have a plan for when they decide to take it closed-source and outcompete you. You probably don't, though, since that's not mentioned in the aggressive "use permissive licenses" marketing campaign they've been running for the last decade or two.
Permissive licenses can fit in a niche for software that has already been implemented many times. But the downsides remain, and why aren't you just using the existing code directly? The main occasion on which I will consider it is when everybody else is doing it wrong (and content to do so), and I as a user keep getting annoyed at hitting those limitations.
The second-worst reason to use permissive licensing is arguably "I don't understand how to dynamic linking".
- jjcob 1y agoPermissive licenses enable small or individual developers (like myself) to sell software based on them. With copyleft licenses, developers always have to sell stuff adjacent to the software (support, individual development, software-as-a-service). With permissive licenses, developers can just sell a license to the software itself. Much easier, much more direct. It's the reason why there is much more tooling around permissive licensed projects vs. projects with a GPL style license. Permissive licenses are win-win: Proprietory developers win because they get to sell licenses, users win because they have more tools they can use.
- o11c 1y agoThat does not follow. You might as well make it "source available" and sell proprietary licenses.
- jjcob 1y agoI think you misunderstood. My software is not permissive. My software is closed source, but based on a big open source project with a permissive license. It's a tool that helps users of the big open source solution. I can sell licenses to my tool because it is closed source. If the big open source project was licensed under a copyleft license, I would have to make my tool open source as well. Then I would have a hard time selling licenses. I couldn't have spent the last 10 years building a tool for the open source software, and users of the open source software would have had fewer tools available.
- mistercheph 1y agoYour personal financial incentives < humanity. I would rather you had a harder time selling licenses if it meant the ecosystem around whatever big project you're talking about was compelled to contribute to the commons in the same way that the big project does. Proprietary software is the dead or soon to die branches of the tree of human development, may spawn some useful insights that will ultimately be applied elsewhere, and may be profitable and useful in the short term, but the branch dies, I don't want to subsidize dead branches, and I don't want to write software that enables people to make more of them, even if some of those branches might be nice to hang on for a while.
- sampullman 1y agoI'm not completely familiar with the details and haven't done it myself, but what's stopping you from selling non-restrictive licenses to a GPL project? Can't you just etch out an exception for each customer?
- jjcob 1y agoI'm not sure what you are suggesting. My tool is classic shareware: You download a free version, and if you like it you pay to remove feature restrictions. Companies pay per device the tool runs on. I'm not sure how I would implement this when distributing a GPL licensed program? Customers could just remove the license checking code and distribute it for free?
- gpderetta 1y agoI don't understand, a shareware software is not permissively licensed.
- bityard 1y agojjcob is taking a permissively licensed project and selling a closed-source product derived from it. That's why they are arguing against copyleft in this thread.
- gpderetta 1y agoright, so jjcob is saying that it is better for others write permissively licensed software so that jjcob can use it for their restrictively licensed software. That's obviously good for jjcob, but I'm not sure how that benefits anybody else.
- jjcob 1y agoI'm building a tool that makes working with the big open source project easier for some users. It makes the open source project accessible for more users. In theory, it would be nice if my tool was open source / free to use. But nobody makes a tool like mine for free, because it is a lot of work and not essential for using the open source software. The kind of people who need it are not programmers and extremely unlikely to come together to fund an open source version of my tool. My contribution is that I make the big open source project accessible to more people. (Aside from contributing back to the project, which is in my own interest, because contributing fixes is easier than maintaining a fork. A lot of contributions to this open source project come from proprietary software vendors like myself.) (Sorry for the generic description, I'm trying not to dox myself on HN...)
- MangoToupe 1y agoI just don't really want to support the sale of any software. I see it as directly harmful compared to subsidizing the development of modifiable, free software, which is the true allure of computation.
- tmtvl 1y agoUsers lose because the tools with the most functionality, the applications with the most interoperability, the software with the most mindshare,... will be proprietary software.
- sparkie 1y agoThere are alternatives. We can dual license software under a strong copyleft and a proprietary license, so that users (developers) who don't want their derived software to be copyleft can pay the proprietary license fee. IMO this is the approach that everyone should be taking - it rewards the developer rather than them subsidizing your derived works with their free time. Obviously this has constraints. The developer must have full rights or ownership to redistribute the work under other licenses. This can be obtained from contributors via agreement, where every developer retains ownership of code they write, but grants permission to relicense it for the benefit the project. Ideally, contributors would also be rewarded for their time via bounty systems, contracts or direct employment. It's possible to make non-derived works which utilize copyleft software. The license's conditions apply only to the derived works, and not directly to your code unless it unquestionably a derived work such as a fork. If your application is written in a way that it can function without dependency on a copyleft software, but can be augmented using copyleft software using a plugin system, then you're able to distribute your software under any license you chose, and only the plugin which uses the copyleft software would be required to be licensed under a compatible license. The "aggregate" would need to be distributed under the copyleft license - but there are also ways around that - simply distribute your software without the dependency on the copyleft work, and have it optionally download the copyleft plugins separately so that they're not part of the "aggregate". Permissive licensing won't sustain itself unless the developers who depend on it start donating to the maintainers of the permissively licensed works they depend on. In some cases this happens, but mostly it's just the case that you can make money using software other people have given away and continue to maintain for free. What happens if they decide to stop maintaining it? Is your product still viable if you have to take over the task, or employ someone new to maintain it? Would it be viable if you, or your users, had to purchase a proprietary license fee for an alternative dependency?
- jjcob 1y agoYour logic seems to assume that there two disjoint groups of people: 1. Developers who work on the open source project 2. Developers who work on proprietary software based on the open source project In reality these groups overlap. Developers contribute to the open source project, and they also work on their own software based on the open source project. If you look at the git logs of successful permissive open source projects, you'll see that a lot of the development time comes from developers who work for proprietary software companies.
- wolvesechoes 1y agoYou can sell GPL software. You can even sell GPL software under proprietary license as long as you are the copyright owner (dual-licensing). Really, when you take time to understand real restrictions, as opposed to repeated myths, the only argument in favor of permissive license is that they help big players use free labor.
- mr_toad 1y agoYou don’t even need to be the copyright owner to sell GPL software, but it’s unlikely many would pay for it.
- bheadmaster 1y ago> You don't even need to be the copyright owner to sell GPL software You do, if sell means also allowing another vendor to use your software as a part of their proprietary software. GPL alone, if you're not the copyright owner, would not allow you to sell software in this way. But if you are the copyright owner, you can bypass GPL and sell a proprietary license to the vendor saying "you can use this software in your proprietary product if you pay me $XYZ".
- bheadmaster 1y agoFor anyone who thinks I'm talking out of my ass, consider Qt. If you don't own the Qt copyright, you cannot sell Qt to a company who wants to use it to build a proprietary product - since Qt is GPL licensed, using it in a proprietary product would not be permitted. But since The Qt Company owns the copyright, they can sell their own software to companies that want to build a proprietary product with it - they just sell it under a proprietary license, specifically tailored for this. The fact that it was previously released under GPL is irrelevant, because the copyright holder can license it under as many licenses as they want. If you don't own the copyright to it, you can only """sell""" GPL software in a manner in which local DVD shops sold pirated movies back in the early 2000s.
- kmacleod 1y agoRed Hat, SUSE, Canonical, and myself, among many, "sell" GPL software that are used by others as part of their proprietary products. Each of those, and the customers, are required to make the source they received (not their own proprietary source), including changes, available to those that receive the software (thus indirectly back to the public and the authors). AGPL is similar but includes the case of providing sources for products used in Internet services.
- bityard 1y agoWhy do you believe you can't sell copyleft software?
- bigstrat2003 1y ago> If you care about your users, you should always prefer some copyleft license. There is no possible way for users to be hurt by a permissive license. Even if some company were to make a closed source fork, who cares? The original is still there, still just as free as it ever was. > Prefer permissive licenses only if you want to subsidize big business. Hopefully you have a plan for when they decide to take it closed-source and outcompete you. I prefer permissive licenses because I'm making a gift to the commons. It strikes me as hypocritical to say "I'm giving this to you, but only if you things the way I approve of". Thus, I make it completely free for all users, whatever they want to do with it. You may not see it that way, which is fine. But I'm sick of the false idea of "you're just subsidizing big business" being promulgated. That isn't true. And why would I care if someone "outcompetes" me? My gift to society is still there to be used if people want, or not if they don't want. It doesn't diminish or harm my efforts in any way.
- dedup 1y ago> Even if some company were to make a closed source fork, who cares? They can add sufficiently popular functionality to said closed source fork and make the open source original a) obsolete and b) incompatible with the combined ecosystem, and thus deprive the users of a feasible free option.
- catach 1y agoIf the closed fork functionality is superior enough to make the original de facto obsolete then the users have already collectively decided that the tradeoff is worth it. And if the original can't compete it means the additional functionality was only going to exist because the financial model of the closed fork could pay for it.
- lurk2 1y ago> If the closed fork functionality is superior enough to make the original de facto obsolete then the users have already collectively decided that the tradeoff is worth it. Users cannot be trusted to make their own decisions about these kinds of things for the same reason that corporations cannot be trusted to be environmental stewards and children cannot be trusted to select a dinner menu or file taxes.
- lurk2 1y ago> Never forget that Industry itself came to America by way of direct theft. Two other examples come to mind: John Rolf arrived at the Jamestown settlement in 1612, having purchased tobacco seeds presumed to have originated in Spain (where their export was supposedly punishable by death, though I haven’t found sources confirming that). William de la Barre adapted the rollers used in Minneapolis wheat mills from a European design. I have seen a few sources claim this was industrial espionage wherein Barre obtained employment in the mill and sketched its design out to copy it for his employers in Minneapolis, though Wikipedia makes no mention of this. https://en.wikipedia.org/wiki/William_de_la_Barre https://en.wikipedia.org/wiki/William_de_la_Barre The American publishing industry also got its start by refusing to recognize British copyrights; this didn’t change until 1891. This is to say nothing of the more explicit, above-board technology transfers involved in bringing European experts in to develop the American industrial plant. Similar things are currently going on in Saudi Arabia and China, and to a lesser extent in South America and Africa. And then you have Operation Paper Clip and the looting of the German industrial plant after World War II.
- eru 1y ago> Never forget that Industry itself came to America by way of direct theft. https://en.wikipedia.org/wiki/Samuel_Slater https://en.wikipedia.org/wiki/Samuel_Slater Wikipedia says: > He memorized the textile factory machinery designs as an apprentice to a pioneer in the British industry before migrating to the U.S. at the age of 21. Doesn't sound like he stole anything? At most it's some infringement of intellectual properties. (Wikipedia says: 'He learned of the American interest in developing similar machines, and he was also aware of British law against exporting the designs.' But again, no theft.)
- raxxorraxor 1y agoThere is another side to it. Instead of using open solutions, big business then copies the open solution to a degree that is permissable or a copyright vioaltion deniable. It can easily stomach the development costs. And in that case would outcompete you as well, as they offer service level agreements and build a consumer product around you solutions. On the contrary, you would penalize small business, because they cannot stomach the increased developing costs. Large businesses wouldn't even notice the change. Sure, for software exclusive businesses there were cases were a too permissive licence was counter productive for economic success.
- sensen7 1y agoDo you have any examples?
- em-bee 1y agoInstead of using open solutions, big business then copies the open solution i highly doubt that. sure technically they can copy it, but they could not guarantee 100% compatibility. yes, the model would work, but at least they would compete on somewhat equal footing. what happened to redis, elastic search, mongodb etc was way worse. people switched to amazon and others because they got the original and did not have to risk issues when switching. further more, they also didn't have to risk lock in. (or at least had the impression of not risking lock-in) in other words offering a functional copy vs taking the original (without paying for it) are two very different value propositions. but amazon could have made the same offers using GPL software, or even AGPL. yes, it would have cost them more, but not as much more as developing their own. so the fact that they could afford to develop their own clone is not an argument for the original developer to just allow them to use their software without restrictions. "you should just give this to me because i could afford to just clone it and put you out of business." what kind of choice is that? small businesses can use GPL licensed software just as they can use permissible licensed software. if using GPL software hurts your business model more than spending the money to develop your own well then maybe it's the wrong model. i'd argue that using GPL software can jumpstart your business faster than developing your own, and once you make enough money you can develop your own like everyone else who doesn't want to use GPL software. permissible licensed software doesn't provide that much of a jump-start. it also makes it easier for your competition. and most importantly, it all happens at the expense of the original developer. why should they accommodate that?
- rerdavies 1y ago> The second-worst reason to use permissive licensing is arguably "I don't understand how to dynamic linking". ??! Not sure what that has to do with ANYTHING.
- bheadmaster 1y agoYou can use LGPL licensed-software in your proprietary software, as long as you only link to it dynamically - i.e. you provide a clear separation between your software and the LGPL software.
- rerdavies 1y agoSure. But GPL does not permit that. You can also link to LGPL statically.
- kmacleod 1y agoThe Free Software Foundation (FSF), as the author of the GPL and LGPL licenses, maintains that any software running in the same process space qualifies as "linked" under the terms of these licenses. This includes dynamic and static linking, plug-ins, loadable modules, and, in some cases, even interpreted code. However, some developers who use GPL licenses interpret these requirements differently and permit certain uses that the FSF does not. A notable example is the Linux kernel, which allows proprietary kernel modules under specific conditions. For proprietary software authors, the best-case scenario is having to convince a court that the license they accepted, by redistributing GPL-licensed software, permits linking without the obligation to disclose their own source code, as otherwise required by the license.
- em-bee 1y agosome developers who use GPL licenses interpret these requirements differently and permit certain uses that the FSF does not. A notable example is the Linux kernel, which allows proprietary kernel modules under specific conditions. this is not necessarily a different interpretation of the license but it is an exception the authors make. and they can do that because they are the authors. the interesting question is if they could change their mind and remove the exception. i believe they could. should they though? that's another question altogether.
- jaredklewis 1y ago> Prefer permissive licenses only if you want to subsidize big business. Another reason to prefer permissive licenses is if you want anyone to use your project. Most coding out there in the world is done in the service of a commercial enterprise and my experience is that companies won't use copy left projects. Companies are generally happy to use projects with permissive licenses or pay for SaaS or commercial licenses, but anything with the GPL is a non-starter. There are a few, well known exceptions (Linux, GCC), but I can't think of any exceptions from projects started in the last 20 years. I don't necessarily think this view is entirely rational or irrational, but I’m confident this attitude exists; companies using GPL projects are pretty rare. Anyone found differently?
- xigoi 1y agoI’ll personally rather have companies not use my project than use it while restricting their users’ freedom.