I’m not proposing anything here, I’m curious what you all think of the future.
What is your vision for what you want Linux to be?
I often read about wanting a smooth desktop experience like on MacOS, or having all the hardware and applications supported like Windows, or the convenience of Google products (mail, cloud storage, docs), etc.
A few years ago people were talking about convergence of phone/desktop, i.e. you plug your phone into a big screen and keyboard and it’s now your desktop computer. That’s one vision. ChromeOS has its “everything is in the cloud” vision. Stallman has his vision where no matter what it is, the most important part is that it’s free software.
If you could decide the future of personal computing, what would it be?
For Linux desktop to grow past the single digit market share it is at today. It needs to be led by tech visionaries not by code evangelists . The average user doesn’t care about if it’s running Wayland or x11 or whatever shit you name it they only care about their OS having all the features they need and support all the latest hardware they buy.
Add to that any average Joe would freeze at the prospect of having to enter a command line to maintain their computer or use their firewall. In short for Linux to grow it needs to copy windows or macOS otherwise it will keep being used by nerds and sys admins
In a very real sense I do think that the command line is ever so slightly too maligned as a beginner friendly tool. I definitely agree that it’s intimidating for people and that it’s easy to mistype a command or whatever… but good god is it ever nice to be able to tell somebody to “just copy and run this command” instead of guiding them through a GUI. Of course that has its own problems (ideally you don’t run commands you don’t understand), but it can be a really nice way to quickly help somebody. Macs strike a good balance with this in my opinion. There are GUI options for more or less everything (that seem to be front ends for command line tools), but also command line versions available, giving you the best of both worlds.
The problem with the command line line. Is that people don’t understand what they are typing . what command means what. And don’t really care to memorize them. I’ve seen tech illiterate people navigate their way through leading how a mobile OS works because of how user centric they are designed. If you give them a Linux distro with a bunch of command lines to type. They would rather call someone more knowledgeable to do it or give up on it entirely. Unfortunately this is something Linux Devs don’t understand
Linux dev’s do understand this, and there have been huge UI strides in the last 10 years that make Linux a lot more beginner friendly than it used to be. With the use and improve philosophy of Linux, you end up with the largest number of changes being targeted towards a similar demographic of the people making the changes—power users and nerds. As the audience for Linux has widened, we’ve seen a bigger variety of ideas integrated to make Linux approachable, as a direct reflection of the diversity of the people making the improvements.
Basically, Linux is a direct reflection of the people contributing to it.
For sure! The command line definitely lacks discoverability and just isn’t the mode of interacting with a computer that the average person is used to. That said there are situations where it is very much the right tool for the job and there’s plenty of times where it’s the easy way to set something up, even for a beginner.
If I’m being perfectly honest I do find that a lot of the complaints about the command line come across as a bit… silly, sometimes? I can absolutely acknowledge that it has its problems and seems intimidating, and I’m not expecting the average technology illiterate person to deal with it… But there really is not that much to it, and I think people are far more afraid of it than they need to be. Plus I think the amount of command line knowledge required for somebody to start using a mainstream distro is greatly exaggerated. You may eventually want to learn it (and shouldn’t be scared to!) and you may rarely run into something where the best way to solve a problem involves the command line… but you’ll be fine :).
Sometimes I think what we would do differently if we could rebuild the terminal from scratch. Do away with all the recursive acronym naming bullshit and the “You had to be a member of the compsci faculty at Stanford in 1975 to get it” references, use words that mean things to modern computer users.
Thats the reason I hate pacman. pacman -Syu…ok.
APT had (and kinda still has) the opposite problem. “apt-get install” is redundant. And true to Linux fashion, there have been a few implmentations of an “apt install” syntax, which were different enough to be a problem.
Also my OSMC box bitches at me when I run “apt upgrade” because it wants me to type “apt full-upgrade…”
There are some things I’d like to ask the Flatpak developers while holding them 6 inches off the ground by their shirt collar. Like why is it such a bitch to run flatpak update over ssh? It wants you to key in your password 96 times if you do that. It’s also really fun to deal with org.whatthefuck.WhatTheFuck too.
I don’t think apt is as bad as pacman, I use nala on my debian machine. The best syntax in my book has zypper, but I am biased. Simply running a flatpak from cli is a hassle. :P
Yeah I’ll go with that; convention is you run software by evoking its name as a command. apt install vim, then you can run vim by typing “vim.” Not with Flatpak, you evoke “flatpak run .org.bullshit.Vim”. It’s not merely designed to be used through a GUI, it’s designed to be not used through a CLI.
Clicking buttons doesn’t mean you understand what they do. And often time they don’t do what you would think they do. CLI on the other hand is actually much more direct, because the entered command does the same thing on almost any machine and you can read about what it does with “man command”.
GUI have context and user feedback
Command line has :0: error: Undefined temporary symbol :0: error: Undefined temporary symbol
What? Is this sarcasm? CLI offers much more debug potential than GUIs.
For someone who knows what they’re doing maybe, but this is about those who don’t, which is 99% of people.
So what are you doing when a GUI tells you “error”? You give up and do something else?
A GUI tells you a lot more about the current status and what you can do, in an intuitive way, than the cli ever can
Linux is not the answer you seek.
I had a fantastic opportunity to reflect on this exact concepts while setting up a new Gentoo install. Even when a handbook provides a comprehensive happy path, when that happy path can go so wrong as to require the divination of Gentoo greybeards even when following the instructions, the barrier of entry isn’t exactly doing the distro any favors.
Even Ubuntu and the “user-friendly” distros leave ample room for pain for the average user despite the efforts invested in rounding off some of the sharp and jagged edges - Windows does a ton to make things “just work” to some degree even in a bad state. Short of the wise Indian programmer YouTuber meme gaining a Linux equivalent, there’s much left to do to make this approachable in Linux-land.
For example, if, you add an fstab entry for a CIFS mount that goes poorly, forget to remove it, and reboot, you’re setting yourself up for a delay in boot or a failure to boot and a trip to the recovery CD to fix fstab. Windows… just continues on with the mount unavailable.