Most people who drive cars are not mechanics. Most computer users are not also computer engineers; they don't want to be and shouldn't have to be.
If you want to drive your car with spare parts and tools in the back, outfitted with gloves, goggles, a scarf, and an oilcoat; you can do that. That doesn't mean that everyone else should do that. It's not 1992 anymore.
I remember when I first learned about Linux, specifically an early version of KNOPPIX. Computers ran Windows. Mac whatever existed but was niche. The idea that I could boot a new fully functional OS from a CD was an absolutely crazy idea. I thought I had an understanding of computers but this changed everything.
This rant talks about users being unwilling to branch out but I think it's more that they're unable to. They lack the understanding of what question to ask. They're not making the choice to not try Foo, they lack the understanding that alternatives exist. If someone told you "Actually cars don't need wheels" and then took the wheels off and drove away you'd be completely flabbergasted. Turns out cars move based on magic not wheels.
On the other hand.
I don't think it's unreasonable for folks to be a little more attentive in the choices they make. When you buy a car you don't just show up to the dealership and grab the first one you see. You choose gas, electric or hybrid. You choose a car, a truck, a van, etc based on your needs. You might pick a specific brand/make/model based on other requirements.
It's fine to choose the most popular option, it's popular for a reason, but you should understand a little bit about your choice. You chose Lenovo. You chose Windows. You chose Edge. You chose Bing.
I'm not asking if you know if you have an HDD or an SSD. I'm not asking if it's an NVME drive. I'm not asking which generation/model CPU it has.
I think the frustration being expressed is the type you see from the classic "The Website is Down".
I did it because it's fun, but there are other reasons.
It's faster and easier than using a GUI. This is because you can type a lot faster than you can click-click-drag with a mouse.
There are some programs that give useful information when run from a CL that they don't give when run from a GUI. This can be helpful for troubleshooting.
If you ever get stuck on a system that doesn't have a GUI, you'll still know what to do. I've had this happen when I had to SSH into servers that were running bare-bones Linux systems.
If a particular GUI operation is bogging your system down, you can do it from the CLI using fewer resources. For example, sometimes my system will freeze up if I try to open a very large file, but a command-line app can do it without freezing. This admittedly doesn't happen very often, but when it does, I'm happy to have that knowledge.
You can get the CLI to do things that you don't have a GUI app for. Having knowledge of the CLI gives you that flexibility.
I'm sure there are other reasons, but those are just the ones I could come up with off the top of my head.
To be honest, I got into the CLI because of aesthetics. I saw all of the terminal rices that people would post online, and I wanted to have that. The Windows CLI was always ugly and unfriendly, so I wanted nothing to do with it. I learned it because it looked cool, and it turned out to be useful as well.
True, but if your repetitive, boring task can be replaced by a well-put-together Excel spreadsheet or a few simple scripts, you're looking at replacing yourself at your own job.
I've definitely seen people replaced by the work-saving scripts they wrote. Corporate doesn't care about pesky things like "maintenance" or "security updates" or even "that command we used in the script is now deprecated." It works well enough now, and now they consider you "redundant."
Some folks keep doing it the repetitive boring way to keep their bosses from shitcanning them for creating something their bosses are absolutely too dimwitted to do themselves. It's never nice to do something that saves you effort and the response is your boss shitcanning you and then saying "I made this."
I'm going to have to interject on even on the first point. FWIW, I'm a person who vastly prefers to use a keyboard when possible, can totally live on a CLI only system, etc. Anyway:
It’s faster and easier than using a GUI. This is because you can type a lot faster than you can click-click-drag with a mouse.
This is just not true for the vast majority of people. Have you ever watched normies type?
The other thing is that even with simple stuff like file operations normal users get lost with a GUI where it's far easier to visualize what is actually happening. If they get a few basic mechanics (click+drag, right click, double click) that's about all they have to remember to move files around. Compared to learning ls, cd, mv, cp, the directory tree, symbols like . and .. and so forth. Or perhaps my favorite example, quick name a valid tar command. On a GUI system like windows/Mac, they just need to remember they can do things to files by selecting them and right-clicking them. On a CLI only system, how the fuck are you supposed to get a regular user to remember that to compress a file, you type in tar to start with, much less remembering flags (my flavor of choice is usually -xvf.) How many people who regularly use linux even know wtf it's called tar?
And that's even forgetting the things like the defaults often being much harder to recover from. In Mac/Windows (and I think even most distros, though I haven't daily driven a gui linux in a while) deleting a file the default way is a safe operation and easily recoverable because by default the gui is designed to be more user-safe.
Though I don't think anyone will disagree with the fact that the CLI is an immensely powerful tool that a lot of us can't do without, it has never been really designed in a way to be accessible to normal users, and I'd be willing to bet that if you were designing a CLI today in a vacuum, it wouldn't look anything like the one we're familiar with. It's why I'd also guess that very few of us that use the command line all of the time don't have a mile long list of aliases, scripts, switching to shells like zsh and things like zsh-autosuggestions or zsh-syntax-highlighting, colorls, a specific terminal emulator they use, and so on and so forth.
Those are all true, but they also don't apply to the vast majority of computer users.
Most people don't need the speed of using only command line, especially when the programs they're working with aren't deeply tied to the command line. How is the command line gonna help a regular office drone writing up a new resume? It would be far easier and quicker for them to do it in Microsoft Office instead of spending hours learning how to do it with CLI.
Absolutely you can get more fine-grained information from the CLI, but for the vast majority of users, they won't need to.
Literally almost no regular person has even heard of SSH or will ever need a reason to use it. It's great that it's helpful to us, but I can think of zero reasons most people would need this knowledge for.
You can also install a lightweight version of an OS for this, without needing to just dump to the CLI. Agreed that Windows doesn't really have a light version, but this is also not a necessity. If you're using a system that's old enough to get bogged down by watching a YouTube video, that's kind of a side effect of using such old hardware. In most cases people will have modern enough hardware for this to not be an issue or something the average computer user needs to know. Because most people aren't doing massively demanding tasks on their computers (unless they left a lot of apps open).
It's a great flexibility to have as a developer or as a sysadmin, it's honestly practically a requirement for both.
All of these are super valuable to people who work with computers daily. My hairdresser doesn't give a shit and just wants a computer that functions without confusing them because they went to school for hairdressing not PC maintenance.
I get what you're saying, but you're acting like these things are a lot more valuable to the average user than they really are. They're way more important for people working in the industry, not so much people who just have a computer for writing emails, drafting resumes, and browsing the web.
the drivers should at least be able to change a flat tire no?
Same with computer users, they should at least be able to change their software (if the company doesn't lock them down that is). But they can't even do that.
Below is basically just a rant disguised as an argument you may or may not ignore it
I have friends, family and colleagues that cannot grasp things such as the existence of other OS's besides windows, android and macos/ios and that there is other software than they know.
For example, my friends say stuff like "have you cracked/hacked your phone/pc again?" Because i use linux and lineageOS instead of windows/macos and android/ios. No matter what i tell them. They don't care that it took like 10 minutes to do. they don't care that it is basically 4 steps. The fact that i use something different to them makes them think that i am a computer genius even tho i know jack shit.
I do not blame them as they have only known one way/thing their whole life. But i blame the people that are responsible for them only knowing one thing.
What i wanted to say with this whole ass bible is: they don't have to know everything. But they should know something so that they are not helpless when things go south
Most people who drive cars are not mechanics. Most computer users are not also computer engineers; they don't want to be and shouldn't have to be.
If you want to drive your car with spare parts and tools in the back, outfitted with gloves, goggles, a scarf, and an oilcoat; you can do that. That doesn't mean that everyone else should do that. It's not 1992 anymore.
On the one hand I agree.
I remember when I first learned about Linux, specifically an early version of KNOPPIX. Computers ran Windows. Mac whatever existed but was niche. The idea that I could boot a new fully functional OS from a CD was an absolutely crazy idea. I thought I had an understanding of computers but this changed everything.
This rant talks about users being unwilling to branch out but I think it's more that they're unable to. They lack the understanding of what question to ask. They're not making the choice to not try Foo, they lack the understanding that alternatives exist. If someone told you "Actually cars don't need wheels" and then took the wheels off and drove away you'd be completely flabbergasted. Turns out cars move based on magic not wheels.
On the other hand.
I don't think it's unreasonable for folks to be a little more attentive in the choices they make. When you buy a car you don't just show up to the dealership and grab the first one you see. You choose gas, electric or hybrid. You choose a car, a truck, a van, etc based on your needs. You might pick a specific brand/make/model based on other requirements.
It's fine to choose the most popular option, it's popular for a reason, but you should understand a little bit about your choice. You chose Lenovo. You chose Windows. You chose Edge. You chose Bing.
I'm not asking if you know if you have an HDD or an SSD. I'm not asking if it's an NVME drive. I'm not asking which generation/model CPU it has.
I think the frustration being expressed is the type you see from the classic "The Website is Down".
https://github.com/ZaDarkSide/ArrangeByPenis
You don't have to be an engineer to use a CLI. This is exactly the mentality that's being called out here.
I'm gonna go out on a limb and say for 80% of people, there is literally nothing they need to do on a computer that necessitates knowledge of the CLI.
Sure, they can use it if they want to. But most don't want to, especially when they can already do the same via GUI.
Switching them to Linux won't magically make them want to.
You don't have to use a CLI to use a computer. What's the benefit for most people? Why should they?
I did it because it's fun, but there are other reasons.
It's faster and easier than using a GUI. This is because you can type a lot faster than you can click-click-drag with a mouse.
There are some programs that give useful information when run from a CL that they don't give when run from a GUI. This can be helpful for troubleshooting.
If you ever get stuck on a system that doesn't have a GUI, you'll still know what to do. I've had this happen when I had to SSH into servers that were running bare-bones Linux systems.
If a particular GUI operation is bogging your system down, you can do it from the CLI using fewer resources. For example, sometimes my system will freeze up if I try to open a very large file, but a command-line app can do it without freezing. This admittedly doesn't happen very often, but when it does, I'm happy to have that knowledge.
You can get the CLI to do things that you don't have a GUI app for. Having knowledge of the CLI gives you that flexibility.
I'm sure there are other reasons, but those are just the ones I could come up with off the top of my head.
To be honest, I got into the CLI because of aesthetics. I saw all of the terminal rices that people would post online, and I wanted to have that. The Windows CLI was always ugly and unfriendly, so I wanted nothing to do with it. I learned it because it looked cool, and it turned out to be useful as well.
90% of people who use computers just need the web browser and some sort of office suite and whatever proprietary software their job tells them to use.
I don't think they would find much if any use to command line tools.
Wait until you have to do a repetitive, boring task.
True, but if your repetitive, boring task can be replaced by a well-put-together Excel spreadsheet or a few simple scripts, you're looking at replacing yourself at your own job.
I've definitely seen people replaced by the work-saving scripts they wrote. Corporate doesn't care about pesky things like "maintenance" or "security updates" or even "that command we used in the script is now deprecated." It works well enough now, and now they consider you "redundant."
Some folks keep doing it the repetitive boring way to keep their bosses from shitcanning them for creating something their bosses are absolutely too dimwitted to do themselves. It's never nice to do something that saves you effort and the response is your boss shitcanning you and then saying "I made this."
deleted by creator
I'm going to have to interject on even on the first point. FWIW, I'm a person who vastly prefers to use a keyboard when possible, can totally live on a CLI only system, etc. Anyway:
This is just not true for the vast majority of people. Have you ever watched normies type?
The other thing is that even with simple stuff like file operations normal users get lost with a GUI where it's far easier to visualize what is actually happening. If they get a few basic mechanics (click+drag, right click, double click) that's about all they have to remember to move files around. Compared to learning
ls
,cd
,mv
,cp
, the directory tree, symbols like.
and..
and so forth. Or perhaps my favorite example, quick name a valid tar command. On a GUI system like windows/Mac, they just need to remember they can do things to files by selecting them and right-clicking them. On a CLI only system, how the fuck are you supposed to get a regular user to remember that to compress a file, you type intar
to start with, much less remembering flags (my flavor of choice is usually-xvf
.) How many people who regularly use linux even know wtf it's calledtar
?And that's even forgetting the things like the defaults often being much harder to recover from. In Mac/Windows (and I think even most distros, though I haven't daily driven a gui linux in a while) deleting a file the default way is a safe operation and easily recoverable because by default the gui is designed to be more user-safe.
Though I don't think anyone will disagree with the fact that the CLI is an immensely powerful tool that a lot of us can't do without, it has never been really designed in a way to be accessible to normal users, and I'd be willing to bet that if you were designing a CLI today in a vacuum, it wouldn't look anything like the one we're familiar with. It's why I'd also guess that very few of us that use the command line all of the time don't have a mile long list of aliases, scripts, switching to shells like zsh and things like zsh-autosuggestions or zsh-syntax-highlighting, colorls, a specific terminal emulator they use, and so on and so forth.
Those are all true, but they also don't apply to the vast majority of computer users.
Most people don't need the speed of using only command line, especially when the programs they're working with aren't deeply tied to the command line. How is the command line gonna help a regular office drone writing up a new resume? It would be far easier and quicker for them to do it in Microsoft Office instead of spending hours learning how to do it with CLI.
Absolutely you can get more fine-grained information from the CLI, but for the vast majority of users, they won't need to.
Literally almost no regular person has even heard of SSH or will ever need a reason to use it. It's great that it's helpful to us, but I can think of zero reasons most people would need this knowledge for.
You can also install a lightweight version of an OS for this, without needing to just dump to the CLI. Agreed that Windows doesn't really have a light version, but this is also not a necessity. If you're using a system that's old enough to get bogged down by watching a YouTube video, that's kind of a side effect of using such old hardware. In most cases people will have modern enough hardware for this to not be an issue or something the average computer user needs to know. Because most people aren't doing massively demanding tasks on their computers (unless they left a lot of apps open).
It's a great flexibility to have as a developer or as a sysadmin, it's honestly practically a requirement for both.
All of these are super valuable to people who work with computers daily. My hairdresser doesn't give a shit and just wants a computer that functions without confusing them because they went to school for hairdressing not PC maintenance.
I get what you're saying, but you're acting like these things are a lot more valuable to the average user than they really are. They're way more important for people working in the industry, not so much people who just have a computer for writing emails, drafting resumes, and browsing the web.
Tell me you've never worked with non-technical people without telling me you've never worked with non-technical people.
deleted by creator
i won't rest until every driver in america is forced into a toad of toad hall cosplay for every minute they're on the road
Anyone who is anyone has fancy driving gloves, cap, and goggles!
Oop can't forget the scarf!
i mostly agree with you. But:
the drivers should at least be able to change a flat tire no?
Same with computer users, they should at least be able to change their software (if the company doesn't lock them down that is). But they can't even do that.
Below is basically just a rant disguised as an argument you may or may not ignore it
I have friends, family and colleagues that cannot grasp things such as the existence of other OS's besides windows, android and macos/ios and that there is other software than they know.
For example, my friends say stuff like "have you cracked/hacked your phone/pc again?" Because i use linux and lineageOS instead of windows/macos and android/ios. No matter what i tell them. They don't care that it took like 10 minutes to do. they don't care that it is basically 4 steps. The fact that i use something different to them makes them think that i am a computer genius even tho i know jack shit.
I do not blame them as they have only known one way/thing their whole life. But i blame the people that are responsible for them only knowing one thing.
What i wanted to say with this whole ass bible is: they don't have to know everything. But they should know something so that they are not helpless when things go south