This might be implicitly covered under "In the first 10 years of Desktop linux there was no doubt that Microsoft was working hard to try to nip any sign of Desktop Linux gaining any kind of foothold or momentum," but I think the biggest answer is path dependence: https://www.utdallas.edu/~liebowit/paths.html and network effects. Once most people used MS DOS and then Windows, it was easiest for most other people to do so too. Activation energy in switching is hard, and a strong ecosystem begets a stronger ecosystem.
In many domains, there's an early period of fermentation and experimentation. Famously, there were hundreds of American car companies around the end of the 19th and early 20th centuries. Today there are three and prior to Tesla the the last successful one was founded decades ago. And it remains to be seen if Tesla is in it for the long term.
In phones, we have Apple and Android and that's likely it. Path dependence.
Lots of people are excited about AR/VR because those fields seem relatively open. But if they turn out to be important, they too are likely to have two big players.
Gnome saw how terrible Windows 8's start screen was and decided to double down on the phone style app drawer.
Then for good measure threw on the space wasting task bar from MacOS. Oh, and then in Ubuntu the window controls had to be on the wrong side too, obviously.
Unfortunately GNOME and consistency never went together.
From time to time I revisit the GNOME dektop to assess if it's a viable alternative to my KDE.
What I still see is random, incoherent apps, meshed together, with the worst possible default values set, for each one of them.
Also the idea that half-baked and ultimately broken extensions, could provide basic functionality that should already be present in the first place, didn't do them any favors. Even the plugin/extension installation mechanism is broken!!
The general lack of configurability doesn't help either.
I can't speak to consistent, but I think people who call any linux graphical experience polished are fooling themselves in the same way that android users are when they say it's got "just as good an app library"
Gnome is not that great. You can't even put the panel on the bottom of the screen. Which is just incredibly basic configurability and even that is unavailable.
Desktop Linux on the whole is kind of annoying because on each new install, I will inevitably end up spending hours just to get everything working properly again.
It's a tough time for desktops generally. If the question had been "when will be the year of mass market GUI linux?" then it would have happened already with Android.
The author lists all the reasons traditional desktop linux failed and keeps failing, but the short form of the argument can be summed up like this:
Linus Torvalds, who knows a bit about Linux, also makes his own desktop app (perhaps not as famous as the kernel and git), a scuba log app. He would like to release the damn thing built for Mac, Windows and Linux. But can he? Of course not. He releases it compiled for Windows and Mac, and then as source for Linux.
Linux on the desktop might succeed when Linux has a desktop. As in, at the OS level, a developer can make assumptions about how the clipboard, resolution scaling, sound, notifications, application install/uninstall etc works. Until then, no.
Right. And that’s exactly the problem. Another problem is that ALL those desktop distributions chose application (package) managers that are ill suited to desktop. You don’t want shared libraries for desktop. That might be good for server (central patching, fairly stable environment once set up).
On desktop you need to be able to install and uninstall apps by the dozen every week and never ever worry that your “system” can’t run the app, or that the app will ruin it for some other app. This requires duplicating libs or statically compiling. However package systems tend to dislike packages that include a private copy of 100 libs. That’s broken.
Flatpak is exactly what’s needed. And it needs to grow to encompass APIs on the same level as Windows and OS X (e.g good notification apis, dpi change events for multi monitor across all window managers etc etc). Modern desktop APIs are pretty intricate on win/mac, so Linux needs to catch up. The problem with catching up is that design by committee is never quick to drop old cruft, unite on standards etc. This is why I think Mozilla, Valve, Google etc has a better chance of making the successful Linux desktop, than the OSS community has. Just like the OSS community won’t ever make a AAA game.
Packaging third party libraries with your binary is just going to lead to a race to see which fucks a user first: running out of disk space or that one app with an unpatched TLS library that allows RCE for an attacker.
Exactly. And yet for 99% I’d desktop use I’ll rather buy disks and risk security holes, than suffer shared library hell. I have been screwed by library compatibility hell 100 times for every time I suffered a disk space issue or a vulnerability issue. At the end of the day if it’s a hard requirement that you want to be able to just run binary packages that were created by idiots - then the smartphone app model is the only viable one.
It’s important that components that do have significant attack surface such as TLS are provided and patched by the OS.
The shared libraries of e.g windows come in pretty well defined tiers. Things that the OS provides, various optional runtimes that must or can be shared such as msvcrt and then there is not much else. No app is going to install a “system wide” image decoder or other utility lib (In the past, it was a thing to dump a dll into the OS folder, often overwriting older ones, which is where the term “DLL hell” comes from. Luckily that doesn’t happen these days).
If someone with major resources announced a focused effort to enter the desktop OS space right now, I wouldn't put their odds in a good place. Why would an unfocused effort work?
I cringe at the idea of Linux itself containing a desktop, rather than distros adding one, so if that's the solution hopefully it keeps not being its year.
Linux doesn’t need to provide a desktop. All that’s needed initially is an effort to specify a modern desktop api, that implementers then implement. “This is what a window manager and desktop Linux should provide, and these interfaces will be backwards compatible forever”.
Flatpack is an example of such an effort, but it needs to be more ambitious and preferably more “official”.
Freedesktop.org has been doing what you're calling for for a very long time now, and with a lot of success. I remember a time when you couldn't take cut'n'paste across applications for granted... that kind of problem has been 100% eradicated for a long time now, thanks to fd.o. I'd argue that the API and protocol problem has been solved.
Flatpak isn't about APIs. It's about making easy-to-use application bundles.
Flatpak: yes, it's about making that. But to make an app for a distribution where I don't know the environment, you need some kind of common denominator for the environment. So flatpack does some of that, and freedesktop does some more.
The needed outcome is for freedesktop to have an application distrubution story - which is effectively the same as if flatpak had a larged application interoperability idea. The fact that this is two separate efforts highlights the problem - you need everything to be a coherent whole.
A combination of a larger and more modern desktop api compliance effort PLUS an app distribution effort like for example flatpak, would be perfect.
E.g. "here is how you build an app for linux desktop v5". You include the right headers linux_desktop_sound.h, linux_desktop_dpi_notifications.h, linux_desktop_dpi_scaling_events.h (etc.). I know in the end an API on top just makes you have N+1 apis - but that's the reason this whole thing needs more dictator/ivory tower. It shouldnt' be be called "freedesktop-flatpack", or "somenewname" it should be called "linux desktop apps v1.0". This is probably the hardest part: getting the politics together. For desktop to succeed you need to have an ivory tower somewhere, in the middle of the bazaar.
Only developers without Android experience can think there is some kind of desktop victory with Android.
Linux kernel is pretty much hidden from userland, including C and C++ code.
Google can easily replace Linux with any kernel that offers the POSIX subset required by Android. Everything else are just libc, libc++ and Android specific native libraries.
Only OEMs writting Android drivers would notice the difference.
Because the whole point is that is completely irrelevant that Android runs on top of Linux, and as such doesn't make any sense to tout it as "Desktop Linux".
The point of a ”better” desktop linux would be to have a FOSS desktop OS. Linux isn’t important in itself. The Kernel in that OS would without doubt be (more or less) replacable, just like it is in android.
To rephrase the topic to a more relevant form “when will there be a FOSS desktop OS in widespread use?”.
> Of course what happened here was that Steve Jobs returned to Apple and we suddenly had MacOSX come onto the scene taking at least some air out of the Linux Desktop space.
I really agree with that: if every engineer I know who uses a Mac "because Bash" would use Linux instead, we would have arrived at a decent Linux desktop market-share by now. Kudos Apple.
In saying that, as a desktop Linux user I really don't mind being part of a small user community. I would never switch to MacOSX as it is not (fully) open source, and Windows is nice for running Steam for gaming.
> Of course what happened here was that Steve Jobs returned to Apple and we suddenly had MacOSX come onto the scene taking at least some air out of the Linux Desktop space.
That might have been the case 10 years ago, but it isn't now. Desktop OS dissatisfaction is at an all time high in both the Windows and Apple camps, among both users and developers. If a linux distro got its act together it could steal the show. But, to do that would require an overhaul to linux similar to what Next did to create NextStep.
This is kind of the "last mile" problem with open-source software. The last few bits of bug fixing and documentation and - most especially - interface polish can be unpleasant. Developers who started a project because of an interest in its core problem domain generally don't want to do those kinds of chores. Sometimes it's because they lack the specific skills to do them well, and don't want to invest lots of time learning how to do something that's still medium reward (at best) for them. Sometimes it's because they just don't want to even if they have the skills, because some other much more interesting problem beckons. They have to be paid to go that last mile.
In the case of web apps, developers get paid to go the last mile - either by an employer or via the market. In the case of Linux server software they also get paid; in this case a Red Hat salary is the most common form. For Linux desktop software, very few get paid. Not nearly enough. OpenOffice/LibreOffice in particular needs and has always needed a ton of work, and almost nobody's paying for it. So it has always been a total tire fire. Random crashes, which then leave a document in a "needs recovery" state permanently no matter how many times it has already been recovered. Formatting and conversion glitches. Features and options that are hard to use even if you can find them among the smoldering dung-pile of other features and options that nobody anywhere has used for years. Staggering memory abuse bogging down the whole system. I'm sure the devs (at least some of them) would love to fix these things, but it's going to be really hard work - often more political than technical in nature - and nobody's paying them enough to go through that misery so they do more rewarding things instead. The result is software that will always lag behind its proprietary competitors in terms of appeal to users - far enough behind that people will actually pay for the difference.
If you want to compete effectively in a market, somebody has to be paid for crossing that last mile, and that means somebody has to do the paying. Nobody is.
This. I tried every major Linux distro recently, and every one had really basic problems. For example, Ubuntu and Mint don't let you configure the mouse wheel scroll speed. There are hacks but none work reliably. Do all Ubuntu users really scroll web pages incredibly slowly?
And then there are the missing apps. Want a really good, free git GUI client? Sorry, not on Linux. It's git FFS, Linux should have great dev tools. Same with file managers.
I used to be an Amiga user, I'm a C developer and like tinkering. But I also want something that just works for the basics. Sad to say but Windows, for all its faults, does work. Visual Studio does work. And all the open source apps I use like Kicad are on Windows.
I really want to move to Linux, but it's too much work to make it work. These days I have better things to do with my computer.
I'm a mac convert to linux. I've switched back and forth for years. Since I started using linux in the late 90s, I have an issue where I go to paste something, and nothing is in the clipboard, so I go back and recopy, then it works.
It happens just rarely enough to make me feel insane, but it never happens on my work windows machine or my mac. Maybe I'm subconsciously sabotaging my copies on linux.
This is the most bizarre thing I encounter, but it's missing the hundred other tiny warts I ignore because I "know what I signed up for" using linux as my daily driver.
> For example, Ubuntu and Mint don't let you configure the mouse wheel scroll speed.
Since both are Debian derivatives, I imagine that both include synclient(1). No, it's not a GUI — but that's better, because you can just put the right command into your login scripts, and you know that it'll execute, and never get deleted because a desktop environment decided to change its config file format.
> Want a really good, free git GUI client? Sorry, not on Linux.
Magit is awesome.
> Sad to say but Windows, for all its faults, does work.
I have a couple of Windows machines, and I don't feel that they work. Swallowed keystrokes & clicks, ads — no thank you!
> because you can just put the right command into your login scripts, and you know that it'll execute, and never get deleted because a desktop environment decided to change its config file format.
I really like the last mile concept applied to this.
Also, the examples everyone is sure to cite in this thread where a unix is used by the general population is just an example of some megacorp stepping up and owning the last mile.
I know this is controversial and you can call me crazy but, Microsoft is doing a pretty damn good job at bringing Linux to the desktop.
Here me out for a second. Let's ignore how Windows 10 spies on you and other side topics.
The real situation is this:
You're a developer who wants to run various Unix / Linux tools. This could be anything from simple tools like grep, to entire development stacks (ruby, python, postgresql, etc.). It could even be graphical tools like Sublime Text.
For that, you could just install any flavor of Linux but it's never that simple.
Often times with web development you're also dealing with images, so now you need a nice image editor. Sure GIMP exists, but it's not in the same league as Photoshop, sorry. Sure, you could run a Windows VM inside of Linux but it's also not as simple as that too.
A lot of us do other things with our computer besides web development. This varies from person to person. Personally I like to play games on occasion and a lot of games won't run on Linux, don't work with Wine and run terribly bad inside of a VM. Dual booting is also an awful user experience.
Perhaps you're interested in creating videos too, or record podcasts, etc.. The audio and video tools on Linux are just no where near tools like Camtasia and Screenflow. Unlike GIMP, there really isn't even a suitable audio or video solution on Linux, and audio requires extremely low latency so you can't run Camtasia in a VM. Dual booting also isn't an option because what if you want to record Linux based web development videos?
Anyways, all of this is solved by Windows right now with the Windows Subsystem for Linux. I can happily play games, record videos, process audio, run Photoshop and do full time Linux based web development (with Docker too) all from a single computer running Windows 10. No VMs or dual booting required, and it's really fast.
Yep, but for most web / app development use cases that's really all you need.
For me, I'm more interested in what I can do with the computer I purchased. WSL on Windows 10 gives me the ability to feel like I'm running both Windows and Linux together.
If I could choose to run native Linux I would, but right now that's impossible because Linux alone isn't suitable for the programs I run.
- Needlessly complex UI APIs (e.g. X Window System)
- Fragmentation
- Lack of a singular UI vision
- Bad UI design, bad UX
- Lack of accessibility support
- Complex interfaces designed for 1% of users
I could go on...
The only successful UNIX interfaces dropped X Window, dropped most of the community's ideas and APIs, and started afresh. Look at Quartz (Apple), ChromeOS (Google), and Android (Google). They're much simpler at every layer, have a singular vision, and designed for normal users rather than by programmers for programmers.
But no doubt this thread will somehow find a way to blame Microsoft as is the tired song of the Linux community.
> The only successful UNIX interfaces dropped X Window, dropped most of the community's ideas and APIs, and started afresh. Look at Quartz (Apple), ChromeOS (Google), and Android (Google). They're much simpler at every layer, have a singular vision, and designed for normal users rather than by programmers for programmers.
The above mentioned Unix interfaces were successful not because they dropped X or started fresh but because they were promoted by huge companies with big budgets that could afford to impose on what hardware you run the modified GUI.
>Please point me at a distro that has a reliable, complete "app store". E.g. installation never randomly fails
Are you referring to GUI frontends for distro package managers [0]? The CLI equivalents are as close to never failing as they can get on the distros I use (~0.1% of upgrades require manually editing or merging a new config file, or something of that nature). I wish Windows was that reliable in installing/updating applications.
[0] As an aside, I dont see any real user-demand for these. They seem about as desirable about the macOS store or the Microsoft Store -- just about no one wants or uses them. Trying to shoehorn in smartphone style features into desktop OS' generally hasnt been done well, or received well.
>>...designed for normal users rather than by programmers for programmers
This is the crux of the issue. The Linux ecosystem philosophy is rooted in choice. Normal users don't want and/or need that much choice.
Average Joe doesn't care what an operating system stands for, or how involved the developer community is, or how customization a system is. They need a spreadsheet/internet browser/email machine that can run some misc. business software, but most importantly they need something that just works.
For all of the benefits of using Linux, the one thing it has never nailed down is intuitiveness. Say what you want about the (many) flaws of Windows, but you can't deny that one of the easiest out-of-the-box-this-thing-just-works experiences. It's also the same experience every single time you use a Windows machine.
Try explaining the difference between Arch, Ubunutu, and Debian to a normal consumer and their eyes glaze over before you even begin.
> It's also the same experience every single time you use a Windows machine.
Recently I helped a small company migrate their PCs from Windows 7 to Windows 10. Trust me, it is not the same experience at all for the end users. They (the users) will get used to the new interface and way of interacting with the OS not because it is more intuitive but because they will use it and gain experience with it.
I think the mistake is assuming that software can be intuitive. I think the correct model is that it's more like language. You memorize a few fundamental concepts and then you amass a catalog of rote steps for accomplishing your goals. Then there will be a moment where it all clicks and you realize you're fluent enough for your purposes and can understand the unfamiliar in the context of what you already know.
Going from Windows 7 -> 10 is like going from English to Scottish. The grammar is mostly the same but a lot of the words and phrases are different.
That actually doesn't happen. You make it sound like there are straight up random ads.
You install Windows 10 and there are shortcuts to popular Windows store apps that you can right click and remove.
Not any different than installing, it was either Fedora or Debian, I think Fedora, and getting 'ads' for apps.
It's still pretty annoying though. And even if you disable those ads in the settings, it seems like the preference randomly gets switched back on every other time you update windows
It's been a few releases since I used fedora, but I don't recall ever seeing any kind of ads in the apps menu... and the vast majority of linux distros don't have any of that kind of garbage
Yeah not
straight up random ads, just promotions for random apps, auto installing some random games, random promotions in notification area and then OneDrive and Office 365 ads in File Explorer. Totally and honestly like in Debian and Fedora I swear.
> Normal users don't want and/or need that much choice.
No need to take it. That's why ubuntu is a popular choice.
> Say what you want about the (many) flaws of Windows, but you can't deny that one of the easiest out-of-the-box-this-thing-just-works experiences.
Except when it doesn't install the right drivers(compared to distros like manjaro) and when you get a crappy browser by default or when the menu just crashes or fails to find what is certainly there. Or when you need to suspend your work because it's Update Time Like it or Not™. It's definitely not the best out-of-the-box experience, but the one which is the most advertized with the most misc software.
> Try explaining the difference between Arch, Ubunutu, and Debian to a normal consumer and their eyes glaze over before you even begin.
That's not true. Their main differences are how they handle software releases, install/update software and how you install them. If you're not a complete digital analphabet you'll understand such easy concepts.
I stopped rooting for Ubuntu to win the casual user, when they moved the caption buttons from right to left, and deliberately didn't provide an option in the UI to turn it back.
You may think it's trivial, but it showed attitude that was, in my opinion, totally user hostile. Even Microsoft wouldn't go that far.
Oh, then what happened when they removed the good old menu and added a tiled one which is hated by the majority of their users? They needed to readd the old one in some form in the latest version.
Have you ever tried to debug a wi-fi issue? I had a Windows box that completely refused to connect to my home wi-fi. We never figured that out and corporate had to issue a new laptop for my wife to work from home. The second one worked. Nobody ever figured out what the problem with the first one was.
1 - Do windows have better backwards compatibility? Not according to my experience. For example plenty of old games run better with linux+wine than with new windows versions.
2 - X is not a UI API, Qt and GTK+ are. You're thinking about the graphics server which's not any better on windows(better isolation, maybe?).
3. Why is choice a bad thing? Even if fragmentation is a drawback it's not an important one.
4. Singular UI vision is the worst - just look at how clunky are all windows UIs. They're needlessly complex and uncustomizable. They also assume that their users are stupid but they aren't. I like nice and user-friendly UIs like KDE and cinnamon and clever UIs like i3 and awesomewm. I've installed linux for many non-techie users and they quickly learned how to use their desktops - and for my surprise they started to prefer using the terminal over the software center.
5. Not sure how windows is better there. Maybe you got used to it.
6. There IS accessibility support but not perfect.
Please, go on. But in the reality the actual reasons are these:
1. Regular users(or people in general) don't like change.
2. Missing apps: adobe suite, ms office, specialized apps(at schools and offices) and the most hyped games.
3. ms has far better marketing and makes deals with governments, schools, universities and hardware vendors/sellers.
1 - absolutely. You have high chances that a program that was written 20 years ago still works with Windows 10. Games might be an exception, but usually OpenGL or DX games work too.
This all sounds plausible, but I actually don't buy any of it.
An example anecdote: we gave our technophobic MD a desktop that had been used by a previous sysadmin add a temporary machine while he was waiting for a new Windows one. It was running Maté on Mint. He never noticed it wasn't Windows.
The reason the Linux Desktop hasn't happened is multifaceted (as you contend) but by far the biggest factor is OEMs. Normal users don't know/care what an OS is, so they're certainly not going to install one.
If you're contending that usability is a factor, look at Windows 8.0 or early Androids. There was plenty of complaints about both, mostly valid imo, but they still got a lot more new users than traditional Linuxes. Because people don't download OSes, they buy devices. And if they get stuck with one that's less than usable, they just stay stuck, and maybe get a relative to help. They don't switch.
All the reasons you listed are valid and true criticisms, but the above makes them moot.
The idea that fixing X Windows' complexities or unifying the community on a focused UI/UX vision will popularise the Linux Desktop is hopelessly naïve. You won't get far without a device manufacturing operation and billions of dollars.
I dont blame Microsoft, but yeah, they are a big reason desktop Linux failed: they just have a user friendlier OS, just like Apple.
I've been using Linux for over 10 years at home, but man, all those issues, it's crazy. And every forum has the same answer to all your problems: just enter sudo... into your console.
For me as a more experienced user this might not be a problem (although I'm getting tired of it) but for normal users this doesn't work at al.
They see a GUI so they want to fix things via the GUI. And ofcourse they don't want to fix things at all.
I have my reasons to stay at Linux but it's no fun that sometimes sleep doesn't work, every update Cuda support is broken and so on.
Christian in the OP post actually tries to blame MS for aggressively discounting Windows which denied market to completely free Linux desktop. "Microsoft came running in offering next to free Windows licensing to get people to stay put." so people choose "next to free" instead of "completely free" exactly why?
Also he doesn't mention any MS progress in software and moving from dark side to the good in the last decade.
> so people choose "next to free" instead of "completely free" exactly why?
I mean I am not one to bash Microsoft out of principle, but this is easy to understand - people choose Windows because that's what everyone is already familiar with.
The battle over the desktop space is over, and for the same reason Microsoft couldn't gain any traction in the mobile segment.
> Look at Quartz (Apple), ChromeOS (Google), and Android (Google).
Really good point. In my "last mile" comment I failed to address these success stories, but the two points are pretty complementary. MacOS abandoned Linux entirely. Android abandoned most of it - kept a lot of the system bits but threw away practically all of the bits a user (or even a typical developer) would see. ChromeOS is the closest to a real Linux desktop, and even it's changed quite a bit. I have a second-gen Chromebook Pixel laptop and I love the fact that I can use it both as a turnkey web-browsing appliance and as a real Linux development machine simultaneously (via crouton). But that only happened because Google invested millions in crossing that "last mile" for their own users. Many millions if you include all the money they've poured into Chrome and Google Docs and other things without which Chromebooks wouldn't be usable for most people.
I guess I should amend my point to say that native app based desktop Linux will always succumb to the last-mile problem. The very freedom that lets anyone develop whatever they want also means there will be regression to the mean when it comes to quality - and the mean just isn't good enough. Someone has to pay to raise that standard, and anyone who's paying won't pay for random half-finished crap. An integrated, polished system is the only kind of desktop the market will support.
From a workstation point of view this whole thing looks completely inverted. All the polished commercial offerings are moving farther and farther away from the power user. For those linux/freebsd/openbsd seem much better.
Graphical workstations, where the development environment was the genesis of modern IDEs, and the CLI was a REPL integrated with a live debugger, into the whole OS.
Think Smalltalk, Lisp Machines, Alto with its Star OS and XDE developers environment.
To actually provide better links I need my notes, but can leave you with the computer museum one.
I feel like Ubuntu had the opportunity to help the Linux desktop gain more traction. However, they got side tracked from helping to polish existing open source projects and started messing about reimplementing low-level wheels all over the place.
I don't think a Linux desktop would have rivalled MS but it could have made more gains than it has.
I've been using a Linux desktop for years (much to my wife's disapproval). I don't believe any of these things are a the biggest reason.
Let's look a Linux success stories
1) Android. Perhaps this single biggest example of Linux success.
2) Internet of Things, Raspberry Pi, micro PCs. Linux runs the generic micro PC appliances fairly well.
3) Chromebooks. Not a big market but a decent alternative to Macs and Windows mini laptops.
In summary I would say its consumer market adoption. As mentioned already the desktop is suffering. It's the appetite of the market that is going to drive adoption. The Linux desktop still hasn't reach a critical mass that it can replace a Windows or Mac with the consumer not noticing. Once you reach that point that an average consumer will not notice a difference then you will see a big push.
I believe Google has a big chance to make this happen. If they can get their Google SaaS office suite seamless and adopted universally than I can see Linux making a big push into laptops and notebook devices.
Android is all about Java, Google could replace Linux by *BSD or their future Fucshia and hardly anyone would notice.
ChromeBooks are all about ChromeOS, that is what average Joe and Jane buy them. For a web browser manager experience. They couldn't care less how their browser instances are managed.
Obviously, there's polish, which is undeniably lacking in every corner of the linux desktop experience.
But even if it were polished, I think the phantom linux desktop is just another manifestation of a programmer looking at instagram and thinking, "what's the big deal? I could make this"
Sure, I have no doubt, but it's missing the other 90% of the magic that gets a significant slice of the population on board. It's more than checking the appropriate boxes. It requires much more effort, and requires much more of a centralized figure, than checking the boxes.
This is why, among technical people, who _do_ only require that something checks boxes, linux on the server is a smash hit.
I'm sure this might be an unpopular opinion here, but my experience has been that when you do normal business collaboration - WebEx, etc. - in Linux, you spend more time fighting to make things work than you do actually working. Chrome and the proliferation of webapps has helped this somewhat, but it always ends up being something.
Scott Lowe did a pretty interesting series of blog posts [1] on it and ultimately ended up back on a Mac because it just killed his productivity and called it "death by a thousand cuts". This mirrors my experience. I want to be on Linux and there's a lot to love, but it's just not..stable? evolved? polished? (not sure what the right word is) enough to be a daily driver for most non-development oriented people.
I said in another reply that I ignore these things because I "know what I signed up for", which is true. In fact, if you whine about a UI problem in linux and don't know how to fix it, the replies often have that sentiment as an undertone.
I do know what I signed up for, and these missing desktop users rightly suspect what they're signing up for if they were to switch.
One of the developers at a client uses Ubuntu desktop (I use macOS). The issues at her end with voip calls have been crazy. We've been through Skype, Discord and now Slack. Nothing has been reliable.
Edit, because I'm sick of "i can save the reputation of Linux" responses:
Its never a network issue its never even a protocol issue. Its a "application detects no input from microphone" issue.
So please stop telling me how its everything except a shitty desktop experience.
Try Telegram, Linphone or a WebRTC service. Skype is truly bad on linux but Discord served me and my friends well so, check your developer's internet connection.
But a lousy internet connection will certainly make VOIP unreliable.
I would ditto the recomendation to try SIP-based or web-based VOIP. I've never had an issue on Linux. Haven't used Skype, Discord, or Slack, so can't comment there.
The problem isnt that the quality is poor. The problem is that the client application fails to recognise microphone input.
The calls are fine if it works, but when it doesn't its a one way call.
Again: this whole thread is why linux on desktop is a fucking fantasy. Any problem and the mere idea that its because of unreliable software is avoided like a hooker with an eye patch, lest people have to recognise "yeah this shit just doesn't work well"
I'm a Linux Desktop user. IMO, the thousand cuts can be boiled down to some few major apps not being natively available for Linux, namely Office, incl Outlook, and Photoshop, Autocad, and AAA games. And the eventual niche Windows only app - but for those you could use a VM like Apple users do.
When using a stable distro like Mint in my laptop, everything just worked and the desktop UX is quite similar to what you get in Windows.
The average user couldnt Care less about the OS nowadays. They just want their apps running.
For corporate OTOH, Windows desktop is much simpler to support. Linux, or Apple, has nothing not even remotely close.
It's Office, silly. LibreOffice is, in a vacuum, a fine collection of software, but stacked up against the juggernaut of the MS Office suite, it can't compare. They're continually playing catch-up, since their mandate is to be compatible with Office, with a fraction of the resources, and always having to react to maintain compatibility. Likewise, businesses run on Outlook and Exchange, to an overwhelming degree; most of the serious competitors have faded away at this point - even five years ago, there were still a lot of Domino shops, but IBM has divested their software divisions, and essentially made that stack abandonware, and so everyone under the sun is moving to Office 365.
The best (most productive, least off-the-wall) I can do year after year seems to be to run an XFCE desktop. But its not polished (although the icon set got refreshed recently which is nice.)
Poor UX for me seems to boil down to off-the-wall or geek fad UX decisions the major desktop managers make with every new version that drive me back to XFCE. Linux vendors, please focus on productivity and less on glitz/chasing the unified mobile & desktop UX dragon. Please?!
Also, I can't pin exactly why I think this is, but linux desktop managers always feel bolted on rather than integral to the experience - it doesn't strike me as valued by the operating system vendor as much as the underlying kernel. Maybe its an inconsistent frame rate thing or trackpad funkiness on my underpowered HP laptop that has me so negative on the Linux feel.
What is missing is that on the Linux desktop it does not simply “just work”. You may not feel it anymore after you used Linux for a while. But if you leave Linux for a year or two and come back you will see tons of small things that are outright broken or where you need to fiddle with them to get them to work.
For me its lack of desktop applications that may or may not work on the linux distro I decide to use. I the lack of "it just works" is a huge problem. I own a mac, and if I see an application supports apple I can be fairly certain it works with my machine (hopefully my OS version) and it will be easy to install and run.
Its fragmentation (so many distos...) that makes the app sales market quite small so businesses can't (won't) make a go of making desktop apps.
Use linux servers everyday, its the desktop experience which was never really polished.
I do want my next notebook to be a linux box though..
These articles tend to focus on the technical reasons Linux has not been adopted, and I think it is worth also exploring the business issues (I think Linux desktops are mature enough technically that most average users can use it just as easily as Windows).
How many computers ship with Linux installed from major distributors (i.e. places where the average consumer or business would buy from)? Dell has one model but you have to look hard to find it. Most consumers and businesses think of the desktop world as having two options: windows or mac, with windows as the default. No one is out there marketing and selling Linux desktop machines. That's why they aren't out there.
The one exception is ChromeOS. It has actually taken off and is widely used in schools (and anecdotally at least becoming a popular option for people to install for their kids or parents). ChromeOS is heavily marketed by Google, and there are lots of Chromebooks marketed and sold by major distributors.
I don't consider it a true "Linux Desktop" because it isn't a full-featured OS, but the adoption nonetheless provides a contrasting case study that demonstrates the importance of marketing and distribution that the full-featured desktops lack.
As a non-IT professional, I do not see the reasons why I did not switch personally despite being increasing uncomfortable with Windows 10 and thinking that I will need to do that one day.
1. Poor driver support (it is mentioned last but I think it's a major problem). It is a lottery to know if you install linux on a laptop which functionality will work or not. Even on a dell laptop that came with linux pre-installed I ended up with some functionalities not working correctly.
2. Non self-discoverability of the OS. Outside of very basic tasks, you very quickly end up writing command lines, much earlier than on Windows that gives you a UI for quite sophisticated things. People who code every day don't realise how difficult it is for someone who never coded to get into it. It is the same for someone who doesn't use CLI extensively. There is so much to learn before being to do simple things that I can do in a few clicks on windows that this is a heavy investment. An investment I will probably do one day but that I do not have the brain/time budget to make in the short term. I appreciate the power of being able to do everything with command line (and to automate everything). However don't underestimate the friction it creates when you need to do something like 3-10 times a year, not often to learn the command by heart but often to be seriously annoyed every time you do it and spend a disproportionate amount of time. Not a problem for linux sysadmins who do that all day. But if the target is 10% market share, it needs to be usable by more than sysadmins.
Well, GNOME 3's lack of consistency and complete disregard for established UX practices didn't help. Client side decorations are annoying and hurt discoverability. Just give me a normal menubar and toolbar without fancy animations and buttons that aren't the size of a postage stamps. GNOME 2 and Windows XP/7 were the pinnacle of usable interfaces. It's all been downhill from there.
I switched from Linux (KDE) to Mac about 5 years ago, with some attempts to switch back.
I recently got a laptop with Windows for some gaming for the kids, and I feel Windows is actually less polished than Linux with KDE. Restarts, weird issues with multiple users, sudden switches between Modern UI and something that looks the same as the Windows 2000 I last used.
I really wonder when Windows will be usable enough for home users...
Well, failing to deliver a good product didn't really help neither their business model, nor the Year of the Linux Desktop.
Polishing and repackaging existing software seems like a successful strategy, but it can never make the Linux Desktop happen. On the other hand throwing it all away and starting from scratch can, but needs exceptionally right people to achieve. As far as I know no company like this exists today.
Because Linux is a kernel? It's just one piece in an ecosystem.
It would make more sense to ask why the Year of Gnome Desktop hasn't happened. And the answer is easy if you compare the budget that Apple or Microsoft has to create an integrated environment. Even with free helping hands, I bet that RedHat is nowhere near the number of bodies that big corp can throw at it.
The experience is dismal, even basic crap still doesn't work. I installed mint a couple of months ago (clean install), right after booting, the mouse doesn't work. THE PS2 MOUSE DOESN'T WORK!!!
It's fine for servers, but for a desktop, you have to be masochistic to want to use it, unless the only thing you use it for is to build software.
For me it's pretty simple; as a front-end developer who needs to run Photoshop, the latest, and in a stable way (Wine is not stable nor does it run the latest Photoshop on Linux) I had two choices, none of which were Linux. Windows and MacOS, now since I don't really do any gaming, but I do need Bash and Windows design decisions are questionable at best, the fact that you can't turn off updates without command-line hacking or other absurd stuff (and that updates often break drivers) I decided to go with a Mac. It's not perfect, of course, nothing is, but I'm happy and I don't see myself ever going on Linux because
- Poor app ecosystem
- You tell me "Use GIMP", but with virtually no PSD support I say no and tell that to all the designers that hand me out PSD-s to cut and they will tell you that's never happening
- Poor design decisions
- Poor driver support
- I don't want to hack in the command-line a full day to set up the thing, like I've so far had to do when trying to use Linux
Of course, this is all subjective and I by no means am talking for everyone else, but I'm quite sure my issues with Linux align with someone else's here as well.
115 comments
[ 1.8 ms ] story [ 289 ms ] threadIn many domains, there's an early period of fermentation and experimentation. Famously, there were hundreds of American car companies around the end of the 19th and early 20th centuries. Today there are three and prior to Tesla the the last successful one was founded decades ago. And it remains to be seen if Tesla is in it for the long term.
In phones, we have Apple and Android and that's likely it. Path dependence.
Lots of people are excited about AR/VR because those fields seem relatively open. But if they turn out to be important, they too are likely to have two big players.
GNOME on Fedora is more consistent and polished than Windows 10.
Then for good measure threw on the space wasting task bar from MacOS. Oh, and then in Ubuntu the window controls had to be on the wrong side too, obviously.
It's basically the anti-UX.
From time to time I revisit the GNOME dektop to assess if it's a viable alternative to my KDE.
What I still see is random, incoherent apps, meshed together, with the worst possible default values set, for each one of them.
Also the idea that half-baked and ultimately broken extensions, could provide basic functionality that should already be present in the first place, didn't do them any favors. Even the plugin/extension installation mechanism is broken!!
The general lack of configurability doesn't help either.
Desktop Linux on the whole is kind of annoying because on each new install, I will inevitably end up spending hours just to get everything working properly again.
The author lists all the reasons traditional desktop linux failed and keeps failing, but the short form of the argument can be summed up like this:
Linus Torvalds, who knows a bit about Linux, also makes his own desktop app (perhaps not as famous as the kernel and git), a scuba log app. He would like to release the damn thing built for Mac, Windows and Linux. But can he? Of course not. He releases it compiled for Windows and Mac, and then as source for Linux.
Linux on the desktop might succeed when Linux has a desktop. As in, at the OS level, a developer can make assumptions about how the clipboard, resolution scaling, sound, notifications, application install/uninstall etc works. Until then, no.
https://plus.google.com/+LinusTorvalds/posts/WyrATKUnmrS
https://m.youtube.com/watch?v=5PmHRSeA2c8
There is hope however. Modern application containers like Flatpak aim to bridge the differences between Linux OSes by being self contained.
On desktop you need to be able to install and uninstall apps by the dozen every week and never ever worry that your “system” can’t run the app, or that the app will ruin it for some other app. This requires duplicating libs or statically compiling. However package systems tend to dislike packages that include a private copy of 100 libs. That’s broken.
Flatpak is exactly what’s needed. And it needs to grow to encompass APIs on the same level as Windows and OS X (e.g good notification apis, dpi change events for multi monitor across all window managers etc etc). Modern desktop APIs are pretty intricate on win/mac, so Linux needs to catch up. The problem with catching up is that design by committee is never quick to drop old cruft, unite on standards etc. This is why I think Mozilla, Valve, Google etc has a better chance of making the successful Linux desktop, than the OSS community has. Just like the OSS community won’t ever make a AAA game.
Packaging third party libraries with your binary is just going to lead to a race to see which fucks a user first: running out of disk space or that one app with an unpatched TLS library that allows RCE for an attacker.
It’s important that components that do have significant attack surface such as TLS are provided and patched by the OS.
The shared libraries of e.g windows come in pretty well defined tiers. Things that the OS provides, various optional runtimes that must or can be shared such as msvcrt and then there is not much else. No app is going to install a “system wide” image decoder or other utility lib (In the past, it was a thing to dump a dll into the OS folder, often overwriting older ones, which is where the term “DLL hell” comes from. Luckily that doesn’t happen these days).
If someone with major resources announced a focused effort to enter the desktop OS space right now, I wouldn't put their odds in a good place. Why would an unfocused effort work?
I cringe at the idea of Linux itself containing a desktop, rather than distros adding one, so if that's the solution hopefully it keeps not being its year.
EDIT: clarification
Flatpack is an example of such an effort, but it needs to be more ambitious and preferably more “official”.
Flatpak isn't about APIs. It's about making easy-to-use application bundles.
The needed outcome is for freedesktop to have an application distrubution story - which is effectively the same as if flatpak had a larged application interoperability idea. The fact that this is two separate efforts highlights the problem - you need everything to be a coherent whole.
A combination of a larger and more modern desktop api compliance effort PLUS an app distribution effort like for example flatpak, would be perfect. E.g. "here is how you build an app for linux desktop v5". You include the right headers linux_desktop_sound.h, linux_desktop_dpi_notifications.h, linux_desktop_dpi_scaling_events.h (etc.). I know in the end an API on top just makes you have N+1 apis - but that's the reason this whole thing needs more dictator/ivory tower. It shouldnt' be be called "freedesktop-flatpack", or "somenewname" it should be called "linux desktop apps v1.0". This is probably the hardest part: getting the politics together. For desktop to succeed you need to have an ivory tower somewhere, in the middle of the bazaar.
Linux kernel is pretty much hidden from userland, including C and C++ code.
Google can easily replace Linux with any kernel that offers the POSIX subset required by Android. Everything else are just libc, libc++ and Android specific native libraries.
Only OEMs writting Android drivers would notice the difference.
Can’t see how it would be bad to have it on top of a replaceable kernel or why it would be good to expose things that would make it harder to do so.
To rephrase the topic to a more relevant form “when will there be a FOSS desktop OS in widespread use?”.
> Of course what happened here was that Steve Jobs returned to Apple and we suddenly had MacOSX come onto the scene taking at least some air out of the Linux Desktop space.
I really agree with that: if every engineer I know who uses a Mac "because Bash" would use Linux instead, we would have arrived at a decent Linux desktop market-share by now. Kudos Apple.
In saying that, as a desktop Linux user I really don't mind being part of a small user community. I would never switch to MacOSX as it is not (fully) open source, and Windows is nice for running Steam for gaming.
That might have been the case 10 years ago, but it isn't now. Desktop OS dissatisfaction is at an all time high in both the Windows and Apple camps, among both users and developers. If a linux distro got its act together it could steal the show. But, to do that would require an overhaul to linux similar to what Next did to create NextStep.
In the case of web apps, developers get paid to go the last mile - either by an employer or via the market. In the case of Linux server software they also get paid; in this case a Red Hat salary is the most common form. For Linux desktop software, very few get paid. Not nearly enough. OpenOffice/LibreOffice in particular needs and has always needed a ton of work, and almost nobody's paying for it. So it has always been a total tire fire. Random crashes, which then leave a document in a "needs recovery" state permanently no matter how many times it has already been recovered. Formatting and conversion glitches. Features and options that are hard to use even if you can find them among the smoldering dung-pile of other features and options that nobody anywhere has used for years. Staggering memory abuse bogging down the whole system. I'm sure the devs (at least some of them) would love to fix these things, but it's going to be really hard work - often more political than technical in nature - and nobody's paying them enough to go through that misery so they do more rewarding things instead. The result is software that will always lag behind its proprietary competitors in terms of appeal to users - far enough behind that people will actually pay for the difference.
If you want to compete effectively in a market, somebody has to be paid for crossing that last mile, and that means somebody has to do the paying. Nobody is.
And then there are the missing apps. Want a really good, free git GUI client? Sorry, not on Linux. It's git FFS, Linux should have great dev tools. Same with file managers.
I used to be an Amiga user, I'm a C developer and like tinkering. But I also want something that just works for the basics. Sad to say but Windows, for all its faults, does work. Visual Studio does work. And all the open source apps I use like Kicad are on Windows.
I really want to move to Linux, but it's too much work to make it work. These days I have better things to do with my computer.
It happens just rarely enough to make me feel insane, but it never happens on my work windows machine or my mac. Maybe I'm subconsciously sabotaging my copies on linux.
This is the most bizarre thing I encounter, but it's missing the hundred other tiny warts I ignore because I "know what I signed up for" using linux as my daily driver.
GitKraken?
Since both are Debian derivatives, I imagine that both include synclient(1). No, it's not a GUI — but that's better, because you can just put the right command into your login scripts, and you know that it'll execute, and never get deleted because a desktop environment decided to change its config file format.
> Want a really good, free git GUI client? Sorry, not on Linux.
Magit is awesome.
> Sad to say but Windows, for all its faults, does work.
I have a couple of Windows machines, and I don't feel that they work. Swallowed keystrokes & clicks, ads — no thank you!
You just lost 99% of the userbase.
Also, the examples everyone is sure to cite in this thread where a unix is used by the general population is just an example of some megacorp stepping up and owning the last mile.
Here me out for a second. Let's ignore how Windows 10 spies on you and other side topics.
The real situation is this:
You're a developer who wants to run various Unix / Linux tools. This could be anything from simple tools like grep, to entire development stacks (ruby, python, postgresql, etc.). It could even be graphical tools like Sublime Text.
For that, you could just install any flavor of Linux but it's never that simple.
Often times with web development you're also dealing with images, so now you need a nice image editor. Sure GIMP exists, but it's not in the same league as Photoshop, sorry. Sure, you could run a Windows VM inside of Linux but it's also not as simple as that too.
A lot of us do other things with our computer besides web development. This varies from person to person. Personally I like to play games on occasion and a lot of games won't run on Linux, don't work with Wine and run terribly bad inside of a VM. Dual booting is also an awful user experience.
Perhaps you're interested in creating videos too, or record podcasts, etc.. The audio and video tools on Linux are just no where near tools like Camtasia and Screenflow. Unlike GIMP, there really isn't even a suitable audio or video solution on Linux, and audio requires extremely low latency so you can't run Camtasia in a VM. Dual booting also isn't an option because what if you want to record Linux based web development videos?
Anyways, all of this is solved by Windows right now with the Windows Subsystem for Linux. I can happily play games, record videos, process audio, run Photoshop and do full time Linux based web development (with Docker too) all from a single computer running Windows 10. No VMs or dual booting required, and it's really fast.
If anyone is curious, here's how you can set all of that up: https://nickjanetakis.com/blog/using-wsl-and-mobaxterm-to-cr...
Finally the year of GNU on the Desktop?
For me, I'm more interested in what I can do with the computer I purchased. WSL on Windows 10 gives me the ability to feel like I'm running both Windows and Linux together.
If I could choose to run native Linux I would, but right now that's impossible because Linux alone isn't suitable for the programs I run.
- Needlessly complex UI APIs (e.g. X Window System)
- Fragmentation
- Lack of a singular UI vision
- Bad UI design, bad UX
- Lack of accessibility support
- Complex interfaces designed for 1% of users
I could go on...
The only successful UNIX interfaces dropped X Window, dropped most of the community's ideas and APIs, and started afresh. Look at Quartz (Apple), ChromeOS (Google), and Android (Google). They're much simpler at every layer, have a singular vision, and designed for normal users rather than by programmers for programmers.
But no doubt this thread will somehow find a way to blame Microsoft as is the tired song of the Linux community.
The above mentioned Unix interfaces were successful not because they dropped X or started fresh but because they were promoted by huge companies with big budgets that could afford to impose on what hardware you run the modified GUI.
That's a feature all three nail. apt-get is great, so it's not a hardware problem, but I have yet to come across a GUI that is at all consistent.
Are you referring to GUI frontends for distro package managers [0]? The CLI equivalents are as close to never failing as they can get on the distros I use (~0.1% of upgrades require manually editing or merging a new config file, or something of that nature). I wish Windows was that reliable in installing/updating applications.
[0] As an aside, I dont see any real user-demand for these. They seem about as desirable about the macOS store or the Microsoft Store -- just about no one wants or uses them. Trying to shoehorn in smartphone style features into desktop OS' generally hasnt been done well, or received well.
This is the crux of the issue. The Linux ecosystem philosophy is rooted in choice. Normal users don't want and/or need that much choice.
Average Joe doesn't care what an operating system stands for, or how involved the developer community is, or how customization a system is. They need a spreadsheet/internet browser/email machine that can run some misc. business software, but most importantly they need something that just works.
For all of the benefits of using Linux, the one thing it has never nailed down is intuitiveness. Say what you want about the (many) flaws of Windows, but you can't deny that one of the easiest out-of-the-box-this-thing-just-works experiences. It's also the same experience every single time you use a Windows machine.
Try explaining the difference between Arch, Ubunutu, and Debian to a normal consumer and their eyes glaze over before you even begin.
Recently I helped a small company migrate their PCs from Windows 7 to Windows 10. Trust me, it is not the same experience at all for the end users. They (the users) will get used to the new interface and way of interacting with the OS not because it is more intuitive but because they will use it and gain experience with it.
Going from Windows 7 -> 10 is like going from English to Scottish. The grammar is mostly the same but a lot of the words and phrases are different.
Microsoft sabotaged their main platform. It would have a major opportunity for other OS.
It's been a few releases since I used fedora, but I don't recall ever seeing any kind of ads in the apps menu... and the vast majority of linux distros don't have any of that kind of garbage
-
https://www.theverge.com/2017/3/17/14956540/microsoft-window...
No need to take it. That's why ubuntu is a popular choice.
> Say what you want about the (many) flaws of Windows, but you can't deny that one of the easiest out-of-the-box-this-thing-just-works experiences.
Except when it doesn't install the right drivers(compared to distros like manjaro) and when you get a crappy browser by default or when the menu just crashes or fails to find what is certainly there. Or when you need to suspend your work because it's Update Time Like it or Not™. It's definitely not the best out-of-the-box experience, but the one which is the most advertized with the most misc software.
> Try explaining the difference between Arch, Ubunutu, and Debian to a normal consumer and their eyes glaze over before you even begin.
That's not true. Their main differences are how they handle software releases, install/update software and how you install them. If you're not a complete digital analphabet you'll understand such easy concepts.
I stopped rooting for Ubuntu to win the casual user, when they moved the caption buttons from right to left, and deliberately didn't provide an option in the UI to turn it back.
You may think it's trivial, but it showed attitude that was, in my opinion, totally user hostile. Even Microsoft wouldn't go that far.
Have you ever tried to debug a wi-fi issue? I had a Windows box that completely refused to connect to my home wi-fi. We never figured that out and corporate had to issue a new laptop for my wife to work from home. The second one worked. Nobody ever figured out what the problem with the first one was.
2 - X is not a UI API, Qt and GTK+ are. You're thinking about the graphics server which's not any better on windows(better isolation, maybe?).
3. Why is choice a bad thing? Even if fragmentation is a drawback it's not an important one.
4. Singular UI vision is the worst - just look at how clunky are all windows UIs. They're needlessly complex and uncustomizable. They also assume that their users are stupid but they aren't. I like nice and user-friendly UIs like KDE and cinnamon and clever UIs like i3 and awesomewm. I've installed linux for many non-techie users and they quickly learned how to use their desktops - and for my surprise they started to prefer using the terminal over the software center.
5. Not sure how windows is better there. Maybe you got used to it.
6. There IS accessibility support but not perfect.
Please, go on. But in the reality the actual reasons are these:
1. Regular users(or people in general) don't like change.
2. Missing apps: adobe suite, ms office, specialized apps(at schools and offices) and the most hyped games.
3. ms has far better marketing and makes deals with governments, schools, universities and hardware vendors/sellers.
An example anecdote: we gave our technophobic MD a desktop that had been used by a previous sysadmin add a temporary machine while he was waiting for a new Windows one. It was running Maté on Mint. He never noticed it wasn't Windows.
The reason the Linux Desktop hasn't happened is multifaceted (as you contend) but by far the biggest factor is OEMs. Normal users don't know/care what an OS is, so they're certainly not going to install one.
If you're contending that usability is a factor, look at Windows 8.0 or early Androids. There was plenty of complaints about both, mostly valid imo, but they still got a lot more new users than traditional Linuxes. Because people don't download OSes, they buy devices. And if they get stuck with one that's less than usable, they just stay stuck, and maybe get a relative to help. They don't switch.
All the reasons you listed are valid and true criticisms, but the above makes them moot.
The idea that fixing X Windows' complexities or unifying the community on a focused UI/UX vision will popularise the Linux Desktop is hopelessly naïve. You won't get far without a device manufacturing operation and billions of dollars.
I've been using Linux for over 10 years at home, but man, all those issues, it's crazy. And every forum has the same answer to all your problems: just enter sudo... into your console.
For me as a more experienced user this might not be a problem (although I'm getting tired of it) but for normal users this doesn't work at al.
They see a GUI so they want to fix things via the GUI. And ofcourse they don't want to fix things at all.
I have my reasons to stay at Linux but it's no fun that sometimes sleep doesn't work, every update Cuda support is broken and so on.
Also he doesn't mention any MS progress in software and moving from dark side to the good in the last decade.
I mean I am not one to bash Microsoft out of principle, but this is easy to understand - people choose Windows because that's what everyone is already familiar with.
The battle over the desktop space is over, and for the same reason Microsoft couldn't gain any traction in the mobile segment.
Really good point. In my "last mile" comment I failed to address these success stories, but the two points are pretty complementary. MacOS abandoned Linux entirely. Android abandoned most of it - kept a lot of the system bits but threw away practically all of the bits a user (or even a typical developer) would see. ChromeOS is the closest to a real Linux desktop, and even it's changed quite a bit. I have a second-gen Chromebook Pixel laptop and I love the fact that I can use it both as a turnkey web-browsing appliance and as a real Linux development machine simultaneously (via crouton). But that only happened because Google invested millions in crossing that "last mile" for their own users. Many millions if you include all the money they've poured into Chrome and Google Docs and other things without which Chromebooks wouldn't be usable for most people.
I guess I should amend my point to say that native app based desktop Linux will always succumb to the last-mile problem. The very freedom that lets anyone develop whatever they want also means there will be regression to the mean when it comes to quality - and the mean just isn't good enough. Someone has to pay to raise that standard, and anyone who's paying won't pay for random half-finished crap. An integrated, polished system is the only kind of desktop the market will support.
Graphical workstations, where the development environment was the genesis of modern IDEs, and the CLI was a REPL integrated with a live debugger, into the whole OS.
Think Smalltalk, Lisp Machines, Alto with its Star OS and XDE developers environment.
To actually provide better links I need my notes, but can leave you with the computer museum one.
http://www.computerhistory.org/revolution/input-output/14/34...
Many programmers seem to forget other programmers are users too.
Just because I am a programmer doesn't mean I have to endure software that thinks a PDP-11 coupled with twm experience is the climax of UI/UX.
I don't think a Linux desktop would have rivalled MS but it could have made more gains than it has.
Let's look a Linux success stories
1) Android. Perhaps this single biggest example of Linux success.
2) Internet of Things, Raspberry Pi, micro PCs. Linux runs the generic micro PC appliances fairly well.
3) Chromebooks. Not a big market but a decent alternative to Macs and Windows mini laptops.
In summary I would say its consumer market adoption. As mentioned already the desktop is suffering. It's the appetite of the market that is going to drive adoption. The Linux desktop still hasn't reach a critical mass that it can replace a Windows or Mac with the consumer not noticing. Once you reach that point that an average consumer will not notice a difference then you will see a big push.
I believe Google has a big chance to make this happen. If they can get their Google SaaS office suite seamless and adopted universally than I can see Linux making a big push into laptops and notebook devices.
ChromeBooks are all about ChromeOS, that is what average Joe and Jane buy them. For a web browser manager experience. They couldn't care less how their browser instances are managed.
IoT is by definition not a desktop.
But even if it were polished, I think the phantom linux desktop is just another manifestation of a programmer looking at instagram and thinking, "what's the big deal? I could make this"
Sure, I have no doubt, but it's missing the other 90% of the magic that gets a significant slice of the population on board. It's more than checking the appropriate boxes. It requires much more effort, and requires much more of a centralized figure, than checking the boxes.
This is why, among technical people, who _do_ only require that something checks boxes, linux on the server is a smash hit.
Scott Lowe did a pretty interesting series of blog posts [1] on it and ultimately ended up back on a Mac because it just killed his productivity and called it "death by a thousand cuts". This mirrors my experience. I want to be on Linux and there's a lot to love, but it's just not..stable? evolved? polished? (not sure what the right word is) enough to be a daily driver for most non-development oriented people.
[1] https://blog.scottlowe.org/2017/10/25/linux-migration-wrap-u...
I do know what I signed up for, and these missing desktop users rightly suspect what they're signing up for if they were to switch.
One of the developers at a client uses Ubuntu desktop (I use macOS). The issues at her end with voip calls have been crazy. We've been through Skype, Discord and now Slack. Nothing has been reliable.
Edit, because I'm sick of "i can save the reputation of Linux" responses:
Its never a network issue its never even a protocol issue. Its a "application detects no input from microphone" issue.
So please stop telling me how its everything except a shitty desktop experience.
I would ditto the recomendation to try SIP-based or web-based VOIP. I've never had an issue on Linux. Haven't used Skype, Discord, or Slack, so can't comment there.
The problem isnt that the quality is poor. The problem is that the client application fails to recognise microphone input.
The calls are fine if it works, but when it doesn't its a one way call.
Again: this whole thread is why linux on desktop is a fucking fantasy. Any problem and the mere idea that its because of unreliable software is avoided like a hooker with an eye patch, lest people have to recognise "yeah this shit just doesn't work well"
When using a stable distro like Mint in my laptop, everything just worked and the desktop UX is quite similar to what you get in Windows.
The average user couldnt Care less about the OS nowadays. They just want their apps running.
For corporate OTOH, Windows desktop is much simpler to support. Linux, or Apple, has nothing not even remotely close.
Poor UX for me seems to boil down to off-the-wall or geek fad UX decisions the major desktop managers make with every new version that drive me back to XFCE. Linux vendors, please focus on productivity and less on glitz/chasing the unified mobile & desktop UX dragon. Please?!
Also, I can't pin exactly why I think this is, but linux desktop managers always feel bolted on rather than integral to the experience - it doesn't strike me as valued by the operating system vendor as much as the underlying kernel. Maybe its an inconsistent frame rate thing or trackpad funkiness on my underpowered HP laptop that has me so negative on the Linux feel.
Its fragmentation (so many distos...) that makes the app sales market quite small so businesses can't (won't) make a go of making desktop apps.
Use linux servers everyday, its the desktop experience which was never really polished.
I do want my next notebook to be a linux box though..
How many computers ship with Linux installed from major distributors (i.e. places where the average consumer or business would buy from)? Dell has one model but you have to look hard to find it. Most consumers and businesses think of the desktop world as having two options: windows or mac, with windows as the default. No one is out there marketing and selling Linux desktop machines. That's why they aren't out there.
The one exception is ChromeOS. It has actually taken off and is widely used in schools (and anecdotally at least becoming a popular option for people to install for their kids or parents). ChromeOS is heavily marketed by Google, and there are lots of Chromebooks marketed and sold by major distributors.
I don't consider it a true "Linux Desktop" because it isn't a full-featured OS, but the adoption nonetheless provides a contrasting case study that demonstrates the importance of marketing and distribution that the full-featured desktops lack.
- Microsoft is pushing hard in the consumer space.
1. Poor driver support (it is mentioned last but I think it's a major problem). It is a lottery to know if you install linux on a laptop which functionality will work or not. Even on a dell laptop that came with linux pre-installed I ended up with some functionalities not working correctly.
2. Non self-discoverability of the OS. Outside of very basic tasks, you very quickly end up writing command lines, much earlier than on Windows that gives you a UI for quite sophisticated things. People who code every day don't realise how difficult it is for someone who never coded to get into it. It is the same for someone who doesn't use CLI extensively. There is so much to learn before being to do simple things that I can do in a few clicks on windows that this is a heavy investment. An investment I will probably do one day but that I do not have the brain/time budget to make in the short term. I appreciate the power of being able to do everything with command line (and to automate everything). However don't underestimate the friction it creates when you need to do something like 3-10 times a year, not often to learn the command by heart but often to be seriously annoyed every time you do it and spend a disproportionate amount of time. Not a problem for linux sysadmins who do that all day. But if the target is 10% market share, it needs to be usable by more than sysadmins.
I recently got a laptop with Windows for some gaming for the kids, and I feel Windows is actually less polished than Linux with KDE. Restarts, weird issues with multiple users, sudden switches between Modern UI and something that looks the same as the Windows 2000 I last used.
I really wonder when Windows will be usable enough for home users...
Well, failing to deliver a good product didn't really help neither their business model, nor the Year of the Linux Desktop.
Polishing and repackaging existing software seems like a successful strategy, but it can never make the Linux Desktop happen. On the other hand throwing it all away and starting from scratch can, but needs exceptionally right people to achieve. As far as I know no company like this exists today.
It would make more sense to ask why the Year of Gnome Desktop hasn't happened. And the answer is easy if you compare the budget that Apple or Microsoft has to create an integrated environment. Even with free helping hands, I bet that RedHat is nowhere near the number of bodies that big corp can throw at it.
It's fine for servers, but for a desktop, you have to be masochistic to want to use it, unless the only thing you use it for is to build software.
- Poor app ecosystem
- You tell me "Use GIMP", but with virtually no PSD support I say no and tell that to all the designers that hand me out PSD-s to cut and they will tell you that's never happening
- Poor design decisions
- Poor driver support
- I don't want to hack in the command-line a full day to set up the thing, like I've so far had to do when trying to use Linux
Of course, this is all subjective and I by no means am talking for everyone else, but I'm quite sure my issues with Linux align with someone else's here as well.