I haven't used MacOS for a couple of years but I can say for certain that Linux is not that far behind Windows and sometimes even ahead. I think the main problem is lack of application support but specifically for developers most applications are already there.
There are no multitouch gestures, there's screen tearing, 4K video playback on a 4K screen is choppy, sleep and wake up both take a long time, deep sleep doesn't work properly and I HAD TO DOWNGRADE MY KERNEL because of the stupid "Resetting rcs0 for hang on rcs0" bug that would freeze the machine for five solid seconds every minute.
I work on dotnet. I've not been able to run my azure functions on Linux at all. Even on windows, I have to start the azure storage emulator directly and then start func (using the full path). On Linux, azurite is not the same thing as azure storage emulator.
So I must use windows for dotnet development. Even after four years of dot net core. That being said, Linux isn't the problem. Gnome 3 isn't the problem either. Flatpak works great.
There are a few regressions once in a while though. For example, I'm unable to use my lenovo flex 14 (and ryzen 3500U) built in mic since I upgraded to Fedora 33. Looks the issue well be fixed in kernel 5.9 but for the moment I'm on 5.8. But it has been great mostly. If I could use it for work, that'd be great.
Someone has to say this literally any time someone mentions problems with Linux Desktop, along with "it works for me", "my grandma uses it!", "you just have to buy the right hardware", and "you're using the wrong distro". It is incredibly tiring.
It's extremely tiring to watch this happen for as long as I have been watching it happen.
Also if you have to argue with someone that linux does work for them, you've missed the point.
In some aspects, the hardware on high-end-insh laptops have moved nowhere in the last few years. Yeah, they've got slightly better GPUs to handle 4k, Vulkan/SPIRV and new media codecs, and faster SSDs once they've got rid of SATA, but the CPU performance moved just in percents and it comes with the same memory. My wife still uses 2012 i7 Thinkpad (T430s) with 16 GB RAM, and there are not many cheap machines that could be objectively called better. Certainly not in the $300 range. Heck, until Ice Lake, you couldn't purchase a laptop with more RAM unless you went into luggable workstation segment, so it is no wonder that MacOS works relatively OK on 5yo machines. They are still way better than $300 Acer, despite that Acer having possibly some better paper specs.
There are probably also plenty of companies which exclusively develop on Windows. You can have an entire career in the embedded industry, target Linux all the time, but never use it for development. Development is not all Linux based, I never said that. What I quoted were percentages.
> it should be widely accepted in spite of being a distant third in usability.
As you shared your anecdote, let me share mine. Recently I had to set up a new networked printer on both Windows and Linux. On Linux it worked immediately, on Windows it didn't and required installation of a manual driver. That installation was partially botched and removal didn't work. Only after a few attempts it did, at which point I've spent an hour with the problem. It's the same old crap that you had with Win 95, but now on Windows 10, while Linux has a proper IPP driver and no need to install outside software. Maybe Windows has an IPP driver too, no idea, but it didn't work which is what matters :).
Also, there are definitely distros that are more usable and ones which are less usable. I think there is a true core in the meme of people being lured to linux by "use linux it's user friendly", then being told that Arch isn't that much harder anyways, and then ending up using one of the expert distros which often break in subtle and hard to debug ways.
But yes, in many ways Linux could do better usability wise. For example, it's a nightmare to target GUI Linux and then expect your binaries to work for years. It's almost easier to just ship Windows software and then use Wine. Nvidia also has shitty drivers, and in general, the driver situation isn't perfect. But things are improving I think and the gap is shrinking.
Also note that there is an effect when more people use a piece of software, there is a larger market for people who make a living with improving that software, via support contracts, consultancy contracts, etc. So once desktop Linux gets adopted widely, it might improve in many ways from the current state, simply due to ecosystem size.
https://news.ycombinator.com/item?id=24831162
Anyways, the claim was that Windows and Mac are way better than Linux and it doesn't even compare. My anecdote shows that it's not always the case :).
I switched from Mac to Linux, and it's been fine, partly because I used a laptop that has Linux installed by the manufacturer. If you only ever used Hackintoshes you'd think MacOS was a mess, too.
Every researcher I've met in the last 10 years needs some version of Linux to get their job done effectively. Largely because tools like Python/Numpy have replaced stagnated (due to years of monopoly) tools like Matlab and they are much easier to setup and use on Linux.
Mind you, I am not talking just computer scientists. Biology, physics, maths, all use linux based setups.
The thing about Android, it was essentially foisted on people, not chosen because it just works. Also, many Linux distributions today "just work" on typical hardware - almost as well as Android on your phone. And if you were using a hardware config chosen by someone else, and a Linux-based distribution pre-installed and pre-configured for that hardware - then Linux very much "just works".
It is true, though, that this is not enough to expand the user base far enough. That needs a lot of coordinated, collective, public activity.
Counter-anecdote: I have had a Linux computer on my desktop for over the last twenty years, have used Linux primarily for maybe the last eleven, and exclusively for the last eight.
I do not get the near-religious love for Apple products. Pre-OS X, they really were wonderful, best in class without a doubt. I kinda get the attraction back in the early 2000s, when Linux could still be a chore and Macs were a decent choice to get a computer which had a shell and ran real software. But now? They are just not for me. I want to own my own computer, write my own software and control my own destiny.
You may want some idea of controlling your own destiny, but it’s a mirage.
However using a Linux desktop simply is not a step in any particular direction. It is especially meaningless for non-developers to do if one of the other platforms just works for them.
Steps in the right direction involve developing software to solve the problems that the corporate operating systems have in fact solved.
The first step in solving problems that corporate OSes have solved is identifying them. For example, one of the problems is stable/versioned/sandboxable/distro-agnostic ABIs and that is something that is being worked on and they are quite usable nowadays. The related problem is, that the corporate-software is ignoring them (how many conference solution support Pipewire for desktop sharing? Or Wayland in Chrome? Heck, VA in Chrome? Exactly... but whatever Apple comes with, they support within weeks).
How would I even begin to know the answer to these questions when it comes to the Linux technologies you are naming.
Based on what I read here, the community of people who do use them isn’t even sure.
So excuse me, I'm going to look for a new release of Cisco VPN that works with Big Sur. Of course, it is customer's VPN, and they don't care that their vendors might use Mac, so no help from them, it is my problem now.
But more importantly - you verified my assertion.
Even if a small number of security related technologies have a smaller deprecation window, the others have very long ones.
More importantly - we can even find out what they are!
With Linux, can you even tell me whether Cairo, the graphics library behind GTK and for which there is no alternative is even still supported?
It uses mechanism that was introduced in Mojave, so that deprecation window was very fast. Definitely faster than Cairo, which has already more than decade and half under it's belt.
There are alternatives to Cairo, but not drop-in ones; they would require porting (Skia, for example). Other than that, Cairo is basically "done". Yeah, there is occasional need for release with small fixes, but as a software-based rendering library it is not going anywhere. Not that announcing deprecation is otherwise widely respected; the Xorg-server was declared obsolete years ago, the last major release was in 2018, but hey, some still think there's a future and in a few years are going to be surprised by "sudden abandonment".
But you are confirming the point - nobody even knows what is deprecated or what the alternatives are.
You still haven’t answered the question of how someone is supposed to tell whether Cairo is supported or not.
Is it done? How do you know. Does it need to be developed further? It sounds like it does since people say it’s very slow compared to skia.
It seems like you think you know what the status of things are, but other people don’t. How can that be?
This is the reality of Linux.
2 years/2 releases is small window. Alternative was delivered, but it also is no drop-in one. Just lika Skia vs Cairo, requires porting/reachitecting and might not have 100% coverage for what the old solution did. You might have noticed, that in Big Sur there is a list of system apps that ignore VPNs and filtering. That's a problem.
> But you are confirming the point - nobody even knows what is deprecated or what the alternatives are.
Because it works differently. There is no dictator (vendor controlling access) telling you what you are going to use whether you like it or not, and present it as a done thing. Instead, it works by forming a consensus (not 100%, mind you), whether something is needed or not. The community around a piece of a stack might arrive at a conclusion that given piece is no longer maintainable, and make something new (i.e. Xorg-server vs Wayland compositors, or systemd vs sysv-init) and then it will bubble through as distributions adopt it - either because the new solution is maintained and the old one is not, or because the new one solves their problems better than the old one.
> You still haven’t answered the question of how someone is supposed to tell whether Cairo is supported or not.
Supported by whom? In this case, the original maintainer is no longer around. But that's not a problem, distributions will support whatever they ship, so if you have an application that uses it, it will continue to work.
Should you use it for a new project? No. But that was true for years. Cairo is 2000-era software library. Consider it equivalent to QuickDraw, you would not use it for a new software either. Gtk (which was issue here on HN recently) uses it for software fallback (and they've made part of their API, so they've locked themselves in; changing it would mean they would have break their ABI. On the upside, that means that there always be some support). Firefox abandoned Cairo years ago, in favor of Skia, and so did LibreOffice in the last release.
So it shows, that a library or piece of a stack might be deprecated for years, but there might be someone somewhere who really needs it and is willing to keep it on life support (exactly just like Gtk needs Cairo). So the question for you, as someone who requires support, is: what level of support you require and what are you willing to pay (not means in purely monetary sense; though when users are expected to pay for continual support, what's wrong with expecting that on different layer of the stack?) for getting that? Because you can always get it supported; or support it yourself, if you really needed. No one is going to kick it from underneath.The source will still be available, and it is always possible to fix it when needed. You will be never completely denied access as is the case in proprietary stacks.
> It sounds like it does since people say it’s very slow compared to skia.
It is going to stay slow (unless someone invests heavily into it; which is not probable). It is a software library, deliberately; if you want hardware acceleration, switch to Skia, and accept the tradeoffs that come with hw accel.
> It seems like you think you know what the status of things are, but other people don’t. How can that be?
Simple. I asked.
There are many venues, where you can ask. These people will tell you. However, due to having no dictator mentioned above, their answer on roadmap-like questions might be: "depends on the community adoption".
And so if the answer is always ‘it depends’, you are making my point for me.
Others may have specific reason, why they are still using it (like the Gtk example). Your new project doesn't.
I understand the general public, but the developer community? Why can't the "professional-computer-whisperer" demographic be arsed to setup their computers?
In all seriousness: The extent to which you have to manually configure / fix stuff in Linux is seriously overstated, especially w/ the "easy" distributions like Ubuntu and Mint. I've installed both of those on other people's laptops and they've had no complaints at all.
Choosing examples from the UK so people can search for them in English, they care when their healthcare data isn't secured, when dating apps leak information, when local councils abuse the rules to "snoop" on people.
If you explain that without a blocking extension (or Firefox's built-in one now?) most pages they visit are sent to Google, and Google maintains a detailed profile, they will ask how to install the extension.
You can say the common man doesn't care about free speech, but enough do care that we maintain it in Western countries.
Linux is fine, but it doesn't just work, and it needs to in order to gain a foothold not just in the developer community but with the general public -- that's the lesson Android has taught us. Until it does it will not budge the numbers. It just won't.
The real apologism here comes from the Linux community, who believes that by virtue of existing, and not being an Apple or Microsoft project, it should be widely accepted in spite of being a distant third in usability. Linux needs to step up its game or it will forever remain a distant third. The general public does not care about "free and open source" -- heck they barely care about privacy at all. That's just us, the HN crowd.
I love Linux in theory, I use it a lot, but my daily driver is macOS. Frankly it likely will remain so even as I transition to being an Android engineer in the coming months.