The Command Line - The Best Newbie Interface?
osnews.com
osnews.com
I myself have experienced this problem when teaching new users: people who haven't grokked the basic logic of GUIs find it extraordinarily difficult to infer what to do next in a particular situation. And all of us who design GUIs have grokked this, so we can't help the people who haven't.
Another pernicious effect of GUI, for me is the mess I do of my file hierarchy when I have it. Even I knew the command line.
Really? When I open bash it doesn't show me anything. When I am trying to muddle through a grep it gives me 0 feedback. Unlike say Regex buddy that gives quite a bit of feedback. GUIs may have the problem of overwhelming the new user with too much feedback but the CLI suffers from too little feedback. It is much easier to simplify the GUI than it is to beef up the command line.
I think that we're talking past each other - I'm talking about expressiveness (once you know the system, you can easily ask the right questions and get rapid, informative feedback), while you're talking about discoverable interfaces (if you've never used it before, can you figure it out?). There's a certain point past which having a discoverable interface is overrated. Complaining about a system advanced as (say) AutoCAD not being intuitive is a bit silly, IMHO.
drscheme, allegro lisp,squeak,dolphin smalltalk,idle. Most of the REPLs I use aren't CLI and are the better for it. I certainly don't see this as a discoverable vs expressive debate. It is expressive(the app) vs expressive(the user) debate. A GUI allows the App to be more expressive. CLI has only one way of expressing anything to the user, slabs of text.
Navigating a GUI over the phone is a skill that few possess.
Recently I had to perform a very simple image manipulation: given two images, I wanted to use the second one (which was all grayscale) as the alpha channel for the first one. I spent quite some time googling for things like [gimp alpha channel] and reading various tutorials, which were very nice with screenshots etc. and still I couldn't really replicate the process. Then in a flash of genius I replaced "gimp" with "imagemagick" in my query. The first page Google took me to contained a command line which I copy-pasted and it did exactly what I needed.
However, research has shown again and again that GUIs are better at most tasks, but not all. One obvious example would be photo handling or sorting, I'd rather do that sort of thing in Picasa where I can see and drag and drop, than through the command-line where I'd have to move the images by remembering their filenames.
As always, what the "best" interface for something is depends enormously on what tasks you want to perform. If the task is simply to overcome your fear and having the computer do something, anything, then sure, a CLI might be a good idea.
Also, there is an interesting point here. Its not that graphics are bad, but that the CLI is a better starting point. This means (I think) that people should be happy pulling up GUIs from the command line. E.g. it might be easier to type
vlc "My_Birthday_Part.avi"
then opening vlc from the desktop and searching around for the file. If you think about its, not even very intuitive that you click "File --> Open" since most people don't think of the movie as a file. It's only a file in our (sorta wacky) jargon. <edit>Also, I don't want to "file an open" I want to "open a file."</edit>
Finally, this might lead to a better UI design. Something graphical but sequential could be good for many people.
Just random thoughts inspired by the article.