Hacker News new | ask | show | jobs
by ncol 2875 days ago
I can't agree. I work in enterprise Linux. We essentially make distributions, build systems, customized kernels etc. Linux, desktop Linux especially, is the worst of the big operating systems. It certainly has qualities, but if you make a table with all the different things to expect from an operating system and you look into each section without being too subjective Linux will come last overall. And I don't think it really is changing. Ever wondered why Ubuntu doesn't really seem to be getting better, mostly just shifting technologies around? Well, that is because it essentially reached the level that desktop Linux is at. Anything else is going to be going in the direction of something like Android and even that isn't necessarily up to the standard of the alternatives.

I would like to elaborate, but I think it is pretty futile to do so online, which is pretty telling in itself. One example that should challenge people view would be the ssh default story that is on the front page right now. Everything in Linux is pretty much like that if you dig deep enough. And while its competitors aren't perfect either, they are just far more consistent. Because that is a major selling point for them.

2 comments

> I work in enterprise Linux.

I don't see how you could even compare enterprise linux to home linux. Enterprise linux not only has a different userland (i.e. it's designed for LTS setups -- stability, not usability), but almost all enterprise places run 20 versions behind anyway. Not only that, but you're facing peculiarities of your setup that no sane home user is going to face in a billion years. The entire experience is different.

Go pick up Linux Mint's Cinnamon distribution, then see if you have the same complaints.

Linux Mint 18.3 is amazing. People should really try it out... I recently got a new Lenovo 120S, replaced its Windows 10S with Linux Mint and everything worked out-of-the-box. CPU @ 2-3%, RAM < 550MB on a 11.6" laptop for £129 with zero issues restored my faith on Linux as a viable desktop OS.
Of course my experience is different. If you want browse the web, do some development and stay within those confines it can work. But that has been true for probably at least a decade and is true for any other mainstream operating system as well. If that is what you want you should probably go with Chrome OS. But people usually expect to be able to do more than that.

Quality isn't an absolute measure. If you were to plot the security holes in the Linux kernel on a timeline you will most likely find that there is at least one the majority of the time. Security is essentially a percentage of how hard something is to discover and exploit. And you don't know what that percentage is until someone go looking.

The same is essentially true for the rest of the the operating system. Your average user can be perfectly happy e.g. clicking on random links and executing random code without apparent consequences. They will rave about Linux until reality catches up with them. Whether that is software conflicts, (lack of) backups, security or just maintenance in general. Usually at that point they get disillusioned and switch to something else. That is why we have the perpetual "year of the Linux desktop". Because people leave at a similar rate that they join.

By working in enterprise Linux I, involuntarily, get to see all this at different points in time. Not just from my own perspective as someone who has largely accepted these problems, or from the perspective of a user that is excited about Linux until they aren't. It is from this perspective, and because I know how hard it can be to do things that are outside of the default, that I say that the other big operating systems are better overall.

Ever wondered why Ubuntu doesn't really seem to be getting better, mostly just shifting technologies around?

Lack of either a near complete monopoly or a track record with dedicated, quality hardware. Throw in some questionable leadership decisions.

I don't think there's anything inherent to Linux that's unable to level up on the desktop, but the people best placed to shake things up are probably manufacturers who'd rather take a cut of a Windows license.

Windows has certainly been consistent in not offering an SSH client at all for a very long time.

I think there are things inherent to Linux that make it unable to ever reach the level of usability that MacOS provides.

On MacOS there is one way to do everything. Want to make a desktop GUI app? XCode has a project template for you. If you deviate from the APIs it suggests, you’ll get nothing but pain. On Linux, there is no default window API. You have to choose between Qt and GTK and <a billion other things>. That leads to fragmentation at the windowing system level. And just think, that fragmentation happens at all the other levels too.

Ubuntu has removed some of the fragmentation, since it’s so popular that you can just target Ubuntu and let your application fail on different configurations (or worse than failure - technically work, but require tons of tweaking in config files. Ugh).

However, Ubuntu has reached the point, IMO, where to provide better UX, they would need to start making Ubuntu actually incompatible with other Linux distros, or push the Linux community to adopt new standards that are better for desktop linux. A perfect example is Wayland: supposedly Wayland is a lot better than X11 for desktop purposes. It’s just too bad that Ubuntu can’t just break compat and blaze their own path here, or we would probably have a great Linux UX story already.

In my opinion most of the distributions are starting from the wrong end. They start with kernel, add package management, decide which services to run, which toolkit to use and then make some utility applications. Sometimes over a few different distributions. This mean not only that it is hard to convince people why they should change things, but that when you made the improvements you want you end up stalling since you haven't actually tackled the things that are lacking.

What you should do is the opposite. They should start with the toolkit, the network infrastructure, the management utilities or something else that would be the use-case. Once you have e.g. a solid toolkit that is attractive to developers and people start making good applications the rest is a matter of time. There is of course a reason why people don't do this, which is because it is hard. But hard is good, it is complexity that will kill you.

This is of course essentially why Android and Chrome OS is successful in their own right.

Interesting point, although I can't say I ever managed to get on with anything in XCode I've certainly had some Linux native desktop dev struggles in the distant past.

I'm a Java dev mostly, so perhaps I'm insulated from such things by the JVM. So long as I can run Chrom[e|ium], Eclipse, Docker and a terminal with a bash shell I'm pretty content. Even with that small list I've got issues with keyboard input lagging in Chrome on MacOS and Docker performance is poor relative to Linux. iTerm is a thing of beauty though.

I've got a box running Wayland on Arch. Can't say I've noticed any differences as a user from X11, I'll have to look them up and see what I'd missed.

Windows has certainly been consistent in not offering an SSH client at all for a very long time

That has changed. One of the Windows10 previews offers a client and server (Ed25519 only). I`ve been experimenting with it on WSL and it seems functional... time will tell whether or not it is secure.

Back to the point of the original discussion: having worked using OSX/MacOS, Windows10 and GNU/Linux in various combinations for the last couple of decades I honestly prefer the desktop experience of GNU/Linux. As long as you avoid the dodgy hardware (Nvidia cards, an ever decreasing number of wireless chips) then everything is painless.

At this point really the only thing distinguishing these operating systems as general desktops (as opposed to gaming systems) is whether or not they are Free Software or not. That is something that is becoming more and more important to me in order to avoid being compromised by criminals (governmental or not).