nV News Forums


nV News Forums (http://www.nvnews.net/vbulletin/index.php)
-   Microsoft Windows XP And Vista (http://www.nvnews.net/vbulletin/forumdisplay.php?f=11)
-   -   Thoughts on the command line as an interface. (http://www.nvnews.net/vbulletin/showthread.php?t=1457)

lunix 09-02-02 10:00 PM

Thoughts on the command line as an interface.
Recently upon hearing an account of a friends travels in France an idea came to mind regarding user interfaces. In particular command line interfaces. What does someones travels in France have to do with command line interfaces? . Read on and I will tell you.

Curious, I asked my friend what it was like to be in a country where you do not speak the language. She said that you develop the habit of pointing. You point at menus to order what you would like, you point at doors, busses and anything you need. After she returned she continued pointing out of sheer habit. She would point at the salt to have it passed to her, causing her friends to give her funny looks. It occured to me that gestures are a great way to interface with people if you do not speak the language. By simple gestures we can convey or basic needs and indicate simple things we would like to accomplish. There are many more gestures than pointing of course but it is, no doubt, the most widely used.

Learning a language is a long and difficult undertaking. Even once we begin to use the language we are very limited. Sentences take long to create and even longer to process. The speaker will often leave us far behind and reeling from the effort of trying to keep up. We might only catch the odd word and have to use context to deduct their general meaning. If our vocabulary is limited we could feel quite frustrated trying to communicate.

Once we learn a language, it becomes easy rapidly express concepts and outline requirements. All this can be done so efficiently that we are hardly enven aware of the language used, the concepts flow easily and freely.

This same concept has been applied to computers. Microsoft, by copying the GUI concept, brought computers to the masses. Suddenly we all could point at what we wanted and manage to operate a computer. This was a large step towards the adoption of computers into everyday life. Of course there are limits to pointing, clicking dragging and dropping. Limits in speed and limits in breadth of concept. However, there is no denying that initially it is much easier for us to operate and manage a computer with a point and click interface.

Users of the shell or command line interfaces often praise its value. It is often hailed as rapid and much more powerfull, however, little effort has been put into explaining why. Some people say that the command line is much more efficient and easy, these people speak the language and may not be aware that they are using the same part of the brain that turns concepts into words with the greatest of ease. Much more people argue for the GUI, stating that it's modern and easier, these people are partly right.

They are wrong in the fact that it is modern. It's like saying cave men are modern because it is easier to sit around the campfire pointing at things rather than sitting around the campfire telling stories. They are right in the fact that it is easier. Just because the GUI concept is newer than the command line interface does not mean it is a more advanced concept.

The shell is your link to the operating system. Every one comes with it's own little language. The verbs are the executables which perform actions upon the nouns. The nouns are the files.

In the UNIX philosophy every thing is a file so it is nice and easy to make a little language. Also there are little grammatical extras, courtesy of the shell, which help us create a language that is more complex than "run Jane run".

At first when we are learning the language we will be using very simple sentences like "Copy this file from her to here". Sooner or later we will be performing more complex operations like "Show me all occurrences of the word FIXME in all C++ files in such a location, please add the line numbers as well." or "find ~/work/bm/ -name "*\.cpp" | xargs grep -n FIXME". This may mystical and daunting if you do not speak the language but I wrote the Unix equivalent with less thought much more quickly than the English one I can assure you.

I have tried many of the GUI's and desktop environments that have come along over the years but constantly find myself going back to using shells for everything. Why would that be? They are after all much lauded and seemed so necessary a few years ago. The reason is that when you speak the language of the shell suddenly using a computer becomes very natural. You tell it what to do and it does it. If you don't know a word you ask it what the word means. No longer are you limited to manipulating files on screen you can almost instantly manipulate files anywhere. You have a language for expressing difficult tasks and you are no longer limited to what you can simply point at.

Yes I admit people who look at the command line think that pointing is much easier, they are party right. This is only because they do not speak the language and to them it appears as gibberish and some arcane art. Of course for those who have taken the time to learn the language especially those who must use a computer profetionally are very glad to not be limited to gestures alone.

volt 09-02-02 10:14 PM

Interesting read Lunix :)

I my self have trouble with that transition from GUI to shell. But as you said I "speak better GUI than CLI" ;)
I wish it was the opposite. It's always easier to learn less complicated things like GUI.

sebazve 09-05-02 08:11 PM

The point is having both a powerful GUI and command line (which both linux have) are important for an OS but according to microsoft the command line is useless and a nice GUI (which is different from powerful) is everything. In my opnion a power command line is a must for remote control/access, managment and configuration. Also a powerful GUI (Gnome or KDE) are a must too.
M$ may have "the best GUI" but their console sucks its DOS style just make me wanna vomit, THANK GOD we have Cygwin!

lunix 09-05-02 08:59 PM

Thanks d1rx, its a little thingy I jotted down one day. Another thread on this group was putting down the command line so I decided to post it.
A few years ago my employer told me I had to use NT. I installed cygwin and gvim and got to work :)

Feanor 09-10-02 11:48 PM

And then, speaking of M$ GUI's, the code they sometimes generate can be a horrible and inefficient mess. Take a look at M$ SQL which is produced by the wizards in Access. Something as simple as linking a bunch of tables together, they have to put the CPU through more operations then is necessary. On a home dBase where one only has maybe 10 records or so, no big deal, but on a large dBase such as the phone company kept, going through all of that just to look up your account could be the difference between something that is relatively snappy and something that could keep the customer waiting on the phone for what seems like an 8088 server. Just the act of joining 2 tables together and displaying several fields can result in useless commands being inserted or redundently inserted...

Some of the HTML M$ development tools like Front Page generate are also similarly inefficient compared to some of what could be generated by hand. I find it better sometimes to use such tools (to get a general outline of what will be generated) then go in there and delete all the useless lines of code and hand optomize it after.

And another thing I wish M$ would confront is their propensity to take the concept of a wizard (sometimes not providing another means) too far. Wizzards can be useful for seldom done or complicated tasks (for n00bs especially). However this can be taken too far, and things people know how to do shouldn't be delayed by a game of 64,000 questions, when the person is like "d*mn you, just get on with it. I could do this faster then going through this stupid inquisition here..." Another reason to provide more then one method...even n00bs can eventually learn, at which point what was an aid for them can become annoying. Lets not even go into Mr. Clippy (which luckily can be disabled) :p

Renzo 09-11-02 01:38 AM

Ah oldies goldies. I think my first computer experience happened somewhere early '80s when my father got "nice and shiny" spectravideo. I would guess the year was 1981. From that day I've been using computers and my first PC experience is late '80s (probably 1988?, 8088 cpus and stuff ;) ).

Uh a bit offtopic...heh, anyway I told this because I've been using command line based operating systems (spectravideo had one, C64/128 had one, PCs had many) about 10 years or so. The latest addition is of course different *nix based systems.

I like using command line as long as it won't go too difficult (I mean over 15 words and 10 switches :) ). Actually I hate Windows GUI and X being a bit better looking doesn't really count too much.

Nephilim 09-12-02 10:54 AM


OSX. Get the best of both worlds. Sweet GUI when you want it, powerful CLI when you want it (you can even go GUI-less if you feel the need).

Not starting PC/Mac war. Just stating facts.

sebazve 09-12-02 03:36 PM


Originally posted by Nephilim

OSX. Get the best of both worlds. Sweet GUI when you want it, powerful CLI when you want it (you can even go GUI-less if you feel the need).

Not starting PC/Mac war. Just stating facts.

Well OSX is based on Unix:p
I heard that there is a project to bring OSX to pcs that would be cool:D

Nephilim 09-12-02 05:10 PM

I wish Apple would, but they aren't going to.....

There was a rumor going around when they were working on it originally that they were going to port it to x86, but it turned out to be just that, a rumor.

It's unfortunate...but I can understand why Apple won't port it. As it is, Apple has pretty much complete control over what hardware works in their computers which eliminates a LOT of the compatibility issues that people in the PC world normally have.

Keeping OSX on Apple hardware pretty much keeps the money going directly to Apple, and keeps the Apple users away from a lot of the headaches PC users have to deal with sometimes when video card x won't work with motherboard y.

netviper13 09-12-02 06:43 PM

I thought the rumor regarding Marklar had been confirmed?

Nephilim 09-12-02 08:44 PM

Sadly no....

All times are GMT -5. The time now is 12:02 PM.

Powered by vBulletin® Version 3.7.1
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Copyright 1998 - 2014, nV News.