Hacker News new | ask | show | jobs
by mangecoeur 3072 days ago
Not that this singular comment is going to help reform free software culture anytime soon, but this business of choice needs to be examined a bit. Simply adding more choices is not an advantage by itself. Have 10 choices which are all bad is not better than having 1 bad option.

In the case of free software, there is a limited resource of people's time and skills. Adding more choices means spreading that resource more thinly - you basically make things worse by having more choices.

Sadly the community is more fractious even than most political landscapes, so the probability of convergence and de-duplication of effort is basically zero and the linux desktop will always be a bit half-baked.

2 comments

> Have 10 choices which are all bad is not better than having 1 bad option.

But having 10 good choices is clearly better than having 1 good choice, and that's closer to what my experience with FOSS has been.

> But having 10 good choices is clearly better

Not exactly.

tl;dr: Even if separate Lego pieces are really good by themselves, it's no good if you can't stack them together effortlessly.

------

The problem I see with GNU/Linux ecosystem is incompatibility issues. There are many ways to do one thing, but all of them are incompatible (completely or to a significant extent) with each other.

This is how modern GNU/Linux desktop is a Frankensten's monster made from ton of software pieces somehow glued together with duct tape and compatibility adapters. No consistency, every app works differently etc etc. There are higher-tier projects that try to unify different lower-level modules (e.g. NetworkManager or PulseAudio), but then something still relies on something else, like distro-specific stuff like ifup or netctl or wants raw ALSA, etc etc. Really, it's a mess, and even though I like GNU/Linux as my desktop it's sometimes quite painful to make it "just work", hoping for some sane levels of consistency.

I know, this is not about desktops but it's just most visible there. The actual point is, too many different incompatible implementations lead to integration fatigue. Or frustration because you have to make sacrifices (get either this or that but not both).

This problem is by no means unique or specific to GNU/Linux or FOSS, but it's most visible there.

> Even if separate Lego pieces are really good by themselves, it's no good if you can't stack them together effortlessly.

I think that's unnecessarily splitting hairs. Compatibility factors into being a good choice. You can cherry-pick counter-examples, and no one's denying that those exist. My experience (almost 20 years) with FOSS has been overwhelmingly positive.

In general there is plenty of good FOSS software, but there is also plenty of bad FOSS software. Specifically though, when it comes to user interfaces and linux desktop in particular, that is something that needs intensive work, extensive testing, and a strong design vision. These are all lacking, because they are difficult and expensive and if you spread what people you have between different projects you're not going to get the resources you need.

Case in point - every company that's tried seriously to build consumer-friendly linux products has basically had to re-build the interface themselves (Nokia/Jolla, Samsing Tizen, PalmOS, Google).

> In general there is plenty of good FOSS software, but there is also plenty of bad FOSS software

Yes. That's very different than saying there's 10 bad choices, though. IMO, the good outweighs the bad, but you won't get an argument from me about there being examples of bad FOSS.

> if you spread what people you have between different projects you're not going to get the resources you need

Personally, I'm very happy that I have the option to run XMonad. What @detaro wrote is spot on here: "You can not assume that all the people working on 10 alternatives otherwise would work on one project together. That might work with your employees and work projects, but not with volunteers" (https://news.ycombinator.com/item?id=16177915). I highly doubt the XMonad developers would even be interested in working on the WM that you're envisioning, so there's no loss in having them spend their efforts on a WM that does interest them. It's definitely made my life richer.

> Case in point - every company that's tried seriously to build consumer-friendly linux products has basically had to re-build the interface themselves (Nokia/Jolla, Samsing Tizen, PalmOS, Google).

That seems like an odd example to me, since you're arguing desktop interfaces but those are all examples of mobile interfaces. Are you sure there was even a FOSS mobile interface available for those companies to use if they wanted? I think that also overlooks that companies may choose to make a new interface to differentiate their product.

> In the case of free software, there is a limited resource of people's time and skills. Adding more choices means spreading that resource more thinly - you basically make things worse by having more choices.

You can not assume that all the people working on 10 alternatives otherwise would work on one project together. That might work with your employees and work projects, but not with volunteers.