Because they can just... stop maintaining it if they wanted. They are completely free to do so.
Many developers like to feel useful, feel like they are solving an important problem in a suitable way. Some even want the fame associated with it, or the doors having such (a) project(s) opens (you use X? I wrote it, and maintain it - or people hunting you specifically because you are known to have created X).
The point is, the tradeoff between the feeling of being taken advantage of and feeling useful and fulfilled because of solving an important problem in a suitable way is controlled directly by the author / developer! If they feel it is not worth the effort, they can just stop!
Having a permissive license helps you gain popularity. Many people won't touch GPL derivatives for their business / side-project-that-might-turn-into-a-business so such a license can have an inhibiting effect in adoption. Developers generally aren't stupid, they know that and they choose more permissive licenses, because they want to be seen, they want their solution to be used. They maybe want the fame and open doors associated with having such a project take off. It is a trade-off under their control. They can stop with maintenance any time. Hell they can even change the license of future versions (if they have not started with a GPL-like license) if they want. So I don't see the problem here. Everything is under the developer's control. You can't have it both ways: The boost to popularity by having a no-strings-attached license, but reaping proportional profits from such an endeavor as if you had a restrictive license protected by a business entity.
If you give money (value) away for free, you'll be pretty popular. "I want to be easily popular as if I'm giving money (value) away for free, without actually giving money (value) away for free" does not make much sense.
It's a race to the bottom, largely because developers aren't unionized. Developers who would do work under the GPL get undercut by those who are willing to do it for free.
[0] Or whatever, if it's a small library maybe $50k or maybe something that scales with market cap, etc. Throw lawyers at it.
low complexity, low decision making overhead. it wouldn’t help for small or very specialized open source projects but the big ones that keep the world running are probably used in some way in all the big companies anyways so the total should come out somewhere in the range of 1-2 developer salaries (adjust the 10k above to match. no idea how many trillion+ companies there are right now)
edit: I overestimated how many there are. With 10k one would get to 50k this year. Numbers must be adjusted a bit :)
I think you're confusing open-source with visible-source.
Other "open source" companies are somewhat more realistic and honest about the term and it's history: https://www.redhat.com/en/topics/open-source/what-is-open-so...
I'm not saying the OSI's objectives and motivations are bad, but they did not invent the term "open source", they were not the first to use it, and their ongoing attempts to gatekeep it's usage are - at least to me - tiresome.
(Having said that, I also find rms's hardcore free software stance tiresome, but I'm glad he chooses to dig his heels in so hard there, as an opposite-end-of-the-bellcurve outlier to counterbalance the vested commercial interests trying to extend and embrace the free software movement for commercial greed...)
But that's not what that's defined as.
The OSI defines open source one way, and I just defined open source another way. This is an inconsistency that trips up lots of people on HN and elsewhere. There isn’t one definition, there are many, and calling “anybody but the mega-rich can use this for free; they have to pay” open source falls within some definitions but not others.
The OSI's definition is the widely accepted one. If you mean something else, then make up your own word. To redefine open source like you're trying to do just makes communication more difficult for no benefit.
Why shouldn't they be the ones required to "make up their own word"? "Open source" has a reasonable plain english meaning which doesn't automatically include all the requirements of OSI's "definition". I don't see why the simplest plain english interpretation shouldn't be considered "the real one".
You say OSI's definition is "the widely accepted one", I'm 100% certain that's not true if your sample group is representative of "english speakers" instead of "hacker news readers".
(And I'm pretty sure your linked xkcd supports my argument here more than yours.)
That's "source available"
But if it is a choice, then it's a choice that undermines fellow workers. By working for free, you're taking away jobs from people who might genuinely need them and be unable to work for free.
In this way, OSS work can serve to entrench inequality by giving a hiring advantage to those with more time and resources, while reducing the salaried jobs available for others in the industry.
Which top jobs require you to be a widely-publicized OSS author?
I've only ever heard this to be a plus (which I believe is fair), not a requirement.
That said, RH hires key contributors all the time (as do many companies), so being the maintainer of a project is definitely a plus.
I really don't understand why there are always comments of this nature every time this is brought up. Why is the size of the company relevant? Do people here not have jobs in the IT field? When people contribute to open source, anyone is able to use that code, including you. That means when you go get a job at a new company, you can keep using that code. It doesn't matter if you go to a small company or a large company.
But the thing is, they often don't. That tends to rub people the wrong way.
Maybe I'd feel differently if I made an entire service instead of small focused libraries. But that's an entirely different world.
But one person can't do much, so it at least depends on what one thinks of that.
The code I do release is probably not that useful to many and in most cases is something i've written for personal use primaraly.
I always use a permissive license for anything I release. It's usually served it's initial purpose to me and if it can be of benefit to another, then they should be able to use it in any way they want
Back when I was just a Linux hobbyist, I loved the GPL. Then I got a job as a proprietary software developer. Now, GPL just means "stuff I can't use at work".
I would love to try and convince my boss and coworkers to implement a project in Scheme. But because the majority of the packages for most Scheme implementations are GPL'ed, it's a non-starter.
So Scheme (and lots of other pockets of FOSS) shall remain a weekends-only pipe dream :(
Of course if you accepted external contributions to your code under a copyleft license then you can't use that part freely, but that's kind of the point.
The irony is that non-copyleft project author/maintainers want to reserve the right to exploit other people's work when they "grow the project into a business", but bellyache when Amazon "exploit" their permissively-licensed work. Freedom for me -- but not for thee.
That there is not a good standardised way to give preferential treatment to small companies does not mean it's unreasonable to want to.
Well yes. But if you:
1. Want to accept external contributions 2. Think you might want to use the entire project (which may still be mostly your own work) in proprietary code in the future.
Then a permissive license is a lot easier than the alternatives.
Especially if it's a hosted web app business?
Providing paid support a la Red Hat, paying for hardware/cloud space, or even paid binaries if you think your customers won't bother to build from source.
(Yes, one can build from source then distribute free binaries, but maybe those same customers won't even go to the trouble of finding them?)
It's not surprising that they invested a lot into spreading FUD around GPL and spreading the idea that weak licenses are "practical" while labeling GPL as "ideological".
I write with other humans in mind, not companies.
I occasionally like to read other people's code to learn. However, in order to avoid any problems, this means that I stay away (much to my regret) from reading any GPL licensed code, no matter how interesting the project might look to me.
I admit to have been occasionally disappointed in the past when large parts of some of my work were plagiarized with no attribution (including by one commercial venture) ... but I prefer for my work to be free of barriers so that anyone interested can either learn from it or (more likely) get in touch with me with suggestions as to how to improve upon it.
Of course that is not the case for the majority of projects like curl for example.
If your goal is sticking it to the man and demolishing capitalism or whatever then it's different of course.
(I guess in many ways this is a data point to support the “OSS work becomes just a source of free labor for large tech companies” thesis up thread.)
No one at any company I've heard of or been involved with cares if you simply use, i.e. run, Linux or other GPL software. That doesn't affect the licensing of your own software.
What they do care about is if you take the GPL software and incorporate it into your own product.
Often we are the end users. Because of permissive licensing phones, routers, iot devices have a lot of closed or otherwise locked own components that I cannot trust nor modify.
The same apply to SaaS.
Copyleft, having to release code diffs, is a stipulation / restriction.
MIT/BSD is the one without any stipulations / restrictions:
* https://en.wikipedia.org/wiki/MIT_License
Depending on one's goals one may be better than the other.
> My work on free software is motivated by an idealistic goal: spreading freedom and cooperation. I want to encourage free software to spread, replacing proprietary software that forbids cooperation, and thus make our society better. [1]
Free as in freedom for the users of the software to control, audit, and modify what runs on their hardware.
The stipulations are there to prevent people who aren't aligned with those goals from benefiting from (and working against) the work done by the community that believes in those goals.
It's easy to give the lie to this, because the restriction they are unhappy with is the restriction against restricting others. Anyone complaining about that is just masking a demand of "free for me, but not for thee" - definitely _not_ "totally unrestricted."
For Stallman, and the rest of us inspired by the copyleft movement, writing GPL software wasn't merely a way to impact the profits of capitalists. He would have been scarcely more satisfied with closed-source software written by a democratically organized cooperative and released for free. The goal was and is to ensure that users have the freedom to know what the code running on their machines is doing, and to alter its behavior if they wish.
That dream seems so distant today that people worry it may never be satisfied, but I have a more optimistic view. Someday, hardware generations will not be so rapid or represent such major improvements. That will create an opportunity for the GPL ecosystem to close the gap in functionality and provide alternatives that run on the hardware most people own. Mostly, the GNU project is always running behind on the hardware treadmill; keeping up with software functionality is easy by comparison.
Some products like databases are now switching to AGPL but it takes a lot of effort to revert the trend now.