If these projects were crappy no one would bother using them.
You're not entitled to anything as a user of open source software. Open source is about collaboration, not entitlement,it's not one dev having to maintain everything for other developers.
It is true.
However, this is why Proprietary software will always be around and why there are many markets where Free Software won't take over. There are many people that don't want to be a collaborator because they don't enjoy dealing with software. They just want to exchange money and have a problem solved for them.
Free Software is, for some people/organizations, more expensive than proprietary software because they would need to hire somebody to solve their problems. You're right that they aren't entitled to someone else's labor for free. However when they pay someone's salary (by buying proprietary software, or a support contract), they are entitled to something: as much support and hand-holding as they can negotiate for given that they have the BATNA of paying a different company. For people/organizations that need that hand-holding, it is necessary to make some tool useful at all, so it ought be considered part of the cost when telling someone "you should use Open Source! It is Free as in Beer!" If you think that those folks are wrong about the cost of Free Software, then either tell the sales folks at Red Hat or do the arbitrage yourself.
Ive seen arguments involving someone advocating Free Software for economic (rather than ideological) reasons and just not getting it, so I apologize if I sound like a broken record.
(oh, and a tool can be useful enough to work, but crappy enough that it makes someone feel frustrated and stupid while using it.)
Yes. Definitely true. Also, there are people/organizations who do enjoy dealing with software but don't have the time/resources to work on a particular piece of software that they need and use (because, for example, their core business focus is on some other area.)
For them, too, it makes economic sense to buy it, even though they are capable of doing the work themselves given enough time.
Yes they can fork and pay someone to resolve issues for them. If the maintainer isn't paid by the business using the project then he owes them absolutely nothing.
That's why I'm talking about collaboration, and that's what developers often forget. Making a pull request is simple,80% of the time, the user has the capability to patch a bug, but he can't be bothered with that yet complains. That's entitlement.
The entire context for your quote is about purchasing proprietary software or a paid support license... So yes, the maintainer is being paid by the business using the project and owes them support.
So, uh, while it's certainly true that it makes a lot of sense to exchange money for goods and services, in this case, working software, my experience has been that a lot of times? proprietary software is worse at this than open-source. See RedHat, for instance, for an example of pretty good support (well, compared to what you get when you pay money for proprietary software)
In fact, i think there are structural reasons why buying support from someone who supports an open source product might be better than buying support from a company selling proprietary software. The main reason being that the open-source software provider has competition. People other than RedHat can reasonably support RedHat software; this can't really be said for closed-source software.
Considering the huge pain in the ass that switching business critical software packages usually is, well, my personal experience is that if you get something closed-source from IBM, you are going to be way more disappointed in their support than if you get something open from RedHat.
Another related structural reason is the lower cost and lower risk for a professional of educating oneself on open source, reducing hiring costs. This only applies to domains where the things you're buying aren't turnkey solutions, but that is many domains.
Really, "what level of support do I want to pay for?" is a question you have to answer separately from the "should I use open source or not" question. You can often buy closed source software without support, just like you can often buy support for open source software. The quality of the available support varies quite a lot, and really should be evaluated primarily on the reputation of the company you are buying the support from, but in my experience? proprietary software is not the clear winner in the paid support department.
I actually think that a lot of managers are sold a bill of goods with the "someone to blame" line- The software being closed-source and paid for doesn't automatically mean that the support is any good. I've been in so many situations where we end up needing to call support because something broke, we don't have the source... and a lot of times? well, I (and just about any other sysadmin) could give you really long stories of incompetence.
FWIW, this is probably both an historical attitude and a population difference. If you and a colleague at a university just made csh to get your jobs done, then you will help each other out by doing the development. Because ya'll are also the entire userbase, then you are also the beta-testers. Back then, if you used a computer, it was because you were either developing software or entering data for a developer. Not very many non-developer users touched computers until the 80s; most people developed some kind of software, even if it was trivial BASIC programs on a Commodore.
In the OSS world, you have always been expected to contribute fixes to bugs that affected you, because the tools and source code were in your hands. For most non-developers, there exists only a lack of skill to stop them from fixing bugs or at least filing usable bug reports.
Nowadays, there are much more users who cannot or do not submit bug reports, let alone develop software. Nevertheless, the attitude since the days of csh has not changed much, because not a generation has passed since OSS went somewhat mainstream (e.g. in the data center).
Whether OSS will leave behind the historical attitude that users should be able to understand the software they use (this seems a responsible attitude to me) remains to be seen. Regardless, the developer-base will likely continue to proportionally shrink and users will proportionally become less able to understand their computers.
And if you think spending countless hours implementing and testing features in a codebase (that you have to spend hours just learning, and that is if you're lucky and already are familiar with the programming language its implemented in) is "better" than just paying a vendor to do it, then probably no rational argument would convince you otherwise, and I would withdraw my objection.