Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

1. I hate the application distribution model. Repos are basically the same as walled gardens, only maintained largely by unpaid volunteers who occasionally introduce their own bugs. You can't have two versions of the same application unless the packages have been specifically set up to allow it (Python 2 vs 3), you can't install applications to alternate disks, and there's no such thing as a portable application. There's also of course a dozen different package formats and hundreds of different repos. If what you want isn't in your distro's repo you can hope for an AppImage, but they're not "the way it is done" in Linux land so it's pretty unlikely. There might be a Snap or Flatpak but they have basically all the same limitations as the other package manager/repo models as well as a few extra ones for good measure. So then you're stuck compiling from source, which requires setting up a build environment which is probably finicky and sometimes requires installing yet more packages that are not in the repo. It is more or less impossible to have some software on a stable release while having other software on the bleeding edge.

2. The community is condescending, arrogant, and extremely pushy. If you have a problem and it is not in the set of problems they're used to, they will be mad at you for not conforming to how they do things. They will often unhelpfully tell you to use a different distro, which of course has its own problems. When none of their unhelpful solutions are good enough, they will blame you for not changing your use case. They will hate on people using alternative OSs, but when told why people chose those OSs instead they become extremely defensive.

3. Everything else. There's a lot of little things that add up. A modern Linux desktop has a lot of moving interconnected parts that are mostly developed by completely different groups with completely different goals, almost none of whom write good documentation. Every application has a completely different configuration file format. Pretty much everything in GUI land is at least a little jank, as though it is just a poorly coupled frontend to running commands on the terminal... which it probably is. There's a lot of hardware that technically works, but is flaky as hell with the existing driver and there's no indication that'll be the case until you run into a bunch of problems. The system's default response to running out of memory is to start randomly killing programs to free some up, and for some reason the community doesn't think this is completely insane.

I will say that Linux is usually pretty good for building appliances, and it makes a decent server because server is a subset of appliance. But as a desktop it is a complete garbage fire as far as I'm concerned.



I've seen a lot of #2 in this thread, even. A lot of really snippy remarks about it being 'your fault for using unsupported hardware'. Which is a weird statement to make, I think. If the OS allows the installation and claims to have drivers available, it seems like that hardware is supported...

I would certainly not blame the user when it doesn't work correctly.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: