Open Ballot: Is the command line a crusty old relic?

Podcast

We've slowly been posting our series of LPI tutorials to level up our readers (if you haven't seen them and want to catch up, we've created a handy index). The most recent part covered advanced command line techniques and opened with the following comment:

"...the command line isn’t a crusty, old-fashioned way to interact with a computer, made obsolete by GUIs, but rather a fantastically flexible and powerful way to perform tasks..."

In response, MSP suggested that there were a few errors in the post and said they could be corrected with the following snippet:

"...the command line is a crusty, old-fashioned way to interact with a computer, made obsolete by GUIs, but a small hardcore of people who refuse to move on still use it..."

For this week's open ballot, we want to know, who do you agree with: us (well, Mike!) or MSP? Let us know your thoughts in the comments and we'll discuss them in this week's podcast.

You should follow us on Identi.ca or Twitter


Your comments

Command Line Is Necessary

Saying that the command line is a "crusty old relic" as though it's outlived is usefulness is rather silly. It's part of the nuts and bolts of operating system construction. Not all typical users need to ever touch the command line, but it still has to exist.

Even for proper system administration the command line is pretty essential (you are really hamstringing yourself if you shy away from using it). I use Windows at work all the time. I use the command line in Windows practically every day. It's just the most practical way to do many things. I know of issues that are relatively easy to fix with a command line in Windows that would require much greater efforts to fix without it. Some issues might even require a re-install of the operating system if you couldn't use the command line when you wanted to.

There is no necessity for a regular user to touch the command line in Linux any more than in Windows. I have several relatives that use Linux regularly that never touch the command line. Yes, they rely on me to take care of issues they have when using Linux, but they do that with Windows as well. Lately, I haven't had to do much for them on either system.

Yes it is

Now that I have your attention, I don't see why it needs to be compared. Just because I can ssh my partition via multi casting to multiple similar pcs doesn't mean the next guy who clicks "begin process" is dumb. His priorities are his family, developing himself and professional development. Programming languages are also cli. You need to type something to create something else. But there are GUI driven programming languages too. So this idiotic comparison of he two is like comparing apples and water. Without water - no apples. Without apples - no trees to water. ( I just realized I used the word apple unintentionally ;)

End of the day it's about getting the job done. Try to see the forest instead of the trees.

Most people don't even know what "GUI" and "CLI" stand for...

Interestingly, the only reason why people are defending GUI here is that the terms GUI and CLI are not known for Windows or Mac users who make 99% of the entire desktop user base. If I started talking about "CLI" or "GUI" to average Windows users, they wouldn't know what I mean. GUI seems to be the de-facto standard thing for 99% of the whole user base, and it would be unlikely that they would have heard the term GUI (graphical user interface). Thus, it's no wonder we have all these seasoned Linux users defending something that could be regarded as the standard thing for them back in the day before Linux became a bit more mainstream with Ubuntu and Mint.

By the way, none of my friends were even aware of the fact that there's a Command Prompt (CMD.exe) on their Windows machines. I must be one of the few who actually use it every now and then... But anyway, how many old-school Linux users do not know that there's something called 'Terminal' on their OS? Hardly anyone I guess! Nowadays, new Linux users don't prolly know particularly much about Terminal as more or less everything can be done graphically. Of course, when they encounter problems, all the advice is given for Terminal and that's how they discover the whole thing but even then it's just copy'n'pasting all the commands.

No GUI, No Mass Consumer Adoption, period.

And this is why my wife will never buy an off-the-shelf Linux box. Fortunately she has me, so I can do all the CLI stuff for her. That's the ONLY reason she will soon be using an Acer C7 Chromebook dual-booted w/ Ubuntu 12.04.

It's been a long time since I futzed w/ Linux but the process of getting Ubuntu set up reminds me of all the reasons why I never switched over before. Prime example is how every time I search for "how do I" I am given hundreds of responses, all of which involve typing commands into the terminal. Even back with Windows 3.11 I could at least hack a bunch of stuff by editing config files in a text editor! And it was a rare day when I had to open a terminal in OS X (six years of usage). And yet OS X has UNIX roots. Trust me, it wouldn't have jumped to the heights of popularity with consumers if every user had to first read the BASH user manual.

FYI, in case you're wondering, we are switching over for practical and budgetary reasons. After spending a year in Mexico we ran into reality. MacBook Air repair there was going to cost us $800, flat, period. No other options. When we returned to the states for a visit the repair cost dropped to $300, maximum. (ended up being zero, we got lucky). But parts fail, and we're about to head to Nicaragua and points south. So we need cheap and repairable laptops. Enter the Chromebook...

Of course, none of this matters if you want Linux to remain a niche toy for geeks and a back-end server platform. There is no usage barrier in those realms for a CLI-driven OS. That's why most of the people here on this site love them some CLI. But don't be surprised if your non-geek friends and relatives still won't use it.

FYI, I expect my wife will keep her Acer in Chromebook mode 90% of the time. For those few uses where she requires something more powerful (we have some language DVD's which only run in Win or OS X) she will switch over to Chrubuntu and fire up a Virtual XP machine. A machine which I will set up for her. But for my Mom and Dad? Their next computer replacements will very likely run on ChromeOS. 100% GUI.

So I, personally, am all in favor of Ubuntu continuing to explore the GUI-driven path. Now excuse me while I go search for GUI interfaces for apt-get (outside the Ubuntu store) and starting and stopping services...

The CLI is not obsolete,

The CLI is not obsolete, since it is far too flexible to build a GUI for every possible usage. How do you package that raw power in an understandable GUI? Instead, why not be concise and just *tell* the computer to do what you want? Man pages, Google, and auto-complete (tab-tab-go!), among other conveniences keep the CLI from feeling tedious.

Besides, this article: goo [dot] gl [slash] TYXgxv
shows that computer newbies take to the command line like fish to water, but have trouble understanding a GUI.

I'm no senior newbie, though -- I'm 20 yrs old. I don't study computers at all (I study chemistry), but I still use the CLI. I use the GUI and CLI in combination. Specifically, I use the CLI for efficiency and batch processing. Sometimes I switch to the CLI for clarity, too -- errors/exceptions are usually printed explicitly there. I can also be much more specific about my commands in a shell. So, the CLI *is* relevant, even to non-CS/IT folks.

BTW, NASA, CERN, and many other major scientific organizations use Linux and the CLI, heavily. Since they are the very definition of awesome... well, the CLI is *not* obsolete, and it is certainly *not* crusty.

Now some responses...

@ MSP -- Real men don't use the GUI? Lol, are you serious? If you haven't had to use a CLI in a while on *any* OS, then you haven't done anything worth mentioning.

@ Deebo -- Except, the CLI *does* get the job done, frequently, and often faster. So, most users would *benefit* from the command line -- if they could be bothered to learn it. Winblows has just perverted the PC culture by obfuscating the CLI, and so has trained the majority of users to fear it.

@ Glenn Dixon -- No, your wife is fortunate to have you because she is scared of the idea of Linux, not because she is somehow unable to use it, or less intelligent than you. I bet you occasionally throw a bit of (fairy trivial) Linux/CLI jargon at her every so often, just to emphasize how 'awesome at computers' you are. Also, who gives a crap about consumer adoption? Really, popularity games? Are you 12 years old? Cheers, moron.

CLI vs GUI

My first computer ran DOS, I had it when I was 18. Then came a Windows machine. Then I moved to Linux with KDE. I am now 41 years old and have never ditched the CLI. Rather, I am now using it more than ever, and I ditched KDE. In case you wonder I still use a window manager, but do not have icons or status/task bars; interaction is all done through a shell that is open all the time.

So does this make me a 'crusty old relic'? Hardly, so let's look at the shallowness of this claim (by no means will I suggest to use the CLI exclusively!).

1) The CLI gives me something which the GUI has taken away: CLI interaction is about explicit, no baggage communication with the machine: text goes in, text comes back out. This is more than just feeling in control, it feels like having an intellectual conversation with a colleague: clear, precise, to-the-point. Of course, the learning curve is steep, with -- diminishing -- frustration being part of the ride.

2) In contrast, the GUI is about dressing things up, making things look fancy, with an emphasis on flattening the learning curve. Doing this, I get baggage, and the interaction too often feels like this: 'watch a documentary about a place, rather than go see the real thing'. Sometimes though it is more pragmatic to use a GUI: think images; or having email, address book and a calendar in one field of view. Still there is a good deal of frustration: having to move back and forth between windows, and between the mouse and the keybaord!

3) When making sweeping statements like:
"You mostly have to use the command line to configure Linux because developers don't bother to write GUI facilities to do it ... This is a particular problem for “ordinary users” who are persuaded to take on Linux as a free, open source GUI based alternative to MS or Apple products, and only later realise that they have been conned because the GUI is only partially implemented."

You what?? One cannot help but wonder if MSP's real motivation is commercial -- he or she might primarily be interested in selling GUI software. And such software sells better if it looks fancy. --- I'd be happy to stand corrected if MSP tells me that he/she is not interested in selling GUI software, but as of the date of writing this I cannot help but wonder.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Post new comment

CAPTCHA
We can't accept links (unless you obfuscate them). You also need to negotiate the following CAPTCHA...

Username:   Password:
Create Account | About TuxRadar