Jump to content

"Why Do Command Lines Still Exist?" is getting it wrong

Riccardo Cagnasso
57 minutes ago, YoungBlade said:

What percentage of people do you think actually uses the command line on a daily basis?

 

And I don't mean people like me who use it on occasion to update Linux or check on a web server. I mean people who daily-drive a CLI at work or home.

 

I know one person who you could argue uses a CLI regularly enough to be considered a daily-driver, but considering that I studied CS in college, and so have multiple programmer friends, that's not saying much.

Basically anyone who works with software from an engineering/technical perspective. Not even necessarily in programming, but reading and parsing a text file for example. Try opening a 100MB log file in sublime, I'll wait.

 

You and the other users here are introducing a selective bias. Just because your or your peers don't use it, doesn't mean it's not nessacary, Want an example? Look at Linus blowing away his desktop environment. He still had a command line to interface with the operating system and could have potentially fixed the problem without doing a reinstall.

Any linux administrator is using a CLI. There's billions of people in this world, you have your friends are not a sufficient sample size. If you don't use it, it's not for you and don't worry about it. Your question about percentiles is disgenuine because you assume someone cared enough prior to this discussion to survey people using a CLI.

GUI's and CLI's all have their place in this world and may exist in harmony. GUI's are for the enduser, GUI's lie and can takeup unnecessary resources. Everything you use in a GUI is just a CLI wrapped in pretty pictures. Linux is configured in textfiles, you don't need a GUI for textfile editing.  VI if you like doing things the hard way, or nano if you love yourself.
 

Link to comment
Share on other sites

Link to post
Share on other sites

There's actually some attempts to create hybrid GUIs/CLIs, such as the one created by my employer, pretty interesting stuff and makes it a lot easier to learn how to use the cli at hand (imo)
image.png.1f95983ddc5f73c57cad8dcefac30d29.png

i like trains 🙂

Link to comment
Share on other sites

Link to post
Share on other sites

4 minutes ago, InadequateComputerUser said:

Basically anyone who works with software from an engineering perspective. Not even necessarily in programming, but reading and parsing a text file for example. Try opening a 100MB log file in sublime, I'll wait.

 

You and the other users here are introducing a selective bias. Just because your or your peers don't use it, doesn't mean it's not nessacary, Want an example? Look at Linus blowing away his desktop environment. He still had a command line to interface with the operating system and could have potentially fixed the problem without doing a reinstall.

Any linux administrator is using a CLI. There's billions of people in this world, you have your friends are not a sufficient sample size. If you don't use it, it's not for you and don't worry about it.
 

Where did I say it wasn't essential for some people? I have nothing against the command line and I even use it to administer a small website I run. But I'm not going to pretend that a large portion of the computer users in the world ever even touch it, because guess what? They don't.

 

I work in a grocery store. I use a lot of specialized tools and pieces of software that many people never think about or aren't even aware exists.

 

And that's okay.

 

Are those tools essential for the normal function of today's society? Yes, actually they are. Does that mean that a substantial percentage of the population uses them? No, it doesn't. And does that make them less important for me, my store, and the people of my community? No, they're still important.

 

I don't think anyone here is claiming that the command line doesn't matter to anyone, but it doesn't matter to most people, even though we all benefit from the people who do use it.

Link to comment
Share on other sites

Link to post
Share on other sites

I'm not sure what the disagreement is here. Yes, your average consumer isn't going to ever bust out a CLI to do daily work, and that's because GUIs are more convenient for their use cases. Yes, a hardcore programmer might prefer a CLI interface for building a development version of a program because its more convenient for their use cases.

Yes, they might have a good portion of overlap, like I could try to use imagemagick to edit my photos, but I won't because it's easier with a GUI, and I have ctrl+z features, etc.

Yes, I could try to use the GUI interface to set up a server deployment of Linux, but I won't cause using a CLI means my server will be less taxing on RAM(no desktop environment), and I'll be running headless(no monitor) anyways 99% of the time, so why bother?

Different tools for different purposes guys.

Link to comment
Share on other sites

Link to post
Share on other sites

***DISCLAIMER Have not watched the video.

 

But from the premise, this sounds like you are missing something too. This video is response to some questions and criticism over Linux adventure videos. Majority of LTT viewers are gamers born and raised with Windows (XP onwards to top it). These viewers have very human look towards CLI. So this video is by someone who uses CLI, explaining why they use it. In similar ways Anthony would explain why he likes Linux or retro consoles. That's the angle.

^^^^ That's my post ^^^^
<-- This is me --- That's your scrollbar -->
vvvv Who's there? vvvv

Link to comment
Share on other sites

Link to post
Share on other sites

9 hours ago, emosun said:

Im kinda glad I never have to type commands in anywhere its a real luxury that only I and anyone who uses windows 95 and higher can really enjoy. But you if you like it then more power to you.

It's also a luxury to have and be able to use a CLI where the task is impossible or would be highly impractical to use a GUI for. I wouldn't go round saying potato peelers are a luxury compared to a knife, neither are luxuries and a potato peeler is literally useless for anything other than peeling. It may be the most convenient way to peel a potato or carrot but among the least convenient ways to de-bone a chicken or dice vegetables.

Link to comment
Share on other sites

Link to post
Share on other sites

1 hour ago, leadeater said:

It's also a luxury to have and be able to use a CLI where the task is impossible or would be highly impractical to use a GUI for. I wouldn't go round saying potato peelers are a luxury compared to a knife, neither are luxuries and a potato peeler is literally useless for anything other than peeling. It may be the most convenient way to peel a potato or carrot but among the least convenient ways to de-bone a chicken or dice vegetables.

neato? not sure why i was quoted there , i think you meant to quote someone who isnt aware what a command line is and might have some sort of use for it.

Link to comment
Share on other sites

Link to post
Share on other sites

37 minutes ago, emosun said:

neato? not sure why i was quoted there , i think you meant to quote someone who isnt aware what a command line is and might have some sort of use for it.

Nope, you because your comment was silly. GUI is not a luxury, it's a convenience and fit for a purpose(s).

 

Your implication that it's also used because someone merely likes it makes as much sense as a chef de-boning a chicken with a potato peeler.

Link to comment
Share on other sites

Link to post
Share on other sites

1 minute ago, leadeater said:

Nope, you because your comment was silly. GUI is not a luxury, it's a convenience and fit for a purpose.

oh , I see. Maybe I should elaborate. A gui is luxury to me compared to typing a long sentence of rubbish into a 1970's era relic.

To me the silly thing would be responding at all to someone who led with "if you like it then more power to you". It might imply they skimmed and then warped the comment to fit their own narrative. But such is the way , I seem to be a magnet for people not reading anything I type.

Link to comment
Share on other sites

Link to post
Share on other sites

9 minutes ago, emosun said:

To me the silly thing would be responding at all to someone who led

Closed with not led with and doesn't validate what you said nor your implications.

 

FYI Luxury is synonymous with scarcity and expense and owning a horse certainly ticks both those 😉

 

Maybe stop using phrases like "1970's rubbish", you clearly have something to say and imply because you commented in the first place. I'm using my right of reply to say your points are not valid or well thought out.

 

I'm no fool, you meant what you said, just own it. I can respect that more than trying to dodge a belief you actually have.

 

You: "I prefer using a GUI"

 

Fantastic point and belief, well said. But you didn't say that did you.

Link to comment
Share on other sites

Link to post
Share on other sites

2 minutes ago, leadeater said:

Closed with not led with and doesn't validate what you said nor your implications.

 

FYI Luxury is synonymous with scarcity and expense and owning a horse certainly ticks both those 😉

 

Maybe stop using phrased like "1970's rubbish", you clearly have something to say and imply because you commented in the first place. I'm using my right of reply to say you points are not valid or well thought out.

 

I'm no fool, you meant what you said, just own it. I can respect that more than trying to dodge a belief you actually have.

I think I'll stop here as your goal appears to be malicious in nature to fish for a forum rule to enforce upon me rather than a discussion. Nor will I continue filling an ops thread.

Link to comment
Share on other sites

Link to post
Share on other sites

Just now, emosun said:

I think I'll stop here as your goal appears to be malicious in nature to fish for a forum rule to enforce upon me rather than a discussion. Nor will I continue filling an ops thread.

Maybe try a little harder to be less purposefully offensive and considending. I find what you said to be both, not that I expect or want an apology because the point was to show you the error and folly in what and how you said what you did.

 

As someone who's job it is that involves using CLI I can assure you preference has little to do with it and it's entirely using the correct tool for the job. I too prefer using a GUI however it's not always the most convenient or even user friendly way of doing something.

 

If you don't have anything good to say then it's probably not worth saying anything at all. If you wish to not have an actual conversation that is your choice.

Link to comment
Share on other sites

Link to post
Share on other sites

My dad is a programmer that use Windows, and as far as I know he do not use CLI daily, might so now and then but not daily.

Might be wrong tho, but the last while when he have worked from home and I have walked past him working, he has never done CLI stuff.

“Remember to look up at the stars and not down at your feet. Try to make sense of what you see and wonder about what makes the universe exist. Be curious. And however difficult life may seem, there is always something you can do and succeed at. 
It matters that you don't just give up.”

-Stephen Hawking

Link to comment
Share on other sites

Link to post
Share on other sites

36 minutes ago, Mihle said:

My dad is a programmer that use Windows, and as far as I know he do not use CLI daily at all, might so now and then but not daily.

I definitely don't use it daily either, most commonly when diagnosing a fault as the more common tasks typically have a GUI interface for that. Linux and network admins would be using CLI far more than I do, not that I don't do Linux administration but it's not something I primarily do and a lot of that is configuration managed aka Infrastructure as Code.

 

I wonder if people would deem editing/creating YAML text files for Puppet/Ansible as CLI? Probably not otherwise coding would essentially start to fall under that too then.

Link to comment
Share on other sites

Link to post
Share on other sites

I think the most basic answer to why the CLI still exists is for the same reason error LEDs on motherboards are still a thing: They have a specific use at a specific time and even if you don't use them every day, you're probably thankful it's there if you ever need to use it.

 

On a personal note, I'm really not a fan of CLI at all. I get that it's more flexible than a GUI, but many of the supposed inadequacies of a GUI aren't inherent problems with the GUI itself. It has more to do with the fact that many developers just suck at creating compelling or efficient GUI in the first place. There's a reason UI/UX is a field of study in itself and why people will use less powerful software if it enables them to do what they intend to do with less frustration. Not to mention that at least to me, an app has to look somewhat appealing for me to consider using it. Petty and has nothing to do with functionality, I know, but still, I don't like subjecting my eyes to certain apps for that reason.

 

And I also don't want to start every session with a CLI program typing in "help" to see all the available commands. Sure, if you know them by heart, you're probably faster typing in a string of commands and modifiers, but I feel more comfortable with a GUI to intuit things and just using keyboard shortcuts to get stuff done quickly once I'm more acquainted with the software. 

And now a word from our sponsor: 💩

-.-. --- --- .-.. --..-- / -.-- --- ..- / -.- -. --- .-- / -- --- .-. ... . / -.-. --- -.. .

ᑐᑌᑐᑢ

Spoiler

    ▄██████                                                      ▄██▀

  ▄█▀   ███                                                      ██

▄██     ███                                                      ██

███   ▄████  ▄█▀  ▀██▄    ▄████▄     ▄████▄     ▄████▄     ▄████▄██   ▄████▄

███████████ ███     ███ ▄██▀ ▀███▄ ▄██▀ ▀███▄ ▄██▀ ▀███▄ ▄██▀ ▀████ ▄██▀ ▀███▄

████▀   ███ ▀██▄   ▄██▀ ███    ███ ███        ███    ███ ███    ███ ███    ███

 ██▄    ███ ▄ ▀██▄██▀    ███▄ ▄██   ███▄ ▄██   ███▄ ▄███  ███▄ ▄███▄ ███▄ ▄██

  ▀█▄    ▀█ ██▄ ▀█▀     ▄ ▀████▀     ▀████▀     ▀████▀▀██▄ ▀████▀▀██▄ ▀████▀

       ▄█ ▄▄      ▄█▄  █▀            █▄                   ▄██  ▄▀

       ▀  ██      ███                ██                    ▄█

          ██      ███   ▄   ▄████▄   ██▄████▄     ▄████▄   ██   ▄

          ██      ███ ▄██ ▄██▀ ▀███▄ ███▀ ▀███▄ ▄██▀ ▀███▄ ██ ▄██

          ██     ███▀  ▄█ ███    ███ ███    ███ ███    ███ ██  ▄█

        █▄██  ▄▄██▀    ██  ███▄ ▄███▄ ███▄ ▄██   ███▄ ▄██  ██  ██

        ▀███████▀    ▄████▄ ▀████▀▀██▄ ▀████▀     ▀████▀ ▄█████████▄

 

Link to comment
Share on other sites

Link to post
Share on other sites

I'm kinda torn on CLI, myself.

 

On one hand, I feel it should be used for automated tasks, and that's it - everything else an admin needs to do should be doable on a GUI. But we're not there yet (and probably will never be).

On the other hand, there are a handful of tasks that are just... so quick on CLI. Like, why would I ever bother doing a ping on a GUI with how fast I can get it going on CMD?

Link to comment
Share on other sites

Link to post
Share on other sites

CLI:

find ./ -name \*.html -printf '%CD\t%p\n' | grep "03/10/08" | awk '{print $2}' | xargs -t -i mv {} temp/

 

GUI:

wgetgui-screenshot.png.d35dd59486aa454b01325ed27196e714.png

 

These are two extreme examples of a tool done poorly.

But overall, I can infer what a GUI tooltip means, with a CLI, I cannot.

 

We have some arcane CLI commands used daily at work. They were a PITA to learn in the beginning and I'd much rather have a GUI to handle it, because it would take less time to teach the new folks, but no GUI has been written to translate the CLI disaster into something more understandable, so I continue to use the (now memorized) CLI.

 

..and I hate it.

CLI has its uses certainly, every day Joe Average use is not one of them. It's one of the many reason *nix will never have its year on the desktop.

 

NOTE: I no longer frequent this site. If you really need help, PM/DM me and my e.mail will alert me. 

Link to comment
Share on other sites

Link to post
Share on other sites

53 minutes ago, Radium_Angel said:

We have some arcane CLI commands used daily at work. They were a PITA to learn in the beginning and I'd much rather have a GUI to handle it, because it would take less time to teach the new folks, but no GUI has been written to translate the CLI disaster into something more understandable, so I continue to use the (now memorized) CLI.

This just brought back a memory from a job I had a decade ago that I've somehow suppressed until now. Back then, I used to work for a company specializing in polymer compounds and specialty chemicals. And not a small one, they deliver product worldwide with some fairly high profile customers. Not quite on the scale and level of someone like BASF, but nothing to sneeze at. I worked in the planning department that scheduled the different production runs on the extrusion machines we had. And the tool that we used to allocate product to individual orders was literally the worst of both worlds in terms of GUI and CLI. It was developed in house by the way because the actual planning of the machines ran on Microsoft Access for some completely inexplicable reason and that tool was ostensibly the only way they could interface with that for us guys juggling orders. 

 

On the surface it was a regular old grey window GUI, like the one in your screenshot. But there weren't any buttons, check boxes or radio buttons or anything to click. No, the only thing you had was one single solitary text box in the top left where you could enter commands. Someone coded a GUI to mimic a CLI, for fuck's sake. So say you wanted to see any given order and see what was allocated. You'd type in R0CS31 (yes, I still remember some of the goddamn codes), hit enter and the grey window would populate a bunch of labels with non-editable information. Most of the commands weren't even related to what they'd do, only a few were able to be memorized based on their actions. I remember that the one to delete a position on an order started with a "D" for "delete", but most seemed entirely random. Never mind completely useless since most of my coworkers didn't speak a lick of English so it made no sense to them. 

 

And that software was so terribly designed that if you executed commands in the wrong order, you could permanently brick data records so that only one of the devs could manually go in and correct it. And doing it wrong was fairly easy, since there were no tooltips, nothing to help guide the user through any given process and not even a proper documentation. This is stone-age stuff, where wisdom got passed on orally. And like I said, this wasn't some startup in a garage, this is a multi-million dollar company that ran on a badly designed in-house solution that made users learn 80 or so commands or keep a printed list of them on their desk at all times instead of investing in a proper ERP solution.

And now a word from our sponsor: 💩

-.-. --- --- .-.. --..-- / -.-- --- ..- / -.- -. --- .-- / -- --- .-. ... . / -.-. --- -.. .

ᑐᑌᑐᑢ

Spoiler

    ▄██████                                                      ▄██▀

  ▄█▀   ███                                                      ██

▄██     ███                                                      ██

███   ▄████  ▄█▀  ▀██▄    ▄████▄     ▄████▄     ▄████▄     ▄████▄██   ▄████▄

███████████ ███     ███ ▄██▀ ▀███▄ ▄██▀ ▀███▄ ▄██▀ ▀███▄ ▄██▀ ▀████ ▄██▀ ▀███▄

████▀   ███ ▀██▄   ▄██▀ ███    ███ ███        ███    ███ ███    ███ ███    ███

 ██▄    ███ ▄ ▀██▄██▀    ███▄ ▄██   ███▄ ▄██   ███▄ ▄███  ███▄ ▄███▄ ███▄ ▄██

  ▀█▄    ▀█ ██▄ ▀█▀     ▄ ▀████▀     ▀████▀     ▀████▀▀██▄ ▀████▀▀██▄ ▀████▀

       ▄█ ▄▄      ▄█▄  █▀            █▄                   ▄██  ▄▀

       ▀  ██      ███                ██                    ▄█

          ██      ███   ▄   ▄████▄   ██▄████▄     ▄████▄   ██   ▄

          ██      ███ ▄██ ▄██▀ ▀███▄ ███▀ ▀███▄ ▄██▀ ▀███▄ ██ ▄██

          ██     ███▀  ▄█ ███    ███ ███    ███ ███    ███ ██  ▄█

        █▄██  ▄▄██▀    ██  ███▄ ▄███▄ ███▄ ▄██   ███▄ ▄██  ██  ██

        ▀███████▀    ▄████▄ ▀████▀▀██▄ ▀████▀     ▀████▀ ▄█████████▄

 

Link to comment
Share on other sites

Link to post
Share on other sites

Ever use AutoCAD or any similar CAD software?

The better you know the CLI and complex geometry the better you can draw, you don’t even need to use the mouse if you’re good enough with CLI.

Keeping track of units of reference and where you’re working is the only hard part once you’re good at remembering the commands and the mathematics.


CLI has its place, and if you know how to use it, and it’s use is valid over other inputs, it cements its own use case and value.

Link to comment
Share on other sites

Link to post
Share on other sites

The vast majority of computer users could not tell you what a command line interface is as they have never needed to use it.  I started programming back in the olden days with punch cards on mainframes and have seen it all.  A GUI interface certainly has made things easy and even now the little bit of programming that I do uses Atom for both HTML and Python.  As a photographer the best color management software is ArgyllCMS which i entirely CLI (you can get the compiled distro (Windows, Apple OS and even Linux or download the source code if you want to compile it yourself). There are lots of commands and configurations possible and writing a GUI interface for this would be particularly challenging given it is a one-man operation.  So yes, I still use the CLI for this suite of programs and occasional GitHub stuff.

Workstation PC Specs: CPU - i7 8700K; MoBo - ASUS TUF Z390; RAM - 32GB Crucial; GPU - Gigabyte RTX 1660 Super; PSU - SeaSonic Focus GX 650; Storage - 500GB Samsung EVO, 3x2TB WD HDD;  Case - Fractal Designs R6; OS - Win10

Link to comment
Share on other sites

Link to post
Share on other sites

13 hours ago, YoungBlade said:

And I don't mean people like me who use it on occasion to update Linux or check on a web server. I mean people who daily-drive a CLI at work or home.

I'm using CLI every day. There are just things that are so much easier/faster to do on CLI than with a GUI. They could be easily done with a GUI, but I just couldn't find a program that has all the necessary functionality to do it. There were programs that could do parts of it, but usually you can't make different GUI programs work together. You have to use one after the other and if one of those programs don't support batch processing you need to do it for every single input file. On the other hand, with a CLI program you can just pipe the result from one program to the next until you get the result you want and batch processing is always inclusive. I had tasks that would have cost me hours or even days if done with the available GUI programs that were only a single command line and a few minutes of waiting time on the CLI.

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

One advantage of a GUI (at least a properly written one) over a CLI is, I can explore and learn the GUI without documentation. If push comes to shove, by trial and error of what each button does.

Under a CLI, without documentation, I am dead in the water. No amount of poking or trial by discovery will get progress, because there is nothing other than C:>_ (or the OS equivalent) to guide me.

 

I have to know ahead of time what to type in, or have the docs on hand to figure it out. This is not the case under a GUI.

 

@Avocado Diaboli

I know your pain, the gov't/scientific field is littered with terribly designed GUIs/program interfaces for mission critical work, that had been subcontracted out to the lowest bidder.

 

This is off-topic, but I worked for a gov't Treasury once, and the "program" that determined how much money each gov't agency had on any give day, was written in Excel macros, based on economic theories that hadn't been updated since the 1970s, and the programmer (and this is no exaggeration whatsoever) was currently residing in an insane asylum. THe macros had been password-protected and of course no one knew the password, so no changes could be made, even if they wanted to. It was either keep going with the obsolete code, or start from scratch...

 

NOTE: I no longer frequent this site. If you really need help, PM/DM me and my e.mail will alert me. 

Link to comment
Share on other sites

Link to post
Share on other sites

19 minutes ago, Radium_Angel said:

Under a CLI, without documentation, I am dead in the water. No amount of poking or trial by discovery will get progress, because there is nothing other than C:>_ (or the OS equivalent) to guide me.

That's not necessarily true; in Linux systems, many CLI programs come with a manual page you can access with the man utility. A lot of CLI tools also come with a --help option which lists available options and a small description of the program. Some CLI programs also come with autocompletion data for your shell.

 

I would also disagree that you can just learn everything about something like Microsoft Excel just by trial and error.

Don't ask to ask, just ask... please 🤨

sudo chmod -R 000 /*

Link to comment
Share on other sites

Link to post
Share on other sites

Maybe we should ask the question again when someone has created a nice, neat GUI with every single function available in the appropriate CLI 😄

 

This always remembers me of the last SQL tool I created. List with drag-able entries for AND and OR combinations, <,>,>=, <=, %, GROUP, CONVERT,.... and a textbox with the resulting highlighted SQL-query.

After a while everyone just typed into the textbox because it is much faster 😆 (*how can we hide the GUI for more space*...)

 

But it's the same with hotkeys. If you realy use a software you stop zeh clicking and start zeh buttoning.

Link to comment
Share on other sites

Link to post
Share on other sites

22 minutes ago, Sauron said:

you can access with the man utility.

If you knew the command existed in the first place...

24 minutes ago, Sauron said:

I would also disagree that you can just learn everything about something like Microsoft Excel just by trial and error.

Your point is noted. Everything I know about Excel has been through trial and error.

Am I an expert? No, far from it, but I am the go-to in our office if someone needs Excel to do something.

 

Ditto with PhotoShop (self taught for the parts that I need for my photography)

A GUI makes function discovery easier.

 

NOTE: I no longer frequent this site. If you really need help, PM/DM me and my e.mail will alert me. 

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×