> Getting and keeping a Linux Desktop in good working order is harder than it should be at this age of Linux.
Maybe because all the developers ran away to Macs, instead of sticking around dogfooding and fixing bugs? Free software is a collaborative social enterprise - it's not really anyone's job to make free stuff for you to use. If, as a developer, you've taken the easy path of proprietary software for years, and now after finally getting fed up of being abused by a company that doesn't have your best interests at heart you return to the world of Free Software only to complain that it's still unpolished - then I'm afraid you are rather entitled, and deserve a serenading by the world's tiniest open source violin.
And make no mistake, the kinds of "rough edges" you refer to are not hard computer science problems. They're broadly just the kinds of everyday maintenance things that inevitably crop up in a huge software project on an ongoing basis and are easily fixed by many eyes and a little graft. The more eyes, and the more graft, the more polished the system.
For what it's worth, Desktop Linux for all its faults is still light years ahead of the competition. Far from perfect, as you say, but it really is the least bad choice. As they say - the best time to rally around Free Software is 10 years ago, and the second best time is now.
I have been dealing with computers since I started CS in school 18 years ago, and well my preferences have been changing since then.
I used to love playing with computers and being able to try different linux distributions even if I had to spend 5 hours to have a usable external monitor (actually spending that time was one of the best parts) but that changed mostly because of my needs, but also because of my economy.
When I had to start being more productive and I could afford it I bought my first Mac Book, and it lasted ten years! At that point I realized that maybe for me it was worth it spending that money and using that time to configure a keyboard doing something else.
I feel I was the target at that time for Apple with some of their products, maybe now things have changed and I am not anymore.
And I guess yes, marketing is what is driving them, but I think they are abandoning part of what they used to be their target and, hopefully, someone will fill that void with something that makes me as happy as when I bought my first Mac Book.
BTW, now I am using a Pixelbook and a Mac Book for my personal stuff and Windows professionally and although is getting worst and worst I will still keep buying them.
While I sympathize with your political position on free software, I have come to the unfortunate conclusion that this point of view is idealistic[1] and short sighted.
The vast majority of engineers don’t commit to switching to free software not because not enough hearts and minds have been convinced yet but because the entire economy and the basis of everyone’s material existence depends on a system that is at this moment market-based.
The popularity of proprietary software stacks is ultimately structural, as are the problems and caveats of proprietary software. Engineers are, in the vast majority, dependent on selling their labor to the commercial employment market for their livelihood, in many cases an extreme amount of labor in a highly competitive environment.
It is absolutely great that many engineers dedicate free labor to contributing to free software, and it is completely unreasonable to expect that anything at all could make the vast majority do it. Not an unreasonable expectation of an individual, but of the structure.
[1] in the sense of philosophical idealism vs materialism
The majority of web servers that serve all the web content that you use are Linux based.
Some of the most popular video games that have massive markets and revenues behind them (CounterStrike and moba games) have all started out as free mods to existing games.
The largest share of the worlds smartphones run Linux.
Twitch streamers, some of which make extremely high salaries, use open source broadcasting software
Python is now becoming the de-facto language of scientific computing, with all the major libraries available for free.
You are greatly discounting how much open source software has affected, and more importantly changed the direction of bought software.
I don't think anybody is doubting about the huge impact of open source in science and technology, is more that maybe linux is still not a substitute for some commercial products
But...it very much is if you are looking at software that falls under the group of "operating systems".
There are use cases that realistically warrant enterprise software, but those stem from the argument of optimization of time - for example, not doing all your computation stuff in python with spending upfront time learning it when you engineers know Matlab. But those are not intrinsic to the software, it just so happens that Mathworks funds universities and pushes their product to be taught in classes, so that they can get revenue from companies buying licenses when their engineers enter the workforce.
If colleges switched to teaching with open source software, this would have zero net effect on the capability/knowledge of someone that graduates said program, because all the material is going to be new to him or her anyways. And, it would also increase the userbase of the software, and thus improve it.
This!. Love your reply. I'm also tired of developers criticizing Linux desktop for not being friendly enough and running away to propietary systems instead of trying to help to fix what they don't like of Linux Desktop. That's the good thing of open source: don't like it? Then fix it and send me a patch and stop complaining. Its not like propietary systems where you only can complain (you can't fix)
Maybe they want to get stuff done, other than puttering around in the tooling. It's a nice option to have, but would be ruinous to productivity.
Also, design by committee rarely produces good UI. You can patch little UI bugs, but if you really want to holistically improve the UI it's a huge undertaking.
Just because you're developer, doesn't mean you want to hack on every tool you use. Software has gotten way too big for that.
I can attest that using free software is not ruinous to productivity - least of all in the field of software development itself.
You don't have to fix every bug you find. Just fix the odd bug, and work around the rest until somebody else fixes it; many hands make light work. But the work doesn't get done at all if you run away to proprietary platforms.
You don't have to boil the ocean. Just do your civic duty from time to time. Once a year, even. If everybody on HN used desktop Linux and, once a year, invested an hour into fixing a minor, polish-level bug, desktop Linux's polish problem would completely disappear.
> You mean like that crufty thing called homebrew?
What kind of problems have you faced with Homebrew? Can you please elaborate?
I use Homebrew all the time and it just works for me out of the box without any issues. I never had to edit configuration files or customize anything to make it do the right thing. It just works.
This attitude really bugs me. Linux is crap because the community around it is dysfunctional and doesn't care about building a working system, not because developers "ran away".
I am typing this on a Mac. I spent years as a desktop Linux user and developer.
For maybe 5-6 years, I invested my evenings and weekends in trying to improve desktop Linux. I fixed bugs in ALSA. I worked on Wine. I fixed bugs in GNOME. I wrote freedesktop.org specs. I did a lot of stuff.
I also watched as lots of other people tried to fix basic problems.
You know what my experience was?
Half the time, attempts to fix things triggered massive flamewars. KDE and GNOME couldn't agree on basic things like how notifications should work; any attempt to come up with a compromise system resulted in the KDE guys screaming and yelling about how everyone should just adopt their own system (which had braindead usability problems). Linux people thought package management was God's Gift to users, even though actual users kept telling them it was awful and they just wanted to download apps from websites. The kernel developers insisted that every driver by GPLd, even though this was incompatible with the business models of key hardware developers, resulting in those firms working around the GPL, ensuring nobody "won". Common distros couldn't play music or video files because of a refusal to pay for software patents.
The other half of the time attempts to fix anything were rapidly undone by pointless ecosystem churn as things were written, rewritten, thrown away, and rewritten again.
There was no coherent plan, no architecture, and competitive evolution turned out to be bad way to create an operating system. Developer experience was a nightmare. Any time something deviated from what was laid down by the original UNIX in the 70s it caused massive schisms and basic APIs split or stopped working.
Linux on the desktop will never be competitive with macOS regardless of how badly Apple screw up their QA because the desktop Linux community is far more dysfunctional.
> That's the good thing of open source: don't like it? Then fix it and send me a patch and stop complaining.
That's simultaneously a good thing and bad thing. It's good because it's possible. It's bad because when everyone is responsible for a platform's software defects, then no one is responsible.
Even if we ignore average users, and just consider developers, the overhead and learning curve is prohibitive. A frontend webdev or even a backend Java dev would probably have a really hard time tracking down and fixing an issue in Xorg or Wayland or in their touchpad driver. The relevant maintainer could likely fix it in a few hours or days if they had the available time and motivation, but the user (who just happens to be a developer in an unrelated field) would likely take many days or weeks.
Even if you match skill-sets -- say a C programmer is having trouble with some GNOME UI issue that would turn out to be a bug in a C library -- you still have a big hump to get over to contribute to a project you're not familiar with. Build system, how to safely test changes on a live system (where the normal software comes from a distro package), code organization and just learning how things work in a new code base, code style, pull request process, review process, etc. -- all of this makes it really difficult to contribute, even if the actual change is small.
I do wish more people would take the time to dig in and scratch their own itches, but I absolutely don't blame them for just wanting to be able to get their work done without having to first fix their OS and tools.
(Credentials: I use Linux as my daily driver, and have gotten frustrated by macOS as a development environment any time I've had to use it as such. I used to be an Xfce core maintainer, a decade ago. These days I mostly do Scala and Java backend dev, and consider myself quite rusty with languages like C.)
Well put! I use KDE nowadays exclusively and all the tremendous progress they showcase here - https://pointieststick.com/ - is very real and exciting. They have made the development process easy and friendly and it really shows in terms of contributions they are getting.
I enjoy reading the progress every week and digging into the bug fixes and review comments! One day I will have some free time to contribute.
I would be very happy to pay $140 one-time price for a fully functional, working Linux desktop environment. Even if it's limited to way fewer hw configurations than a Windows OS. Btw. $140 is the cost of Win 10 Pro.
Well said, no pain no gain. If your not prepared to walk away from proprietary software and deal with the rough edges then you're a captive audience and the creators of the proprietary software have no incentive to improve.
And let's face it, most of these "rough edges" are just excuse making, the sound exactly like the sort of things people say to avoid losing weight, quitting smoking, etc.
> And let's face it, most of these "rough edges" are just excuse making, the sound exactly like the sort of things people say to avoid losing weight, quitting smoking, etc.
In this comment you sound like you're absolutely convinced that linux is the best in every way, and as if linux is a goal, rather than tool to you.
If these rough edges are "excuses" not to use the tool, then how is that not a perfectly legitimate reason not to use it?
This is coming from someone that has linux as a daily driver by the way. I think over the years a lot of these rough edges have gone away, but some are still there. Sound configuration, multiple screen setup or gaming are just a couple of big examples that are still jarring and sometimes don't work right and would absolutely be a turn off for normal users, and a valid reason even for devs to say they don't want this.
People make it sound like these excuses are "entitled" from devs who don't want to contribute, but that just reveals that they think they're entitled to that dev's contribution, which is not true.
> If these rough edges are "excuses" not to use the tool, then how is that not a perfectly legitimate reason not to use it?
Because it gets a little old seeing people reason themselves into a position where they are stuck with apple and it's the fault of linux as the GP did. If only linux were better I wouldn't have to keep buying apple.
If they aren't willing to jump ship then apple has zero incentive to change anything, so they're just stuck and unwilling to accept any way out.
> In this comment you sound like you're absolutely convinced that linux is the best in every way, and as if linux is a goal, rather than tool to you.
It is, at least getting myself off abusive proprietary software is the goal. I can write at length of the problems in linux, but at least I'm not stuck complaining about telemetry and being too lazy to do anything about it anymore. I've still got a way to go in other areas.
This seems perfectly reasonable, and this is for me also part of the reason I'm using linux.
I do however still sympatise with devs and users that simply aren't comfortable making the switch because of these "excuses". I think their position of staying with proprietary software is also perfectly valid- although as you point out, this doesn't help the greater good.
Maybe because all the developers ran away to Macs, instead of sticking around dogfooding and fixing bugs? Free software is a collaborative social enterprise - it's not really anyone's job to make free stuff for you to use. If, as a developer, you've taken the easy path of proprietary software for years, and now after finally getting fed up of being abused by a company that doesn't have your best interests at heart you return to the world of Free Software only to complain that it's still unpolished - then I'm afraid you are rather entitled, and deserve a serenading by the world's tiniest open source violin.
And make no mistake, the kinds of "rough edges" you refer to are not hard computer science problems. They're broadly just the kinds of everyday maintenance things that inevitably crop up in a huge software project on an ongoing basis and are easily fixed by many eyes and a little graft. The more eyes, and the more graft, the more polished the system.
For what it's worth, Desktop Linux for all its faults is still light years ahead of the competition. Far from perfect, as you say, but it really is the least bad choice. As they say - the best time to rally around Free Software is 10 years ago, and the second best time is now.