Why does modern software suck so much? It is hard to find new software these days that doesn't:
- Hog all of your system resources to do simple tasks. Such as consuming way too much memory or bandwidth, or taking way longer than expected.
- Lack the most obvious, critical features that users want. For example, arbitrary file type restrictions on documents or images.
- Condescend on users with infantile design, obfuscating important features, emphasizing trivial ones. The Windows 11 taskbar, or GNOME in general, are damning examples of this.
- Spy on you all the time without your knowledge or consent. Telemetry and analytics in everything sent straight to the NSA and other glownigger agencies.
(Aside: the opposite of all the above would be TempleOS)
The market is flooded with incompetent developers
There are too many developers who fall into common failure modes:
- People who are doing it because it pays well. They have no curiosity in the subject and will just check in, check out.
- The effective bullshitters, who lie to non-technical management, take credit for others work, and are basically just LARPing as developers.
- The perpetual juniors, who despite their best intentions, don't have the aptitude or technical skill and are stuck in the wrong career by unfortunate circumstance.
- The imperial exam takers, who will pass Leetcode-style interviews, graduate from prestigious universities with computer science degrees, who are more interested in career advancement than making software for end users.
The last category is interesting; although they aren't responsible for the majority of bad software, they are responsible for most bad and popular software. The software industry is a victim of its own success, it has attracted all the wrong people to it.
The market does not punish bad software enough
People will still use garbage software if they have to. Operating systems, communications, banking, any work-related software, basically have a captive audience. Even if the software is actively hostile to the user, one is more or less compelled to use it.
There is no forcing function to make software more efficient, people just seem to tolerate slop. Even in games where performance is paramount, there's a lot of poorly optimized games built with the industry standard Unreal or Unity engines.
I blame the moronic populace for voluntarily giving up any semblance of privacy by using corporate tech platforms and social media. I despise how these platforms are so entrenched, that it's the only way to reach normies.
Even in absence of a market, free software sucks (mostly)
I do not want to edit configuration files or source code to have software that does what I want, or things that randomly break when I upgrade, or require some manual intervention on my part. The older I get, the less patience I have for things that don't have sane defaults.
A lot of free software that gets popular suffers from a sort of tragedy of the commons, too many users with different end goals or differences of opinion. Maintained by a small group that is somehow accountable to millions of anonymous users.
It's somehow assumed that good software will rise to the top, but this isn't always the case. Sometimes things are popular for reasons such as inertia, effective marketing, network effects, etc. Nerds derided Dropbox when it launched for being a commercialized FTP client that re-implemented existing open-source software, but it fit in with pre-conceived mental models of how files should work to normies. Effective propaganda amplifies what people already believe.