> You can do it obviously, but it's effectively just a different way of soliciting donations at that point; the fair market value of the software is ~$0
It is a viable business model. At XWiki SAS¹, they do this for their "Pro apps" [1] which are paid extensions for XWiki targeted to businesses and that are free software (under the LGPLv2 license) with license checks.
Business they won't bother removing the license checks, it's easy enough to pay, and far easier than donating.
It is not XWiki SAS's only business strategy nor the one that brings the most money, but still, that's not a possibility to discard too fast.
You can also find paid open source Android apps on the Play store, and people (individuals!) will totally pay for them even if you can have them for free from F-Droid, like OsmAnd+ [2] or Conversations [3].
¹ I work for them
I'm not saying it's impossible to survive with that model; lots of organization survive on donations. But you're not gonna be able to build the Free Software equivalent of Microsoft or Google on donations.
That said, I think doing that with business software is a particularly interesting case because it allows low level employees to justify running a donation through the regular software purchasing process without raising too many eyebrows if they care to. I've seen a few other projects with similar models.
That's almost like saying that Netflix relies on the consumers' goodwill, since pirating is too easy. In reality, people pay for convenience in getting what they want.
In XWiki's case, we know it's not perceived like "I could be having it for free but I'll pay anyway because it's a nice thing to do".
We do explain that our stuff is open source to our customers though. It's a selling point.
In our case, admittedly, it helps that our target customers want our support anyway.
> before someone just undercuts you with a fork.
Absolutely, it is a risk to take into consideration. Now, maintaining a fork has costs too, and someone doing this would rely on continued maintenance and goodwill from the upstream vendor as well.
Downstream vendors actually have an incentive to keep good relationships with upstream, so they can share fixes and have some guarantee that whatever they base their business on keeps being maintained.
I think there is an issue with your definition of "user freedom". What do you mean by it?
Stallman, when defining free software, does not bother with standards or terms: he relies on his own definition of what "user freedom" means and from there states that free software is software that is not restrictive of this freedom.
Free software simply does not restrict what the user can do with a program. It is not a matter of interest. People that choose a free license when they publish something (and respect the license's terms, obviously) are voluntarily letting go of their ability to restrict the user's usage of the program.
The issue I would have with "non-predatory" or "non-abusive" non-free software is that it does not allow me to fix problems I might have with the program. But this is only a problem I have. In other contexts, maybe a user needs to send (modified or otherwise) copies to other people of the software without being able to make sure the author agrees that this transaction is ok.
Fundamentally, non-free software restricts the user's freedom, even if it fully respects what the user would want to do. Similarly, a typewriter that can only output English text would restrict your freedom to type anything beyond English text (which is not something you would care about if you only wanted to write English).
That's the idea anyway. What do you think?
Stallman goes further than my preferred definition, insisting that Free Software must also be freely redistributable with no required payment. This cripples that very same market for patches by greatly limiting the resources available to fund it, and cripples the software itself if there's no big commercial interest backing it. The result is that Free Software is often not competitive with proprietary software, except when it does have a big commercial backer (Chromium, AOSP, etc) in which case that developer is often able to maintain a virtual monopoly on patches despite it theoretically being open to competition.
What do you mean? What would free software requiring redistribution payment look like? Say I send a copy of a free-as-in-freedom game that I may or may not have modified in some way to a friend or on a forum, should I pay its author(s) for this? How could I, for instance, commission someone to modify software if I want to change it when I don't have the skills to do so myself, in your definition of free software? I think a simpler definition, like Stallman's, is less restrictive of software modification.
Restricting how software is redistributed holds a great deal of power, especially when you remember the idea behind free software is that you get to have control over your software. Copyleft is such an example -- it is highly restrictive.
I get the financial issue one could have with free software as defined by Stallman; freeing the software you distribute is a difficult decision. Free software is advocated from the point of view of its users, who are ignorant to the difficulties one might face when developing and publishing software. If this is a decision you can make, it is kinder to your users to free the software you publish.
Side note: free software requires one to examine how they value commodities. Do you value the object itself, or the human time it took to make it? In a world where software is thought of as free by default, developers can be paid not per copy, but per patch. I believe such a world would be better for software quality because I agree with you that competitive markets are better at aligning with consumer interests than monopolies.
Your friend would have to buy a copy of the original game from the author (or a reseller) before using your modified version of the game. You could even sell your mod to others, but they would also have to own a copy of the original software in order to use it since what you'd be selling is the modification, not the original software it depends on.
This is technically already legal, except most apps don't have the source code available for you to modify in the first place, and some companies try to abuse license terms to prevent it.
> How could I, for instance, commission someone to modify software if I want to change it when I don't have the skills to do so myself, in your definition of free software?
You'd just... do that? Same way you commission a mechanic to rotate the tires on your car. You'd have the source code and build tools. What's the problem exactly?
> Restricting how software is redistributed holds a great deal of power
I agree. I don't think authors of my version of Free Software should have control over how software is distributed except that new licenses have to be purchased from them. Once a license is sold, I don't think the author should have control over how that license is used or who it gets transferred to (except perhaps a modest limit on how frequently it can be transferred, to prevent shenanigans like third party floating license pools).
> developers can be paid not per copy, but per patch
I don't think this is very practical with Stallman's version of Free Software, because once you sell one copy of a patch that person can just turn around and sell it to others, undercutting you. So you'd have to price your patches at an absurdly high rate to recoup your costs. Effectively you'd be selling a personalized support contract, not actually selling software. This model sort of works in commercial contexts (hi Red Hat), but it's clearly not competitive with the proprietary software model. (Compare the market cap to giants like Microsoft, IBM, Oracle, etc.)
The FSF will argue "you can totally sell Free Software"[1], which ignores the fact that without any restrictions on distribution/copying, the fair market value of said Free Software rapidly drops to ~$0. It's not a viable business model. Companies have built alternate business models around soliciting donations, or selling support or non-free add-ons to Free software, but selling Free Software itself (at least as the FSF defines it) doesn't actually work in practice. (You can do it obviously, but it's effectively just a different way of soliciting donations at that point; the fair market value of the software is ~$0.)
[1]: https://www.gnu.org/philosophy/selling.html