An early-80s ad for Apple's Macintosh showed an office worker attempting to use an IBM-PC (8086) running MS-DOS. He types something. The machine flashes "SYNTAX ERROR". He tries to re-enter the same command two more times, gets the same error message. Then he freaks out, produces a chainsaw from under his desk and chops the machine in two.

That's how I feel about having to use command lines.

When I first learned to use computers, the weak processors and primitive operating systems of that day wouldn't support graphical user interfaces. The command line interface was all there was. It relied heavily on rote memorization, something I'm not very good at. For applications and functions which I used often, it wasn't such a big problem. For seldom-used functions or when software was changed, it often meant that I had to drop everything and call a proctor, or plow through a virtually-unreadable software manual (unfortunately, good programmers weren't always good writers). Sometimes I went crazy trying to figure out why a complex command kept resulting in error messages, only to find that the problem was a misplaced period or space. Or that the argument needed a comma before it. Or a slash after it. Or some other stupid syntax issue.

Then came the menu-driven applications, and the graphical user interfaces, first the incredible MAC-OS, then the much less elegant but still functional MS Windows. What a relief! Instead of having to carry complex instructions in my head, I could click on a menu and find out how to perform a given task.

I started using Linux just this year after years of using Windows. I switched because of the horror that is Windows Vista. I decided that I had had enough of Microsoft's concentration on "wow" (and DRM) at the expense of functionality and dependability. The graphical environments in which Linux functions, like KDE or Fluxbox, are mighty impressive. It's hard to believe that something which functions just as well as or better than Windows could come from a co-operative community of amateur, semi-pro and professional programmers, all working hard to promote computer literacy in the best way possible - by making it possible for people who don't have scads of money to blow on software to have access to personal computing on a first-class level, not a bare-bones level. Revolution OS indeed!

My sole complaint is that certain functions, including some fairly critical ones, must still be accessed in the command-line environment.

Don't get me wrong. Command lines do have their uses. But not for nothing did Apple and Microsoft develop their respective GUI's. Each time I have to use the command-line, it's like I'm back in programming class all over again (which I suppose I am), with a very understanding Linux-junkie friend in the role of proctor. It is dismaying to have to try and set the parameters for my sound system using the primitive, DOS-like user interface of the ALSA mixer, or to have to open the terminal because the appropriate function in the GUI doesn't quite do the job that I need done. And a lot of documentation, on and off-line, is still written in such a way that my mind cannot quite get around it.

I love Linux, I'm glad there are people out there who are taking positive action against Microsoft's virtual monopoly, and I certainly prefer the community of Linux users and developers to the indifferent-to-nonexistent "customer service" departments of most hardware and software companies. But I still wish that I didn't have to cross that time-warp back to the bad old days of computing each time I have to perform a certain task or change a certain setting not accessible through the GUI.

At the same time, once we learn to use it, the command line becomes a welcome and powerful tool. A lot of tasks are quicker accomplished this way. Also, it is much easier to help some out when you can give them commands to type, or even better: copy and paste, into a terminal.

GUI and TUI are not mutually exclusive. Most Linux users use both.

For most tasks you can find a GUI tool. However, if you want to keep your system lean and fast, some CLI knowledge will be required.

I was reading that Windows Server 2008 will come with a groundbreaking new feature: the ability to boot into text mode. Now that's progress!

I do agree the command line can be hard at times. Especially the rarely used commands. I just don't have the memory I used to, so I quickly forget useful commands or combinations of commands. Thank goodness for Google.

But I don't know how there could be a GUI that mimicks all of these commands as the command combinations are unlimited. You may come up with a command or a combo of commands to do a very specialized task. That would be one heck of a GUI to handle all the possibilities.

Exactly. Or it would take 1 minute of moving and clicking the mouse for what might be accomplished in 10 seconds on the keyboard. Numerous examples abound. However, you're right, it takes effort to learn all the command possibilities.

« Last Edit: December 06, 2007, 11:46:50 am by lagagnon »

Logged

"As people become more intelligent they care less for preachers and more for teachers". Robert G. Ingersoll

I never studied programming. It's something I've never had the slightest interest in, though I certainly appreciate the efforts and admire the skills of those who make it possible to use a computer to do things we didn't even dream of back in the old days. Yet I don't mind the command line and in some cases prefer it.

Being not particularly technical, I can't remember all that syntax. However, in Linux we do have -h or --help we can type after a command and find some usage rules and examples. There are also man pages for most commands, and while they usually go over my head very quickly, I can find the snippet I need for the command I want to run. If we don't know what command we want, we can type something likeapropos moveand get a list of commands that have something to do with moving things. If we don't know where a command is, we can dolocateorwhichorwhereisfollowed by the name of the command.

I must mention that you can also find syntax help for Windows command-line commands. I don't think we had it back in 1987, but it's been available for several years.

My first computer (1987) came with MS-DOS 3.2. Not too long after I got that computer, some programs called shells started coming out. These gave you a screen something like Midnight Commander's and you could manage your files by highlighting and pressing a key combination or function key and some also had a menu for starting your programs. These shells made things a lot easier for the memory- and syntactically-challenged user like me.

Midnight Commander is my faithful friend in managing Linux. It makes it much easier for me to copy files, move files, delete files, change ownership and permissions, create symlinks, edit files, look inside files, and manage groups of files at once. I've never been that fond of Thunar or Konqueror because to me they're clumsier than Midnight Commander.

I'm surprised you find Alsamixer "primitive." I mean, it has a picture and it couldn't possibly be easier to move the bars up and down.

I'm not a Microsoft basher and Microsoft has nothing to do with my preference for VectorLinux as my main operating system. I use Linux because I think it's much more fun than Windows. My laptop has Vista and I certainly don't find it to be a "horror." In fact, I've had zero problems with it, all my hardware except for an old QuickCam is compatible including four printers, one of which goes back to 1993, and nearly all my old software works fine (this includes Win 3.1 programs going back to the early '90s). The hardware requirements are hefty, though. I didn't even look at laptops that had less than 2 gigs of RAM and 64-bit dual-core processors. But so what? The laptop actually cost less than one I bought in 2003 and has much better specs.

While I think our user community here is terrific and a strong reason for using VectorLinux, I hasten to point out that there are some very good user-to-user forums for Windows users and you're not at the mercy of "indifferent-to-nonexistent 'customer service' departments."

Linux is about choice. There are distros whose announced goal is to make the command line totally unnecessary. Those who hate command lines could go to one of them and be happily at home. It doesn't look as if VectorLinux will go there and I'm glad. If I'm using Linux, I like to use "real Linux," not a Linux so jazzed up that a Windows or Mac user might never notice it's a different operating system.--GrannyGeek

Your points are well made. If I may offer an insightinto why GUI is not the answer in Linux or Leopard.

First MAC has alot of command line tools available.

The tools that are available can have 10 or more switchesavailable. How would you develop a GUI to solve that problem.

There are those that feel that CLI should be eliminated. I am not sure it is possible since in its' current state Linux is all CLI with a GUI sitting on top of it. It could be done, MS did it but not too many are interested in repeating MS mistakes.

Your rant appears to be saying that Linux should be more like Windows. So the question is why? Linux is not like Windows in philosophy, principle or design.

I'm not a Microsoft basher and Microsoft has nothing to do with my preference for VectorLinux as my main operating system. I use Linux because I think it's much more fun than Windows. My laptop has Vista and I certainly don't find it to be a "horror." In fact, I've had zero problems with it, all my hardware except for an old QuickCam is compatible including four printers, one of which goes back to 1993, and nearly all my old software works fine (this includes Win 3.1 programs going back to the early '90s). The hardware requirements are hefty, though. I didn't even look at laptops that had less than 2 gigs of RAM and 64-bit dual-core processors. But so what? The laptop actually cost less than one I bought in 2003 and has much better specs.

Well, resources here on Earth are ultimately finite and Windows (especially Vista) leaves less room for using applications. I don't want the software I use to waste most of the hardware I throw at it. A lot of my classmates here at college have had pretty bad experiences with Vista and I don't care for it at all.

Returning to the subject of the OP, I daresay that some distributions are more inclined towards the Windows approach. I have remained faithful to Vector in spite of its flaws because I find it to be an easier version of Slackware (which is command-line centric), because it is very lean and, most importantly, because the community is great. Your mileage may vary. Mainstream distributions such as Ubuntu and SuSE, for example, might be more appropriate for someone who is accustomed to the Windows way of doing things.

Before long, youngtomedison will be able to make ASCII characters dance like flaming moths and will wonder why he ever doubted the value of the command line.

ROFL

--

It's the combo of CLI and GUI that is the winning combination. Sure! The CLI takes a long time to learn. But if you realize the CLI has ~2500 commands, each of which has multiple options and they can be used in combination as well.... If you where to design a graphical interface for that it would become so complex in it's own right....

You know, sometimes it bothers me to do something in the GUI 'cuz I just can't find the button I need to click. Sometimes the CLI bothers me because I cannot decide which flag to raise. And I'll be darn if I have ever been able to remember the flags needed to extract the different archive formats from within the CLI. I actually solved that by making a script called <howtar> which echo's a list of options. And the next time I'm gonna extract an archive I'm gonna test my homebrew script <atar> which decides which flags to use automagically. *sigh* I just can't memorize them...

There is no possible gui to beat pipes and such. The thing is, what we call 'the command line', is a very powerful language, and innumerable things can be done with it a gui can't. O f course, in the other hand we have the learning curve.I think vl has the perfect balance respecting gui / cli usage. You could spend month without viewing a terminal, and you could view it only when other forum member ask for it and tell you what to write.

Logged

"There is a concept which corrupts and upsets all others. I refer not to Evil, whose limited realm is that of ethics; I refer to the infinite."Jorge Luis Borges, Avatars of the Tortoise. --Jumalauta!!

What I also soon found out, is that the Linux shell is a far cry from ye olde DOS. It is a modern and maintained tool with features like auto-complete, scroll capability, editable history, copy/paste, clickable links and no need to hunt for that darn backslash, which has no standard keyboard location.

I will admit that documentation is not the greatest, though. Without internet search, I could not do Linux.

Before long, youngtomedison will be able to make ASCII characters dance like flaming moths and will wonder why he ever doubted the value of the command line.

ROFL

--

It's the combo of CLI and GUI that is the winning combination. Sure! The CLI takes a long time to learn. But if you realize the CLI has ~2500 commands, each of which has multiple options and they can be used in combination as well.... If you where to design a graphical interface for that it would become so complex in it's own right....

You know, sometimes it bothers me to do something in the GUI 'cuz I just can't find the button I need to click. Sometimes the CLI bothers me because I cannot decide which flag to raise. And I'll be darn if I have ever been able to remember the flags needed to extract the different archive formats from within the CLI. I actually solved that by making a script called <howtar> which echo's a list of options. And the next time I'm gonna extract an archive I'm gonna test my homebrew script <atar> which decides which flags to use automagically. *sigh* I just can't memorize them...

archive formatsGuess what? Tar is smart enough to figure them out by itself. just leave the flag for the different archive formats off. "tar xvf" works on everything i've ever thrown at it.

It's the combo of CLI and GUI that is the winning combination. Sure! The CLI takes a long time to learn. But if you realize the CLI has ~2500 commands, each of which has multiple options and they can be used in combination as well.... If you where to design a graphical interface for that it would become so complex in it's own right....

Perhaps, but everyone uses only a very small subset of those commands. According to the bash directive 'history', I only use something like two dozen commands on a regular basis.

Well, like GrannyGeek, I both use Vista and am disinclined to bash it (truth be told, I love it - it works beautifully and looks even better) but there are times I despair its lack of CLI, which I have become quite fond of in VL. Using multiple desktops, I frequently have at least one desktop devoted solely to a CLI. Additionally, I generally find all the help I need for most commands in the man pages - what I can't find, the community here is quick to provide. Of course, the community can't always help (my laptop cardreader srsly u guys ) but in those instances, it just means I have to dig. And by digging, one learns.

Fun and games all 'round.

And no, I likely will never give up Windows entirely - I still play too many games (and DirectX10 games look jaw-droppingly AWESOME)