My gripe is exactly that: the "users" are typically the ones that rant and rave about how good Linux is and how secure, all without contributing anything. Like you say : it is extremely difficult to convert non-contributors to contributors. Yet the non-contributors seem to be the most ravenous maniacs. "TheRegister" is full of users and sysadmins that wage holy wars over wayland , systemd and other things. Virtually none of them contribute.
Ah, I apologize: I misunderstood your point. I absolutely agree with that.
I personally completely, absolutely ignore such user complaints, demands, assertions, et cetera, exactly because they are utterly irrelevant.
I don't even read "trade magazines" or articles about Linux online, exactly because they do have to cater to users/readers to keep functioning, which makes those articles' conclusions and suggestions contrary to my own needs/goals (as a developer/integrator/customizer-user/contributor). (Hopefully you'll see how this directly lead to my misunderstanding of your point also.)
It is also why you rarely if ever see me suggest others try switching to Desktop Linux; except when dealing with organizations that have the ability to obtain or provide the necessary support resources, and even then I point out that the initial transition costs are higher than just maintaining status quo. Server-side and HPC is different, of course. For simple tools and such, I push for local/no-network-connection-required HTML+CSS+SVG+JavaScript browser-based solutions, with examples. (I do need the help from a graphics artist or UX specialist to make them prettier, though. See e.g.
1,
2: functional, but butt-ugly. Both CC0-1.0/Public Domain, with everything contained in the single HTML file.)
My own complaints are either technical, or against social pressure when technically inferior solutions are promoted. That said, I'm not a zealot: even though I often point out the design failures in systemd-subsumed services, and in related developers' FOSS-hostile behaviour (see debian-ctte mailing list), it
is still the easiest way to use graphical desktops in Linux distributions. I admit, being grouped with the zealots is a bit of a sore point with me, and I should try to grow thicker skin against that.
Back to this 17 year old bug: old code does not get revisited often enough. The developers are too busy cooking up new stuff [...]
[...] that they or their employers are interested in, and are not interested nor hurt by existing bugs, at all.
This is even worse in Linux systems integration (embedded Linux installations in appliances), because most manufacturers do not consider long-term employing such a team worth the cost, and instead outsource it to cheapest teams that slap together something shippable. Whenever I look at the build trees of e.g. commercial WiFi routers, I'm surprised they even stay up for more than a day at a time; they're so much full of bubblegum-and-spit hacks. OpenWRT and BuildRoot try to help, but they're quite generic, and suffer from too few bug hunters too.
Yet, I cannot and must not just point at other people for not fixing bugs enough: I, too, am to blame. For example, the current Linux USB serial driver for
ch340, ch341 is buggy, and does not include all the features that the WCH
ch341ser_linux driver has. The latter needs quite a lot of cleanup — well, basically a rewrite — to be long-term maintainable as a
Linux USB serial driver, but nobody has done that yet. I happen to use both ch340/ch341's, and could use that same driver with CH32X03x and CH32Vxxx microcontrollers' hardware USB serial stacks for e.g. flow control; and I do have the skill and knowledge to do so. I just have not done so! It's not just laziness, though: with my wonky social skills and issues I really fear I could not handle the necessary back-and-forth pushing to get the necessary changes upstreamed via linux-serial/linux-usb/kernel-janitors/linux-kernel mailing lists.