3 ms·
I'm not a maintainer of any significant open source projects, but I'm very sympathetic to the author here. My personal philosophy has always been that I want to
by logicprog 3y ago
I'm not a maintainer of any significant open source projects, but I'm very sympathetic to the author here. My personal philosophy has always been that I want to try to support, either with my time or my money, the creation of any projects that I find useful or use in my day-to-day life, and that anything I get from open source contributors or maintainers is supererogatory, a surprise, a free gift to be excited and happy about, instead of to take as something I am owed and demand more. I think the entitlement that much of the open source community directs towards our maintainers, where we expect them to fix all of the bugs problems we have, add all of the features we need, and somehow conform to everyone's vision and use case for the product, or else they are evil and selfish and "don't listen to the community," is just fundamentally unfair and unjustified: these people are doing work for free, and as such don't have any sort of obligation to us. No one deserves an ounce of free labor from anyone else, but the opposite of that seems to be the mentality that the FLOSS community has fallen into, and that sense of draining, entitled, almost childish obligation is naturally going to burn out maintainers and contributors at a pace faster than we can probably afford to replace them, because who wants the Sisyphean task of tirelessly and thanklessly appeasing hordes of childish demands? This is not to say that the demands themselves, they're specific technical content, are necessarily childish — of course they probably aren't. This is just to say that the expectant, demanding tone most requests are made in, which betrays the entitlement that motivates them, is itself childish. Neither is this to say that all requests made towards an open source project must be childish, as there is a way to make a request that doesn't seem like a demand, or contacts where demands are fair, like asking them to fix a CVE.
I do also think though that some of the author's problems also probably stem from the fact that they used an open source license instead of a proper free software license like the lgpl or mpl, which means that they weren't able to force individuals and companies to contribute back to the software commons they were all benefiting from, and therefore ended up with a free rider problem. A copy left license would have at least made people contribute some of their time to the library, if nothing else. But it isn't a perfect solution either.
In any case, I think this author's solution to the conundrum here is actually pretty reasonable. I've been pretty sympathetic to the idea of providing all of your source code — enough to compile and build a complete and functioning version of your project — as free and open source software, but asking for money if someone wants the convenience of pre-built binaries or packages, or access to a package repository or continuous integration system or something. It seems extremely fair to me to say to the user, essentially, "yes, you can get all of the source code you need to build a version of my project, so I'm not taking a way any of your basic software freedoms, but I'm not going to do anything more than the absolute bare minimum for you if you don't want to do anything more than the absolute minimum for me". Because while I believe in the idea that information should be free, and that open source is the best development model, and that libre software is important for user rights, I don't think that people are entitled to project authors going out of their way to provide conveniences like pre-built binaries or packages or package repositories.
On the same subject, I think this sort of entitled mentality in FOSS actually compromises the quality and diversity of the open source ecosystem as well: instead of each open source project being free to pursue, on its own terms, its own unique vision for what it wants to do and how it wants to achieve that, and everybody getting to choose which projects to use based on whether their vision happens to align with the vision of the project, instead users seem to just pick a project at random, based on whatever was provided to them by default or whatever they came across first, and then petulantly demand repeatedly that the project conform to whatever they want, making every project an exercise in regression to the mean through the eternal process of satisfying some giant collection of random people, until any unique coherent vision or direction for the project is lost under the weight of democratic cacophony. See GNOME vs KDE, essentially.