Really the only thing that might work is if there was broad community acceptance of not changing all the lower parts of the software stack all the time so the maintenance burden is lower.
Honestly; if we were interested in what was good for FOSS all that needs to happen is that hardware stops improving all the time. Then everyone can calm down, declare things finished and move on without requirements changing. The Linux graphic system (c.f. Xorg v. Wayland) still hasn't finished adjusting to graphics cards. That sort of change is bad for FOSS.
In a sense, this sort of thing is what is being showcased here. The breaking changes to FUSE are probably going to be linked to design changes in Catalina triggered by RAM/CPU/Network changes and the RPM/SSD transition that has been going on for however long. When that sort of thing subsides in 50 years there is going to be this amazing FOSS renaissance as working things stop breaking because of hardware changes and the balance really tilts towards free & available software.
Here's my "get off my lawn" perspective: those developers who remember a world where there was little or no free software (from, say, the mid-1980's, when Sun made the C compiler a for-cost option on SunOS through until commercial Linux distributions), have a visceral understanding of free software that those who came to it later, and (perhaps understandably) take it for granted, don't have.
Free software is a commons. In a healthy community, people pitch in to help, and maintainers become overwhelmed by the scale of activity, not because they've been left alone to support many users by themselves for years.
There are some efforts to address it (eg. SSL, Mongo, etc), but they're the first "drafts" if you like.
When a majority of the users of free software were programmers themselves, things were quite different to today. The world has changed, but the free software model has not kept pace.
With hindsight, I think the "Open Source" definition can be seen as a turning point, and the issues we have today stem from the decisions to give everyone the use of free software, even those who aren't of the community, or able to contribute in turn.
I don't think that was a bad or wrong decision, but I think that the ramifications are still playing out.
It's entirely because many of these projects are run by professional software developers, not professional managers. So many projects with single maintainers are that way because the maintainer feels a sense of ownership rather than a sense of stewardship.
It's not to say that solo maintainers are bad people; just that the jobs of writing software and coordinating software development require different, non-overlapping skill sets.
If you are going to mention ChromeOS or Android, ChromeOS is hardly a blip outside US school system, and what kernel is being used on Android is irrelevant to user space, there is Fuschia on the horizon and Google has been replacing everything, with the Linux kernel being the last piece of GPL code standing.
Then if you mean embedded, plenty of IoT OS are MIT based and even Linux Foundation now has Zephyr as alternative to Linux, all operating systems where OEM can profit without giving anything back.
If you mean compilers, plenty of embedded OEMs are now happy LLVM users free of contributions, while reducing their development costs.
Compared to what knowledge of how good it could be if we had a more sustainable model than hoping someone has the charity or hobby to work on something we need for free?
This reminds me of when gamers assert how game modding has done fine so far limited to just labors of love and weekend hobbyism. Though I'm sure gamers are more coming from an angle of not wanting to pay for anything, we can only imagine the gaming mods we'd have if we had more of a culture around allowing people to work full-time on things we enjoy instead of only waiting for the few hobbyists with the masochism or compulsion to do it.
SOME of it is, sure. The big successful projects.
But what about the rest of it?
I don't think that's a problem for FOSS, it's a problem (if you call it such) of the economic system that we live under.
Generally the only realistic answer to that for most people at an individual level is to focus on financial security so that you don't have to care about that sort of fluff.
Most people can't. That's how our world works. In the general case creatives earn effectively nothing and only a few blockbuster individuals 'make it', regardless of the field; and usually they have to go proprietary to some extent.
You're definitely right about this for folks who are barely scraping by, working multiple jobs, etc.
But for folks in IT, taking the time to read and comment on HN... we make the time for what we choose to make the time for.
well, going FOSS can be an effective marketing strategy: by making something open and free (in both meanings) you get much higher probability of that something becoming popular. That in turn gives a lot new opportunities to sell complementary something or other something. This is best case scenario though, and you need to have resources/other sources of income for the time it needs to get widely adopted and popular (or the very possibility that it will not happen at all)
Right, and then people try to do that, fail to sell whatever it is that they thought they would, and end up putting some sort of annoyance on the code to punish those who are using it.
If FOSS zealotry wasn't a thing, then said expectations would be unreasonable. Sadly we live in a world where many people can withstand the cognitive dissonance of "You should use FOSS" and "You shouldn't complain about it because it is free".
There are some FOSS business models. Sometimes they work. Sometimes they don't. Overall there's more FOSS than ever before, it's an amazingly successful concept. It doesn't always work, some projects and companies fail or decide to stop being FOSS. That doesn't change the fact that it's an amazingly successful concept.
As an anti-capitalist movement/dream, open source has utterly failed. As a concept that has provided lots of opportunities for developers and startups it has been a great success.
Which ones? The two flagship ones I can think of for GPL, Linux and GCC, don’t really have one company in control of them. And on the flip side LLVM and the browser engines, which are arguably under reasonably strong control of one or two companies, are usually Apache or similar.
The GNU created the GPL and licensed most of their software under it. I can't think of an organization less interested in capitalism. Rather the opposite because the viral nature of the license.
Linus picked the GPL to be less commercial/restrictive than the Minix source code.
You can sell GPL software!
All BSD/MIT does is allow it to end up tivoized and remove power from the user. GPL is freedom for the user. BSD is freedom for the dev. Not all users are devs, but all devs are users. Users should take precedence.
Users won't have any power if they don't have software to use. It just happens that BSD (or similar) licenses are easier to deal with when developing things.
I really like RedHat for this reason. It shows that it is the service and support, and the act of maintaining software, that makes it's money, and their books are open so you can see exactly how it works. A comparable startup/project probably won't get VC'd into a unicorn, but there is plenty of room for growth in the GPL software for sale along with service and support category.
That can be messy for projects with many past maintainers where the licence options at the time of individual contributions did not explicitly allow this or arbitrary relicensing, but in this case (single current maintainer, other contributions made under a licence that allows him to do this) it needn't be.
Can you un-GPL your work for a single entity? Doesn't that mean that you yourself are violating the GPL? I'm legitimately asking, not being rhetorical.
But you can say, hey, I'm ALSO releasing this code under a separate commercial license that costs $X dollars to get.
You can't infringe on your own copyright!
Alternatively, he totally could have gone and dual-licensed GPL and a permissive commercial license as a monetization strategy, like the author pointed out.
So no, GPL would have changed nothing. Companies would still have been able to ship it unmodified for free without contributing anything.
They could have kept their own code that uses FUSE secret, but even if they had had to release that code, that code is often useless to anyone else. It would not have helped or supported the author of the original code in any way whatsoever.
If they had linked against FUSE they’d need to provide code.
That way companies or other projects that won't touch *GPL for whatever reason have an option that allows them to use the code while helping the project.
Of course this could make the code incompatible with other open licence (or the licensing policies of some larger projects) so isn't a perfect solution. I'm not sure a perfect solution exists when the project maintainer(s) need income to be able to justify the time to continue their work and have not found some other form of sponsorship.
I know a lot of FOSS contributors but have never met one IRL that seriously believes there is money in it. Outside of people on internet platforms (that by and large aren't to be taken seriously to begin with), have you encountered real zealots like this? I doubt that they exist in truly great numbers.
Second, despite not having to contribute, license while, LLVM has still seen so much contribution from big companies (Apple for one) that the whole argument is moot.
Third, I meant companies like RedHat, or projects like Mongo, MySQL and others -- far more successful money-wise than most niche commercial compilers the kind that you appear to be a fan of while deriding FOSS for not making money...
Hardly something that most LLVM FOSS contributors not on university research budgets can enjoy.
So something like what happened here is not even possible. If the FUSE project on OSX would have been GPL from the beginning this person would not be able to change the licensing since he originally forked it, unless he rewrote all of the GPL code in a clean room rewrite which is not really realistic
I don't think you can legally distribute GPL kernel modules for non GPL kernels. Even if you linked the module to the Darwin code, which is released under an OSS license (APSL), the two are not compatible and it's not clear if redistribution is fine (see "Darling: macOS compatibility for Linux")
https://www.gnu.org/licenses/license-list.html#FreeBSD
MacOS XNU doesn't.
Another example would be the closed source VMWare ESX, which is definitely not GPL-compatible.
In fact VMWare and FSF/SFC have been fighting over it for the past 10 years.
Even though the court dismissed the claim, VMWare announced that will remove the code in question (https://www.vmware.com/company/news/updates/march-2019-hellw...)
You can read more about it here
https://linux.slashdot.org/story/19/03/09/0423243/vmware-tou...
In fact VMWare realese the source code of their drivers (among the other things) because they are licensed under the GPL
https://www.vmware.com/download/open_source.html
And maintains the repositories on Github with much of the GPL code they use
They disagreed that vmkernel is a driver, they did not rule that GPLv2 software can be combined with incompatible licenses.
The source code for vmklinux, The actual kernel module, is released by VMWare for this exact reason.
Honestly, the only model that seems to work in the long-term is corporate-backed OSS where maintainers are paid a salary. Professionalism endures long after the passion has faded.