Hacker News new | ask | show | jobs
by cs02rm0 2879 days ago
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.

2 comments

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).