GPL?
GPL?
I actually think if everything out there was GPL'd, it would make it even more difficult to build businesses and make money from open source software, because you couldn't use open source in a proprietary project if you so chose.
I think instead we need a set of incentives in which it's a terrible idea to use software, open source or not, without sharing a fair slice of the value you're getting with the author(s). How to actually implement this is left as an exercise for the reader.
Yes, isn't that kind of the point?
If everything was GPL'ed, there would not be any proprietary projects. Everything would be GPL'ed.
So, if you set the cost of BSD/MIT code for each release enough for one sale to fund the whole cost of the release, it might work.
But anyway; in my limited anecdotal experience, I don't know that all companies would bother sharing the BSD/MIT code anyway. They tend to be occupied doing their own work, not redistributing whatever open source software components they got from somewhere else.
Some companies might; but the point is that, I think that, no, they would not necessarily pay for it and then share it with everyone else.
Sure, but BSD/MIT projects can sell premium proprietary derivatives and services to fund both the open source and proprietary parts of the project -- heck, a company planning to do the proprietary aspects could buy the BSD/MIT license to the project and contribute that to a community project, and then contribute some staff development time to the open parts of the project while also building a proprietary derivative (see, e.g., EnterpriseDB and PostgreSQL.) And, the people that are likely to do that are the most likely to spend money to get a BSD/MIT license for something with a free GPL license, since they would actually have a financial interest which would justify the cost.
It's a viable model for some things, like libraries; not so much for others.
Funding open source is a tricky problem. It is, in some ways, a 'public good' in the economics sense:
GPL projects "take" from BSD/MIT/Apache/etc projects (in the form of libraries, supporting software, etc) and only give back with conditions they can't accept.
You can say it's on them, for choosing the license they chose, they accepted that this could happen, but on the other hand, isn't that exactly what we're criticizing companies for?
The FSF is hostile to proprietary software and criticize liberal licenses because they don't provide these guaranties.
If you don't want people to use your code without making their changes available to you, license it under the GPL. That's what the GPL is for. Criticizing GPL projects for the fact that some projects are not GPL seems an odd way to spend your outrage budget.
And I don't agree that choosing a license means the authors are necessarily fine with their code being used in such a way - it might just mean they don't believe in using (copyright) law to enforce it.
And even if they are fine with my activity, that still doesn't mean I must be OK doing it. As an analogy, I wouldn't sell tobacco, despite the buyers actually wanting to buy it.
If someone do not believe in using copyright law and dislike those who do, they should act accordingly and not deal with proprietary companies at all. Those are the majority users of copyright law in the software industry, as the number of GPL law suits vs proprietary ones is several order smaller.
Sure. But that still doesn't resolve my dilemma, it just narrows it down.
Is it legitimate to take code published under a liberal license by someone who doesn't deal with proprietary companies at all and use it in a GPL project, knowing that it prevents the original project from using that derived code?
LLVM is a great project and brought the possibility of .NET/Java tooling to C and C++, but just check the amount of GPU shader drivers, Swift and some embedded compilers for examples of companies abusing BSD/MIT/Apache/etc projects.
Its not "abuse" to do something the license is designed to permit. Not everyone -- and particularly not everyone who chooses non-copyleft free software licenses for their projects -- agrees that the reciprocal obligations enshrined in the GPL represent fundamental moral obligations that exist without the GPL and that violation of them is "abuse" in the absence of a agreed requirement, e.g. contained in a license, to adhere to them.
LLVM is known for being rather ruthless with their API refactorings. This has the twin advantages of keeping the code quality very high, and giving people an extra incentive to contribute upstream (e.g. the PS4 compiler backend). I won't go so far as to say this is intentional, but it does represent a rather amusing way to discourage users from keeping everything in-house.
The code being available is only useful if you can use it, and my point is that projects under most FOSS licenses can't use GPL-licensed code, which only takes without giving back in a usable form.