Slashdot Mirror


The Command Line - Best Newbie Interface?

An anonymous reader writes "This essay describes the surprising results of a brief trial with a group of new computer users about the relative ease of the command line interface versus the GUIs now omnipresent in computer interfaces. It comes from practical experience I have of teaching computing to complete beginners or newbies as computer power-users often term them."

885 comments

  1. The 'help' command by nokilli · · Score: 5, Insightful

    I'd wager that computer literacy amongst people who've tried Linux would be twice what it is today if when you typed help foobar bash would perform a man foobar if 'foobar' wasn't a builtin command. And it'd probably be double that if you incorporated some kind of search facility too. Type in help disk space and get a hit on the df command, for instance.

    1. Re:The 'help' command by pandrijeczko · · Score: 5, Informative
      Just do an alias of "help" to "man -k".

      As long as "makewhatis" is setup first, that will do about the same thing.

      --
      Gentoo Linux - another day, another USE flag.
    2. Re:The 'help' command by TehHustler · · Score: 5, Insightful

      And thats going to make sense to newbies how?

      --

      TheHustler
      http://www.elmarko.org/ - Useless bilge
      http://www.asylum-games.co.uk/ - Co-Founder
    3. Re:The 'help' command by Tribbin · · Score: 1

      Like the 'apropos foobar' command?

      --
      If you mod this up, your slashdot background will turn into a beautiful sunset!
    4. Re:The 'help' command by PRES_00 · · Score: 2, Funny

      Why not come up with a command line wizard that displays a command, gives you information about its function and prompts you for the most personally intuitive replacement designation for that command.This is even more important for non-english speakers.

    5. Re:The 'help' command by SpaceLifeForm · · Score: 2, Insightful

      Doing the man command is probably too much for a true newbie. See 'man ls' or 'man nmap'.

      --
      You are being MICROattacked, from various angles, in a SOFT manner.
    6. Re:The 'help' command by PowerBert · · Score: 1

      I feel bash 2.05b responds well enough.

      $ help foobar
      bash: help: no help topics match `foobar'. Try `help help' or `man -k foobar' or `info foobar'.

      Bash tells me what commands to run to find the information I'm after.

    7. Re:The 'help' command by PowerBert · · Score: 5, Informative

      bash has a help builtin which will direct the user to man and info commands.

      $ help foobar
      -bash: help: no help topics match `foobar'. Try `help help' or `man -k foobar' or `info foobar'.

    8. Re:The 'help' command by oingoboingo · · Score: 5, Funny
      And it'd probably be double that if you incorporated some kind of search facility too. Type in help disk space and get a hit on the df command, for instance.

      How about a little animated 'bash$' command prompt which jumps up when you hit F1, or which politely asks "It looks like you're composing a shell script. Would you like some help!" when you're in a bit of a pickle. You could type in a plain-English question about what you wanted to do, rather than having to remember the cryptic names of Unix commands. When you selected your specific query from a list of options that the animated character presented to you, it would then go on to show you exactly how to enter the command you were interested in. It would be great! You could even theme this 'assistant' according to your shell...it could appear as an animated 'ksh' or even just a '%' sign for those wanting to get on with the job.

      As for a name, what about 'Bob'?

    9. Re:The 'help' command by HidingMyName · · Score: 4, Insightful
      I suspect that new users find Unix/Linux challenging due to historical reasons. Two problems that stick out are command naming conventions and command output.

      It is an unfortunate artifact of Unix history that some of the commands are poorly named. The Help command did exist in Unix, but it was the help system for sccs (too bad there wasn't sccs --help or some such convention instead). There are a few other pet peeves of mine, grep might be better named search, etc.

      Command output is problematic since users often expect feedback. For example when we grep on a file and don't find the pattern, grep does not generate any output. From a programmer point of view that is definitely the right thing (especially since these commands are used as filters in a pipelined fashion), however, from a user centric point of view there may be an expectation of a report that the pattern was not found. I'm pretty used to the Unix/Linux way of doing things, but new users are not.

    10. Re:The 'help' command by Talez · · Score: 4, Insightful

      Nope. Sorry. man is crap for a newbie.

      What Linux needs is a MS-DOS 6 style help command. When you type help it pops up a nice ncurses screen of all the different commands available on linux systems, briefly what they do and a link that can take them to a simplified, easy to read page of advanced things to do with the command.

    11. Re:The 'help' command by zymurgy_cat · · Score: 5, Insightful

      I'd wager that computer literacy amongst people who've tried Linux would be twice what it is today if when you typed help foobar bash would perform a man foobar if 'foobar' wasn't a builtin command. And it'd probably be double that if you incorporated some kind of search facility too. Type in help disk space and get a hit on the df command, for instance.

      What I'd really like to see is a more helpful man page with examples. It's frustrating when using a new command to read "usage: foobar [VNFHDMudndghfud8734yfhfnbgdh] filename | device | dir | options filename[]" and then read through 5 pages of options and switches I'll never use. If every man page had at least a few examples of how to do stuff most people want to do, it'd be easier to both do those things and learn the more complex commands.

      Another nice thing would be a howdoi command which allows the input of natural language and spits out a small man page (with examples!) or help file, ie, "$>howdoi see how much hard drive space i have" spits out how to use df.

      --
      -- Fugacity: Confusing chemists since 1908
    12. Re:The 'help' command by j2brown · · Score: 1

      perhaps something like: foobar --help
      Some results may still be too complex though.

    13. Re:The 'help' command by Anonymous Coward · · Score: 0

      How about Knoc - Knoc's NOt Clippy?

    14. Re:The 'help' command by Moderation+abuser · · Score: 4, Funny

      Apropos? Yes that's the word that springs instantly to mind when looking for help on something... Apropos. Not "help", no never. Who would ever think of typing "help"?

      --
      Government of the people, by corporate executives, for corporate profits.
    15. Re:The 'help' command by toesate · · Score: 1

      A command line wizard? One where you have to type Next, Next, Back, Next, Finish?

      Not quite useful for getting a newbie *truly* onboard.

      Personally, I think a command line tool with _predictive_text_ capability will be more interesting. (Think mobile phone sms)

      Don't you find the Ctrl-R to search back the command history in bash very useful.

      --
      Hey, that's my password you are typing
    16. Re:The 'help' command by gmack · · Score: 5, Interesting

      When I was in highschool I switched my PC from windows 95 to Linux after my sister had damaged my windows install. After the initial horror at what I had done wore off, my younger brother and sister got used to the new system. Four months later I discovered they were both making extensive use of the command line. I hadn't tought them a thing so they learned on their own. By the time I moved out I had my mother using pine over ssh to read her email.

      Most of the trouble of Linux is the inertia related to not wanting to learn new things and not being technically difficult.

    17. Re:The 'help' command by selderrr · · Score: 5, Funny
      [ldab:~] selderrr% help alias
      help: Command not found.
      [ldab:~] selderrr% help help
      help: Command not found.
      [ldab:~] selderrr% help me
      help: Command not found.
      [ldab:~] selderrr% help me asshole !
      help: Command not found.
      [ldab:~] jeroen% can you help me ?
      can: No match.
      [ldab:~] jeroen% where can i get help ?
      [ldab:~] jeroen%
      [ldab:~] jeroen% find help
      help: help: No such file or directory
      [ldab:~] jeroen% locate help
      ... (machine goes off into dumping half my 150GB)
    18. Re:The 'help' command by Gildor · · Score: 5, Funny

      I wonder how many Windows users, would, if they read your post, say "Hey, what a great idea!". Reminds me of a Dilbert cartoon. Dilbert jokingly tells the PHB that in order to get more customers they should start a massive spamming campaign. When Dilbert goes home, Dogbert says "You look like someone who was just put in charge of his own sarcastic suggestion."

    19. Re:The 'help' command by jennifer_l · · Score: 3, Insightful

      Y'know what got me into the man command in a big way? Playing MUDs and learning to parse through steadily more complex help documentation as my character advanced and wanted to do more things. The docs in the MUDs I played were chatty, informative, helpful and most of all you could generally find out how to do what you wanted to do within the first page of help.

      I've been thinking for a while (after teaching students some HCI at least) about a game-driven OS UI. Takes me back to usability testing at $BigSoftwareCompany and the way that subjects would treat the Director mockups as a game, see who could click on the right thing first, click anywhere and it won't break... but I think something commandline based that has the degree of thought put into it that a MUD has could be a great hit.

      j

      --
      long sentences mean i haven't had enough coffee.

    20. Re:The 'help' command by Mixel · · Score: 1

      The xman application does that, only that has an X11 GUI.. *grin*

    21. Re:The 'help' command by mwing · · Score: 3, Insightful

      I thought the apropos command was just for that purpose. Granted that newbies probably don't know to type that, but it is quite easy to have the console print a few helpful commands when the user logs in. Maybe the distro's should add a default motd to newbies?

    22. Re:The 'help' command by Anonymous Coward · · Score: 0, Troll

      Why should we be handholding these lusers? Sure I have the BOFH mentality, but is it so wrong to think that perhaps these people should open a book before they try to operate some technical equipment? People who operate cars, airplanes, and nuclear reactors all have some sort of rudimentary training. Why is there such a psychopathological fear of reading a book rather than inituitively figuring something out? Do you look somehow stupider by reading the instruction manual when you put together your Lego Mindstorm than someone who fumbles around? Is a man who can't intuitively program his VCR somehow less of a man?

    23. Re:The 'help' command by Skinny+Rav · · Score: 4, Funny
      What Linux needs is a MS-DOS 6 style help command. When you type help it pops up a nice ncurses screen of all the different commands available on linux systems, briefly what they do and a link that can take them to a simplified, easy to read page of advanced things to do with the command.


      How about info? man interface is crap, but info is pretty user friendly. OK, I admit, I mostly browse info in emacs where it is all flashy and colourful, but AFAIR it is quite easy to navigate also in console. Although a small bar with basic navigation keys on the bottom would help a lot. Of course still quite often if you type 'info foobar' all you get is a man page but that's a different story.

      Raf
    24. Re:The 'help' command by seanmeister · · Score: 4, Funny

      even just a '%' sign for those wanting to get on with the job.

      As for a name, what about 'Bob'?


      How about you make it an @ sign and call it CLIppy?

    25. Re:The 'help' command by adamruck · · Score: 4, Insightful

      wow did you just say info interface is easy? That explains the emacs usage. Also I happen to like man.

      one single page shows up, gives all relavent info, up and down arrows for scrolling, q to quit.

      Now wether people write good content for man pages is another story.

      --
      Selling software wont make you money, selling a service will.
    26. Re:The 'help' command by Anonymous Coward · · Score: 5, Interesting

      > Command output is problematic since users often expect feedback. For
      > example when we grep on a file and don't find the pattern, grep does not
      > generate any output.

      Try this:

      PS1="\w:\`if [ \$? = 0 ]; then echo :\\\); else echo :\\\(; fi\`\\\$ "

      This puts a little :) on the prompt if the previous command succeeded,
      and a :( if it failed.

      It doesn't help if the command was part of a pipeline or some such,
      but it's debatable what sort of feedback you want if something
      in the middle of one of them is unhappy.

    27. Re:The 'help' command by Angstroem · · Score: 2, Interesting
      What Linux needs is a MS-DOS 6 style help command. When you type help it pops up a nice ncurses screen of all the different commands available on linux systems, briefly what they do and a link that can take them to a simplified, easy to read page of advanced things to do with the command.
      Erm... So what exactly is a "command" by your definition? With DOS it was easy: everything which was embedded in command.com (thus the necessity to always carry an extra format.exe)

      On a Unix system, however, there's just directories, executables, and arbitrary data files (yes, yes, and special files to be found in /dev and /proc). You would expect a certain set of commands available to find your way through the file system, but already the shell comes in a gazillion of flavors.

      So I don't think Joe User would benefit from such an ncurses thingy which blasts tons of commands into his face...

      But maybe there's an ncurses version of xman?

    28. Re:The 'help' command by Anonymous Coward · · Score: 2, Funny

      Is a man who can't intuitively program his VCR somehow less of a man?

      Yes.

    29. Re:The 'help' command by DrXym · · Score: 2, Interesting
      Another neat feature would be inline expansion of arguments.

      At the moment if you hit TAB on the command line it will autocomplete a file name. For example if I type "more /etc/pr" and hit TAB it expands out to "more /etc/profile". But TAB doesn't help if I'm typing in other arguments.

      Now imagine the TAB behaviour was smart and used the command context to that. For example, it might know that if I type "ls -" and hit TAB, that it should list the most common flags with a brief description for each. If I type "cd a" and hit TAB I want the first directory beginning with 'a' not, the first file. If I type "gpg --list" and TAB it presents me with "--list-keys", "--list-secret-keys" as possible choices, so I type "gpg --list-s" and hit TAB again and it correctly fills out it out to "--list-secret-keys". And so on.

      How would it do this? Well a command could ship with command template file that says how to expand the argument the cursor is on when TAB is hit. Bash would use that template to determine what to do and if there were no template it would fall back to its default file expansion behaviour.

      It would make using the shell a hell of a lot easier and more interactive than it is now.

    30. Re:The 'help' command by Anonymous Coward · · Score: 5, Funny

      Yeah, there needs to be another default output stream. stdin, stderr, stdout and stdidiot. Stdidiot is where you tell the user verbose output of what you are doing including positive affirmation! Jack Handy beware. Of course one should be able to setenv STDIDIOT=/dev/null to turn that off. Moreover, maybe you re-direct it into a pipe that a consolish app could tail? Then a little ticker window on the desktop closes the loop for those needing positive responses?

      Ok the name was tongue-in-cheek. But maybe there is something the idea. I've been living in Unix for more than a dozen years and most of the time I like the "tell me about it iff there are problems" philosophy, but a centralized ticker might occasionally be handy. As a first cut one could basically write a layer that takes the stuff spewed forth by most utilities when -verbose is kicked in and peel it out to stdidiot. If -verbose is thrown on the cmd line, then stdidiot is echoed to stdout too.

    31. Re:The 'help' command by Anonymous Coward · · Score: 0

      info exists

    32. Re:The 'help' command by darkxsun · · Score: 1, Offtopic

      Why do we need such commands in Linux? I don't think there is any reason to dumb it down to Windows-XP-like-standrads. It's not that hard to go online and look stuff up, or at the very least find someone who can reccomend the "man" command for you...
      i was a newbie less than a year ago, and i figured out everything i could have ever wanted to know about linux (and used every major distribution) in that time. We don't need people on the Linux side if they are too lazy to do some searching.

    33. Re:The 'help' command by Nurseman · · Score: 1

      Most of the trouble of Linux is the inertia related to not wanting to learn new things and not being technically difficult.
      Gotta say I agree wholeheartly. I learned computers from CLI and DOS on an 8088. I loaded ANSI games from a 5 1/4 floppy. After years of using windows, I became spoiled. I've installed dozen's of Linux Distro's, but i haven't "learned" any. I just installed Debian bare bones, no GUI. My aim is to learn to configure things from the CLI. I have the desire, now I just need to overcome my inertia

      --
      Save a Life. Donate Blood. Please.
    34. Re:The 'help' command by Anonymous Coward · · Score: 0

      bash-2.05b$ alias 'help'=info
      bash-2.05b$ help

      And here is your replacement for commands, just use alias dude.

    35. Re:The 'help' command by frodo+from+middle+ea · · Score: 2, Funny

      subtle , extremely subtle.

      --
      for the last time people, I am "frodo from middle eaRTH", not "middle eaST".
    36. Re:The 'help' command by warlock · · Score: 1

      I still haven't found a help system more usable than that of VMS... Assuming really basic knowledge (it was typical back in the day for people to be familiar with basic DOS file managment concepts and commands) you could easily find ways to do what you wanted to do.

    37. Re:The 'help' command by Joey7F · · Score: 1

      I think your "apropos argument" it is not all that relevant.

      --Joey

    38. Re:The 'help' command by A+nonymous+Coward · · Score: 4, Interesting

      I loaded Linux on a Windows 3.1 machine for my kids to get mail (had a domain name) so they could all have their own mail accounts and login; didn't want the arguments from a 16 year old girl and 12 year old boy fighting over a common email account. The 16 year old liked Pine for email, she would rather exit X to read email under Pine, before she learned about xterm.

    39. Re:The 'help' command by Greyfox · · Score: 2, Interesting
      A lot of the old-school UNIX man pages for the C standard library did in fact have examples. The linux man pages for the same functions do not. I found such examples very helpful when I was a newbie C programmer, especially when the function did something esoteric.

      I patched the find man page with some examples and submitted my diffs to the find maintainer a few years back, but they don't appear to have found their way into the man page. That's too bad because the syntax for -exec is not intuitive to a newbie and one of the questions I'm most frequently asked is how to use find to operate on files.

      --

      I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

    40. Re:The 'help' command by socode · · Score: 1

      Non-geeks might actually want to do useful work, and maybe even have dinner with their family, rather than changing their Linux distribution daily/weekly/monthly. OTOH the mere existence of applications, interfaces and/or modes that make things easier for newbies doesn't necessitate removing any existing ones, or preventing advanced users from accessing them. I'm sure you'd have no trouble finding them either.

      Those same non-geeks represent the majority of desktop OS users, and the majority of the desktop spend.

      So can't you imagine why Linux users other than yourself might want more users, more mainstream acceptance, more development, more support, and generally, a healthy hardware, software & support ecology flourishing around Linux?

    41. Re:The 'help' command by Anonymous Coward · · Score: 0

      Yes, great idea!
      You could even make the wizard some sort of talking paperclip that 'helps' you with everything you do.

    42. Re:The 'help' command by Talez · · Score: 2, Interesting

      Like you said, theres a certain set of commands available and most distros just default to bash anyway.

      Can't be too hard for a bunch of geeks to sit down and work out a short list of 15-20 commands that you really *HAVE* to know for the CLI.

    43. Re:The 'help' command by fshalor · · Score: 4, Interesting

      Sorry to dissagree.. Dos help was nice, but the dos TUI sucked for one reason: NO TAB COMPLETION! I am a Linux/Unix admin, and I can't function in environments without tab completetion without a fair amount of consternation, misstyped commands, web lookups and other crap.

      Every user I've ever seen strugging with tab decompletion shells almost instantly became functional when tab competion was introduced.

      Most people find that typing two letters and then tab can get them to anything they want to do faster than finding the mouse, finding the app, doubleclicking, etc.

      No, I will not make the mistake of stating "I love man".. But I can't work well without it most of the time.

      Maybe someone should write one for Linux, just for the heck of it. They can call it "woman". :) Then again, someone probably already has.

      --
      -=fshalor ::this post not spellchecked. move along::
    44. Re:The 'help' command by OoberMick · · Score: 2, Informative

      Sounds like bash completion to me.

    45. Re:The 'help' command by Anonymous Coward · · Score: 0

      ZSH does this. :-)

    46. Re:The 'help' command by jaavaaguru · · Score: 1

      man apropos

      It has a "kind of search facility". I can type stuff like:

      apropos disk space

      and it will bring back commands and files that are related to my query.

    47. Re:The 'help' command by Talez · · Score: 2, Insightful

      I'm not suggesting replacing bash with a command.com replicant. MS-DOS 6 had a very user friendly list of commands that it came with. Each one had a small page that described what it did and how it could be used. The main page looked like an ncurses app.

      For a DOS app it was very polished and very useful for a beginner to DOS.

    48. Re:The 'help' command by ShecoDu · · Score: 1

      bash already has autocompletion :)

      http://www.caliban.org/bash/#completion

      I used it once, it works as desired with directories... i doubt it works with arguments but also works with other kinds of files for example tar can autocomplete to .tar files, it's easy to configure.

      You should give it a try.

    49. Re:The 'help' command by Talez · · Score: 2, Informative

      For anyone wondering what the hell I'm talking about you can find a web based facsimile of the DOS help application here.

    50. Re:The 'help' command by Anonymous Coward · · Score: 0

      I think the person doing the alias to man -k is the system administrator, not the newbie, in which case it would make perfect sense ot the newbie-- because they won't even no about it.

    51. Re:The 'help' command by jez9999 · · Score: 3, Interesting

      one single page shows up, gives all relavent info

      And unfortunately, all the irrelevant info as well. Reading through a lot of manpage is truly soul-destroying, and it's hardly a surprise that they're not too popular with newbies. Try man cvs or man gcc if you don't believe me.

    52. Re:The 'help' command by Anonymous Coward · · Score: 0

      Isn't that what apropos is for?

    53. Re:The 'help' command by starm_ · · Score: 1

      I have started such a "howdoi" project (look in my sig) for now it is on hold. I didn`t get as much example as I would have liked to get. I think I have to redesign the way I gather the examples. Anyways I`m kind of busy right now. But maybe I`ll do another try later.

    54. Re:The 'help' command by Anonymous Coward · · Score: 0

      Please, mod parent up. I had no trouble teaching complete non-technical newbies VMS back in those days. And none of them had ever used DOS; that comment is irrelevant.

    55. Re:The 'help' command by NMerriam · · Score: 4, Insightful

      I will agree with this wholeheartedly. This is a place where DOS did it right and no linux distro yet has matched.

      If you type foo /? in DOS, you'd get a one or two page SUMMARY of how to use the command, half of which was EXAMPLES of how to format command lines for different tasks. 95% of the time this was all that was needed -- for more details, you'd get a book.

      Most Linux man pages are the exact opposite -- they tell you how to do everything under the sun over 20 pages of text, but never show how those options actually fit together on a command line. That is useful information, but it takes for granted that there are NO ambiguities whatsoever, which is very, very rare.

      Show 5 or 6 examples and the "unwritten" rules of how to format the command can be quickly grasped in a way that 200 pages of specs could never make clear.

      --
      Recursive: Adj. See Recursive.
    56. Re:The 'help' command by halosfan · · Score: 2, Insightful

      I certainly agree. However, as someone who started with Unix and only really encountered Windows on my third job after college, I would like to note that it's not necessarily better on Windows.

      When you want to find a phrase in Notepad (or MS Word), how is Edit->Find, or Ctrl-F more obvious than 'apropos search' on Unix is? I found myself repeatedly trying the 'View' menu when looking for a search/find command in Windows editors until I finally memorized that the Find command is under 'Edit'. When you memorize this as a fact with no underlying logic, it becomes as obvious as 'grep' is to a Unix user, but until then it's a struggle.

      I don't think it is bad, though. You'll hear people complain about complex interfaces all the time, not necessarily in computing. A friend of mine was recently whining about skiing being hard because one pressures the left ski when turning right (and vice versa). I am sure that if one-year olds could really speak, they would tell us long stories about how much harder walking is than it really should be.

      In short, to do non-trivial things properly, one has to invest some time in learning them. Until then, things you know seem to be easier than things you don't, even though in reality neither is necessarily more complex than the other.

      --
      My only problem with Microsoft is the severity of bugs in their software.
    57. Re:The 'help' command by Hast · · Score: 1

      Because a computer has one really big advantage to most other tools around you. It has the capacity to tell you how to use it. Since it has that capacity at least IMHO it should be used.

      An idea I've been playing with (as a mental experiment) is to have a system were the user gains access to new commands as he completes tasks with the computer. A kind of a experience / level system if you like.

      Having a large online (computer online not necessarily requiring internet) cookbook of how to do things with your computer. And it should have a lot of examples in order to be useful. Naturally doing a project like that is probabl quite a bit more time consuming than a lot of the more fun programming projects you can do instead.

    58. Re:The 'help' command by Anonymous Coward · · Score: 0

      This guy is right on the money...this is how I learned my way around dos. dos, the old dos, basicly had an ncurses based help system, with color an all. if you just type'd in help it would list every dos command you could use and how to use it etc. and commands hyperlink to other commands, it was a nifty util.

    59. Re:The 'help' command by Skweetis · · Score: 3, Informative

      I think you just redesigned bash completion. This does the "cd a" thing exactly how you want it to. I don't think it handles the argument expansion thing yet though. That would be doable though. Most programs use getopt() to parse arguments, it is probably possible to put hooks into that function that bash could use to do the expansion. It wouldn't be trivial, since you would have to run the program in the background to see what arguments it accepts (probably something similar to how ldd runs a program to determine what libraries it uses), but it could be done.

    60. Re:The 'help' command by Anonymous Coward · · Score: 1, Insightful

      aprops helps. second match for "disk space" happens to be df.

      ~$ apropos disk space
      cfdisk (8) - Curses based disk partition table manipulator for Linux
      df (1) - report filesystem disk space usage
      diskd (1) - disk daemon; wait for disk to be inserted TQ
      diskseek (1) [diskseekd] - disk seek daemon; simulates Messy Dos' drive cleaning effect TQ

    61. Re:The 'help' command by Anonymous Coward · · Score: 0

      > NO TAB COMPLETION!

      There are utilities like filec and others that I've forgotten. Why restrict yourself to just command.com? You wouldn't use the original Bourne shell for interactive work either.

    62. Re:The 'help' command by Anonymous Coward · · Score: 0

      Not only command naming conventions, but also each command's parameter naming conventions. If each command had *entirely consistent* naming of common parameters across the board that's help immensely as you wouldn't need to learn the "quirks". This is obviated to an extent by long parameters such as --help, --directory, --recursive, etc. but unfortunately the shorter options are still waaay more popular (in fact I don't think I've ever seen any online tutorials that use long instead of short params, or even mention them for that matter), which I'm sure hinders the newbie learning curve :(

    63. Re:The 'help' command by Anonymous Coward · · Score: 0

      The good news is that the UNIX Group recently released the original SysV man pages for everyone to use, so Linux should begin to get some useful, well written man pages. With examples!

    64. Re:The 'help' command by FuzzyBad-Mofo · · Score: 1

      Info? I'm not a Linix guru, but I'm far from a newbie. I can compile a custom kernel, configure Samba, Apache, and the rest, but I just don't grok Info (or Emacs for that matter). Asking a newbie to use Info would be an exercise in futility, IMHO.

    65. Re:The 'help' command by Anonymous Coward · · Score: 0
      I'm sorry. When I was a newbie, man helped me learn everything from commands to file formats to the C library and POSIX calls.

      Man is very helpful to a newbie.
      $ man ls
      Will give you way more information than:
      C:\> DIR /?
    66. Re:The 'help' command by Anonymous Coward · · Score: 0
      the apropos command was just for that purpose. Granted that newbies probably don't know to type that
      Maybe French users will... :P
    67. Re:The 'help' command by adamruck · · Score: 1

      no im sorry but thats not right

      all of the info in those man pages ARE relavent. They are hard as hell to understand, they probably dont give examples, and not very intuitive to newbies. But that has nothing to do with relavence.

      --
      Selling software wont make you money, selling a service will.
    68. Re:The 'help' command by 198348726583297634 · · Score: 1

      Thank you. Words cannot express how the added whimsy has improved my command line, so instead I will say:

      :)

    69. Re:The 'help' command by IntlHarvester · · Score: 4, Insightful
      It wasn't just that the index was friendly, the information in the DOS Help file was presented in a very accessible manner -- something that is not done in the GNU/Linux man system.

      For a very simple contrast, compare the information between HELP DEL and GNU man rm

      The man rm example basically sums up everything that's wrong with GNU man pages in a microcosm:
      • First it tells you that 'rm' is good for removing directories, then it tells you that it isn't (unless you are a superuser)
      • There's no examples, except for the side case of a file starting with a hyphen, and even that's unclear (why 'rm.td'?)
      • There's no reference or link to the rmdir command
      • There's no warning about destructive behavior ('rm -r *' etc)
      • Of course, it tells you to lookup an info page

      Now, that's just for a simple example. Imagine a newbie scratching his head while looking at the man page for complex command like grep or find. Basically the man system is only useful if you already know 95% of what the man page is trying to tell you -- and even there it falls down as a reference work because all the real information is in the info system.

      I'm pointing this out because a lot of times Unix Oldtimers point new users to the man system (even on this thread), probably without realizing exactly how horrid it is on a GNU/Linux system. It is not at all accessible to newbies, and probably should just be chucked in it's current form.
      --
      Business. Numbers. Money. People. Computer World.
    70. Re:The 'help' command by Nimey · · Score: 1

      Are you talking about info(1)?

      --
      Hail Eris, full of mischief...

      E pluribus sanguinem
    71. Re:The 'help' command by haystor · · Score: 2, Interesting

      At the youngest ages though a GUI interface is surprisingly intuitive. I found this out when my 18month old began clicking on things. He'd click on an animal, say it's name or make the sound.

      At 19 months he's playing Concentration (memory) on a game called Childsplay (available through sourceforge).

      Childsplay is a pretty cool progam made to add different modules. Some of the modules though have default words like: sister, baby, fish, linux. It receives my vote for having the best penguin in a diaper.

      --
      t
    72. Re:The 'help' command by mwood · · Score: 4, Insightful

      I will now reveal just how uncool I am by suggesting that you go take a look at the OpenVMS 'HELP' command. The wealth of information in a decent man page is like a revelation from heaven to one who has had to make sense of DOS HELP, but a single massive spew of everything known about some complex program is a little overwhelming even with an outstanding pager to help. VMS HELP documents are hierarchial and are usually chunked fairly nicely.

      Where VMS HELP falls down is in full-text searching, though that may have been improved since they took my VMS boxes away. It also needs a much better pager.

      'info' is pretty good, but there are a number of very poorly structured texinfo documents to deal with, the style suffers from doing double duty as the revisable form of a book, and somehow I've never reallly become comfortable with the keystroke assignments. OTOH texinfo's structural possibilities are a bit more flexible than the VMS Librarian's HELP mode, and a good document designer can do wondrous things with it -- the problem is the dearth of good document designers and a certain attitude in the community which says that documentation is for those who can't read source.

    73. Re:The 'help' command by Nimey · · Score: 2, Informative
      With DOS it was easy; everything which was embedded in command.com (thus the necessity to always carry an extra format.exe)
      No. Only a subset of the DOS commands were built into command.com. Basic ones like dir, vol, and del. More complex ones (like format.com) were seperate files.

      Five years of being a Linux weenie and I still remember almost everything about DOS. Oy.

      --
      Hail Eris, full of mischief...

      E pluribus sanguinem
    74. Re:The 'help' command by Anonymous Coward · · Score: 0

      > one single page shows up, gives all relavent info, up and down arrows for scrolling, q to quit.

      You haven't done "man bash" in a while, have you?

      One single page spread out over, say, 50-60 scrolling screens. Not good. Bash is the best use of info that I've yet seen.

    75. Re:The 'help' command by anomalous+cohort · · Score: 1

      From a developer's standpoint, I wish that you were correct. It is much easier to write CLI tools than it is to write windows or web based ones.

      You propose that the barrier to CLI is lack of an easy search capability. Building some front end to man and/or apropo would be very easy and was proposed in other posts. My own experience leads me to believe that searching for the desired command is not the only barrier to entry.

      I used to be on the adjunct faculty to the USF. I taught a class on New Software Paradigms. In that class, I would show some J2EE stuff on a Linux laptop. I ran an X session but sometimes I launched a bash window and typed in some commands to show them what had to be started in order for certain tiers to work (i.e. postgresql, rmiregistry). Whenever I did, I noticed that the students looked nauseated.

      These were not developers but they were not ludites either. This reaction did not come from a single class but from years of teaching this class. It was almost as if it was beneath them to type in commands on order to get things done.

    76. Re:The 'help' command by mks113 · · Score: 1
      My experience is that the examples are convoluted ways of making a simple command do complex things. There are no examples for the simple things that the command is usually used for.

      If I recall correctly, try typing 'man find' for an example that would confuse a newbie.

    77. Re:The 'help' command by Bitmanhome · · Score: 3, Informative

      That was great! However, he actually appears with four eyes and a squiggly hair. This looks much better:

      PS1="\w \`if [ \$? = 0 ]; then echo :\\\); else echo :\\\(; fi\` "

      --
      Not that this wasn't entirely predictable.
    78. Re:The 'help' command by the_duke_of_hazzard · · Score: 2, Insightful
      "This was the most pleasing part of the trial. Here the users were instructed that they could get help on a particular command with the 'man' command and were given a brief description of how to read them. They particularly liked the clear, consistent layout and references to other useful commands."

      I'm sorry but this has got to be bullshit. I'm only now coming to terms with man pages and I still use a script that takes the contents of everyone's .bashrc file and gets me examples of a command's use rather than wade through them.

      If the above is true, I wonder if those dudes are available for hire?

    79. Re:The 'help' command by viware · · Score: 1

      That made my day!
      Thanks a ton!

    80. Re:The 'help' command by kisielk · · Score: 2, Insightful

      Not to mention that apropos returns about a billion items totally unrelated to your search in any way. For example, if I was a newbie trying to figure out how to copy files or directories or something, "apropos copy" on my machine returns 158 results. 133 of these are C functions. I highly doubt most users are looking for gl_copyboxfromcontext when they search for something like that :p

    81. Re:The 'help' command by Wormholio · · Score: 2, Insightful
      Since I've been turning newbies into Unix users for a while, I've found it useful to have `help` give a short tutorial on the man command and a list of the most commonly used commands for new users. New users invariably type "help" as a command and so the result should be something that in fact is helpful to them.

      I should probably update this a bit, but here is what I have found useful: clicky

      --
      "Education is not the filling of a pail, but the lighting of a fire." -- William Butler Yeats
    82. Re:The 'help' command by mwood · · Score: 1

      Many man pages suffer from trying to be too comprehensive. Fully explaining 'cat' doesn't take a lot of text; fully explaining Sendmail could cause someone's head to explode. A system that has worked well for me is to pare down the help to just a quick summary of the program's task, reminders of every little switch's basic meaning, and liberal use of "see the manual for details". In the manual you find copious examples, full discussion of subtleties, and suggestions for use.

      Trouble is, on Unix 'man foo' *is* the manual. If we didn't have the silly war between 'man' and 'info', then 'man' could be the reminder help and 'info' could be the manual, each with appropriate styles for their divergent purposes.

      perltoc.1 is more than half a megabyte, for cryin' out loud! That's way too large for a man "page".

    83. Re: The 'help' command by gidds · · Score: 1
      The solution to that particular problem is to switch shells to zsh -- with its powerful recursive file completion you never need find again!

      But yes, manpages are often cryptic, and tend describe the rare complex cases at the expense of the more common, simple ones. A few simple examples would go a long way in most cases.

      --

      Ceterum censeo subscriptionem esse delendam.

    84. Re:The 'help' command by bheer · · Score: 5, Insightful

      > I think the person doing the alias to man -k is the system administrator

      Ah, the "local customization" myth. This may have worked back in the day when all of MIT had three computers, but today there are too many darn computers to administer. Even clueful admins don't bother changing most defaults because they know their changes won't be obvious to end-users. The right place to make these changes is inside the distro, because that way the local mailing list/LUG/linux book will give one consistent, reinforcing message to the end-user.

    85. Re:The 'help' command by Anonymous Coward · · Score: 0

      > help alias
      alias: alias [-p] [name[=value] ... ]
      `alias' with no arguments or with the -p option prints the list
      of aliases in the form alias NAME=VALUE on standard output.
      Otherwise, an alias is defined for each NAME whose VALUE is given.
      A trailing space in VALUE causes the next word to be checked for
      alias substitution when the alias is expanded. Alias returns
      true unless a NAME is given for which no alias has been defined.
      > help help
      help: help [-s] [pattern ...]
      Display helpful information about builtin commands. If PATTERN is
      specified, gives detailed help on all commands matching PATTERN,
      otherwise a list of the builtins is printed. The -s option
      restricts the output for each builtin command matching PATTERN to
      a short usage synopsis.
      > help me
      bash: help: no help topics match `me'. Try `help help' or `man -k me' or `info me'.

    86. Re:The 'help' command by Anonymous Coward · · Score: 0

      Most of the trouble of Linux is the inertia related to not wanting to learn new things

      First of all, are you talking about "Linux" or "the command line"?

      Second, the biggest problem is "not wanting to learn new things" it's "not wanting to learn new things that don't provide any tangible benefit"

      Sure it's great that your mom has 'geek cred' by using Pine (well, not really because Pine was designed for state school fratboys, not computer experts) -- but is using Pine really somehow superior than using Eudora or Netscape? No.

      Pine isn't even a commandline program anyway. Maybe if your mom used /bin/mail and grep, it would be impressive.

    87. Re:The 'help' command by JavaLord · · Score: 5, Funny

      By the time I moved out I had my mother using pine over ssh to read her email.

      Most of the trouble of Linux is the inertia related to not wanting to learn new things and not being technically difficult.


      Yeah I know what you mean. When I was in high school I used to visit my grandmother in a nursing home all the time. She didn't know how to use Windows or E-Mail so I just gave her an old linux box. Like 2 months later she had root at NASA.

    88. Re:The 'help' command by B5_geek · · Score: 1

      I couldn't agree with you more....

      I have been trying to work with linux since Rh v5.2 and I still type "command /?" 75% of the time that I am stuck.

      It was just such a perfect way to get information about what switches do what & how to use the command

      --
      "The price good men pay for indifference to public affairs is to be ruled by evil men." ~Plato (427-347 BC)
    89. Re:The 'help' command by plugger · · Score: 1
      Well this narrows it down a bit:
      apropos copy | grep "copy file"
      Unlikely that a newbie would hit on that command though.
    90. Re:The 'help' command by Espectr0 · · Score: 2, Funny

      [ldab:~] selderrr% help alias
      help: Command not found.


      Something is wrong with your system.

      mac:~/msn espectro$ help alias
      alias: alias [-p] [name[=value] ... ]
      `alias' with no arguments or with the -p option prints the list
      of aliases in the form alias NAME=VALUE on standard output.
      Otherwise, an alias is defined for each NAME whose VALUE is given.
      A trailing space in VALUE causes the next word to be checked for
      alias substitution when the alias is expanded. Alias returns
      true unless a NAME is given for which no alias has been defined.

    91. Re:The 'help' command by Phreakiture · · Score: 1

      We had a sysadmin when I was in college who had written a brief script called 'help.' It catted out a here document that read, "UNIX helps those who help themselves. Try 'man' insetead of 'help'."

      --
      www.wavefront-av.com
    92. Re:The 'help' command by mwood · · Score: 1

      TOPS-20 commands had *everything* completion. You can now get Bash add-ons to do some of this.

    93. Re:The 'help' command by Phreakiture · · Score: 1

      A DOSoid [n]curses based interface leads to the same "Everything happens at once" syndrome as a GUI does. It really is just a GUI without graphics. Info is kind of like this.

      I would instead advocate a VMS or CP/M style help utility (stop groaning and look at it). Typing help command would bring you a page of info on that command, and prompt you for subtopics, in case you wanted more info on some aspect of the command. Typing simply 'help' would bring you a list of topics.

      Under VMS, HELP kept track of where you were and interpreted your new input as requesting a subtopic. There was something you could type, I think it was just a dot, that would go back one page. CP/M did pretty close to the same thing, instead requiring you to put a dot in front fo the subtopic, otherwise your input was interpreted as a request for a new topic.

      Man doesn't even come close! When I was introduced to UNIX in 1991, after two years of using VMS, my first reaction was that the help facility sucked.

      --
      www.wavefront-av.com
    94. Re:The 'help' command by moonbender · · Score: 2, Insightful

      I'm a Linux newbie (or was, until recently), and the man page system was an incredible help for me. And if you read the articles, the newbies he talks about are very happy with it, too. I'm not saying it's all good, and can't be improved, but it is not as bad as you make it look. Apropos as part of the man system is also great, although I guess not many newbiews know about it (my boss certainly didn't).

      --
      Switch back to Slashdot's D1 system.
    95. Re:The 'help' command by mwood · · Score: 1

      Yes indeedy. Also, since HELP was in the Librarian, which is callable, providing built-in help inside your interactive program consists of:

      1. Notice that the verb was HELP.

      2. Pass command's argument string to appropriate Librarian function.

    96. Re:The 'help' command by a24061 · · Score: 1
      Basically the man system is only useful if you already know 95% of what the man page is trying to tell you -- and even there it falls down as a reference work because all the real information is in the info system.


      That's so true. I find man pages helpful only for commands I already know roughly how to use. They are very good for answering specific questions like "Is recursive foo -r or foo -R?" but not for "Someone told me to use foo for this problem: I wonder how?" You need treeware for that.

    97. Re:The 'help' command by Precipitous · · Score: 1

      I'd always thought it'd be fun to write a Linux help command (or new shell) based on a code base from one of the Interactive Fiction tools. A lot of the user input and language processing problems are already solved. This would certainly meet the authors idea that computer should interact with dialogue. Eg

      User: I want to find a file.
      PC: How fould you like to find the file? By Name? Size?
      (Maps to grep or find somewhere in here)

      Anyway, this can go into the list of good ideas that I'll never get around to, but hope someone else will do.

      --
      My motto: "A cat is no trade for integrity."
    98. Re:The 'help' command by pLnCrZy · · Score: 2, Insightful

      It seems like people are expecting some major hand-holding while they get used to a new CLI / OS. Yet, ironically, similar things when introduced by MS or otherwise are globally scorned.

      What's so taboo about just buying a book? The Table of Contents for "Linux for Dummies" shows a section dedicated to "Working Without The GUI". If a new user wishes to learn about the Linux CLI, instead of insisting that developers waste valuable time on a pretty menu to tell you how to do a directory listing or find out how much disk space is free (sounds almost like a GUI, eh?), why not just pick up a book, or read one of the many free primers that are available on the web?



      find / -name *base* -exec chown us:us {} \; su -c someone 'export UP_US=thebomb'
      for f in great justice ; do sed -e 's/zig//g' < $f ; done
    99. Re:The 'help' command by jez9999 · · Score: 1

      Depends on what you classify as relevant, really. If I want to know about parameters that I can use with the 'update' command with CVS, I don't want the switches specific to all the other commands too - they're irrelevant to me. With an indexed help system, I could avoid all the extra crud; with man, I can't.

    100. Re:The 'help' command by Kailden · · Score: 1

      It's little gems like that that keep me coming back to slashdot.

      An now for a useful example

      export PS1="[\`if [ \$? = 0 ]; then echo :\\\); else echo :\\\(; fi\`][\$(date \ +%H%M)][\u@\h:\w] "

      will work, but:

      export PS1="[\$(date \ +%H%M)][\u@\h:\w][\`if [ \$? = 0 ]; then echo :\\\); else echo :\\\(; fi\`] "

      will not since the $? is examing the output of the last 'command', which in the latter case is 'date +%H%M' and not the last command you entered.

      :)

      --
      I need a TiVo for my car. Pause live traffic now.
    101. Re:The 'help' command by robochan · · Score: 1

      What I'd really like to see is a more helpful man page with examples. It's frustrating when using a new command to read "usage: foobar [VNFHDMudndghfud8734yfhfnbgdh] filename | device | dir | options filename[]" and then read through 5 pages of options and switches I'll never use. If every man page had at least a few examples of how to do stuff most people want to do, it'd be easier to both do those things and learn the more complex commands.

      So...what's stopping _you_ from contributing to the documentation? People piss and moan and whine about docs all the time, yet aren't willing to do a thing about it themselves.
      I mean come on, this is open source stuff, meaning _you_ can contribute if you feel the need to do so - if you have some sort of itch to scratch. Or is it that you just feel the need to complain about the itch?

      --
      ...Rob
      The American Dream isn't an SUV and a house in the suburbs; it's Don't Tread On Me.
    102. Re:The 'help' command by cowbutt · · Score: 1
      What Linux needs is a MS-DOS 6 style help command.

      Red Hat/Fedora's GNOME panel is configured by default with a 'flotation ring' icon that starts 'yelp', a hypertext man/info reader.

      I don't think you can really get much easier or more obvious than that.

      --

    103. Re:The 'help' command by maxwell+demon · · Score: 1
      I would instead advocate a VMS or CP/M style help utility (stop groaning and look at it). Typing help command would bring you a page of info on that command, and prompt you for subtopics, in case you wanted more info on some aspect of the command. Typing simply 'help' would bring you a list of topics.


      That's exactly how gnuplot's help works. Going back is done by just pressing enter without any other input, though (which actually is better: If you get to the interface unknowingly (i.e. didn't know about this behaviour), you're unlikely to type anything special (like a single dot), but you might not unlikely just press enter again).
      --
      The Tao of math: The numbers you can count are not the real numbers.
    104. Re:The 'help' command by adavies42 · · Score: 1

      The zsh equivalent is "%(0?.:).:()" -- just add it to your PS1. Yet another reason to use zsh!

      --
      Media that can be recorded and distributed can be recorded and distributed.
      -kfg
    105. Re:The 'help' command by drinkypoo · · Score: 1

      Maybe the solution is to have an environment variable I_AM_A_BOZO which, when set, causes programs to display more verbose output. grep: starting grep, grep: found blah blah blah, grep: grep finished.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    106. Re:The 'help' command by sparrow_hawk · · Score: 1

      Umm... dude, did you read the article?

      The writer found that man was actually quite efficient for his newbies, at least for the commands they were using. Newbies aren't using GCC or CVS, so whether those man pages can be as nasty as they have to be. And, for the record, I'm not really a *guru*, and I think both man pages aren't bad.

    107. Re:The 'help' command by zaphod110676 · · Score: 4, Informative

      I've never found info intuitive at all. The pinfo command however works great. It is a lynx style viewer for info pages. It required little work to figure out and is great when you hit those man pages that say:
      "The full documentation for ls is maintained as a Texinfo manual."

      --
      To Do: 1. Take over world 2. Pick up Milk and Bread on the way home
    108. Re:The 'help' command by Anonymous Coward · · Score: 0

      Yes!! A brilliant analysis of man pages or for that matter Linux help in general. I don't know how much time I've spent chasing down help on something only to end up wading through zillions of links, even more helpful references, and my favorite RTFM.

      Initially at least, help sources should state simply and clearly what something does, why someone should want to do that, and a brief explanation and example of how to do it. This is especially important when proper syntax is so very important. Once I have that then the rest of the techie stuff becomes far more useful.

      There are too many assumptions made about the background knowledge of users (call me a LUSER if you want) that makes most help sources almost useless, especially to a newbie but even to someone who has fiddled with Linux for awhile.

      Phew I feel better now.

    109. Re:The 'help' command by jsebrech · · Score: 1

      My 16 yo sister uses nedit to edit her website, and then runs a shell script on the command line to upload it with rsync over ssh. She also uses firefox, kopete, gentoo, edonkey and xmms. And she likes it now (there were complaints at first when I took away the dualbooting powers, but that was just inertia).

    110. Re:The 'help' command by fitten · · Score: 2, Insightful

      Yeah... and apropos is a word that is the vast majority of folks' everyday vocabulary. Just another example of how Linux and Un*x turn folks off. First, almost no commands have vowels in them... mv = move, cp = copy, rm = remove. The ones that do have vowels in them are words that nobody would think of... apropos.

    111. Re:The 'help' command by maxwell+demon · · Score: 1

      Congratulations. Your score is now 125, which means your level advanced from 'newbie' to 'almost newbie'.
      You now may use the following additional commands:
      * rm
      * rmdir
      * mv without option -i
      * cp without option -i

      Reminder: You can increase your level by
      * doing sensible things with these commands
      * reading the man pages and then correctly answering a quiz about what you read
      newbie-bash $

      --
      The Tao of math: The numbers you can count are not the real numbers.
    112. Re:The 'help' command by gnu-generation-one · · Score: 5, Interesting

      "I think the person doing the alias to man -k is the system administrator... | ... Ah, the "local customization" myth. This may have worked back in the day"

      I think the person doing the alias to man -k is the distro maintainer

      "look, I typed la and it did an ls for me! And it works when I type dir too!" [mandrake newbie]

    113. Re:The 'help' command by jsebrech · · Score: 1

      If every man page had at least a few examples of how to do stuff most people want to do, it'd be easier to both do those things and learn the more complex commands.

      You're not seeing that because of the FSF campaign to get rid of manpages and replace them with the more awkward info program. Anything GNU tends to have very poor manpages. Debian tend to improve the manpages. I don't know about other distro's.

      I still think all documentation for anything should be in html. It is universal, easily readable, powerful, and yet you can cat it to the shell and still read its contents reasonably easy (which is much more difficult with unparsed manpages).

    114. Re:The 'help' command by Feztaa · · Score: 1

      Interesting idea, but I find it more useful to just have $? in my prompt directly.

    115. Re:The 'help' command by Nurseman · · Score: 2, Informative
      "Can't be too hard for a bunch of geeks to sit down and work out a short list of 15-20 commands that you really *HAVE* to know for the CLI."

      Do you mean like this ? Linux One Page Manual Warning, it's a PDF, but it's pretty handy to me. Please dont kill his poor server.

      --
      Save a Life. Donate Blood. Please.
    116. Re:The 'help' command by gnu-generation-one · · Score: 1

      Just thinking of an animated Eric Raymond popping up with helpful hints is well, somehow disturbing...

    117. Re:The 'help' command by scrytch · · Score: 1
      > The Help command did exist in Unix, but it was the help system for sccs

      The Help command exists in VMS, and let me tell you, it absolutely destroys the manpage system.

      > For example when we grep on a file and don't find the pattern, grep does not generate any output

      It sets a return code.
      grep "foo" * || echo "not found"
      You're not seriously suggesting end users use grep, are you? (ohh goody, let's teach 'em regexes, when you have to quote your term, when you need to use egrep...)

      The command line shell is basically a lightweight programmers tool. No one expects nontechnical users to use it any more than microsoft expects them to write batch or VBS scripts. If you want a user friendly shell, I recommend you not build it on top of bourne shell's legacy.
      --
      I've finally had it: until slashdot gets article moderation, I am not coming back.
    118. Re:The 'help' command by skintigh2 · · Score: 2, Interesting

      That was my exact thought the first time I used a *nix at school. To me it looked and acted just like DOS and like a lot of BBS software I had used but if you wanted to do something rock-bottom-basic like read email or edit a file you were fucked unless you had someone to show you.

      I remember thinking even the absolute worst software I had ever used had a "help" command, and most commands made sence, but on this less-than-intuitive system I had to type in assorted tree species instead of "mail" to read my email or type in a nonsence word like emacs or vi if instead of "edit" if I wanted to edit a file, etc. etc..

      Even the most absolute, brain dead, rock bottom basic command was obfuscated. For instance, if you want to change your password, do you type password? No. Maybe it's abreviated to pw? No.Pswd? No. The second half of the word is half abreviated, but not the first half. What fucking idiot came up with that? Oh, and for shits and giggle some genius made the command line case sensitive.

      I think back to that day every time someone tells me Linux is just about to take over the consumer market.

    119. Re:The 'help' command by pclminion · · Score: 1
      The 16 year old liked Pine for email, she would rather exit X to read email under Pine, before she learned about xterm.

      Ahhh.. This reminds me of when *I* started using computers. I was 5 or 6, and my mother had purchased a Commodore 64 to do her programming assignments. She bought a few games, which my brother and I played. But I was always curious about what my mother did using the "blue screen" (when there's no program running on a C64, you see a blue screen with light blue border, running the BASIC interpretter).

      I would always play my games for a little while then ask my mom if it was okay to "play with the blue screen." Which actually meant messing around with C64 BASIC. I learned about PRINT, and INPUT, and how to get a program to add numbers together, etc. Slowly my mom taught me how to write actual programs. Ahh... Those days were great!

      It was my experience with "the blue screen" that first ignited my passion for technology. It's really quite sad that the term "blue screen" means something entirely different these days :-(

    120. Re:The 'help' command by Anonymous Coward · · Score: 0

      My favorite has to be pwd. In any other context, it means "password." (Which is, interestingly, "abbreviated" to "passwd," for a whopping two keystroke savings!) In UNIX, it stands for "print what directory." Upon learning this, the logical response is, of course, "wtf."

    121. Re:The 'help' command by CmdrTHAC0 · · Score: 1

      "but:

      export PS1="[\$(date \ +%H%M)][\u@\h:\w][\`if [ \$? = 0 ]; then echo :\\\); else echo :\\\(; fi\`] "

      will not since the $? is examing the output of the last 'command', which in the latter case is 'date +%H%M' and not the last command you entered."


      Buried somewhere in info is a list of escapes. You want \D.

      export PS1="[\D{%H%M}][\u@\h:\w][\`if [ \$? = 0 ]; then echo :\\\); else echo :\\\(; fi\`] "

      --
      __CmdrTHAC0__
      In Soviet Russia, Spanish Inquisition doesn't expect YOU!!
    122. Re:The 'help' command by mlush · · Score: 1
      Just do an alias of "help" to "man -k".

      The trouble is that when said newbie got to the man page (by whatever path) it would be written in a style too terse and technical to be much help to a newbie computer user. IMHO the moment you can make sense of a man page you stopped being a newbie long ago.

    123. Re:The 'help' command by Anonymous Coward · · Score: 0

      I need a man page
      I'm holding out for a man page till the end of the night
      it's gotta be full and it's gotta be fast
      and gotta be fresh from the update
      I need a man page
      I'm holding out for a man page till the morning light
      It's gotta be right and he's gotta be soon
      And it's gotta be larger than life

    124. Re:The 'help' command by hackstraw · · Score: 1

      Only a subset of the DOS commands were built into command.com. Basic ones like dir, vol, and del.

      FWIW, del was an executable in more recent versions of DOS.

    125. Re:The 'help' command by Murphy(c) · · Score: 2, Insightful

      I totaly agree with you about the incompletness of man pages for newbies (me).
      The most frustrating part of the man pages for me is the lack of practical examples in them. I've always felt that the easiest way to understand a command or concept is by imitation, it's very intuitive. And I'm not talking about an abstract example like :

      Foobar [argument] [option] ([sub argument] [output file])

      That doesn't speak to me the same way as a realy concrete example of the command, even if it's not exactly the command I need, at least I know the general syntax and can try from there.

      I've always found 4DOS / 4NT (for the Windows world) to have the best possible help. Because you have a clear desciption of every optional argument, and lots of examples.

      Murphy.

    126. Re:The 'help' command by AB3A · · Score: 2, Interesting

      Oh wow, does that bring back memories...

      If there is one thing that DEC did better than just about any other company before or since, it is this: They knew how to write good documentation. The HELP command in VMS is a sample of what they did.

      However, if you really wanted an even nicer CLI, try another OS from DEC: Twenex --I mean TOPS-20 (Send me a message if you know the history behind this).

      Instead of Tab completion, they used the Escape key. I think the first place I ever saw auto completion was on a TOPS-20 system (Version 3, IIRC, and it was a long time ago). I have always liked auto-completion and I've always thought that it would make a comeback some day.

      Meanwhile, grizzled old command line users like me have always found command lines to be places where we could get "real work" done. (What? You had command lines? In my day we had front panel switches, incandecent address and data lights, and paper tape readers!)

      Given the overly rich and confusing numbers of icons, sounds, popups and flashy widgets on screens, maybe a minimalist approach to computing might help people understand what's going on. This industry often tries to make too many concepts in to abstractions. Perhaps it's time we went back and rediscovered our true hardware ;-)

      --
      Nearly fifty percent of all graduates come from the bottom half of the class!
    127. Re:The 'help' command by Nimey · · Score: 1

      No, it wasn't. Not in MS-DOS 5 or 6.xx. You may be thinking of Novell/DR/OpenDOS's xdel command.

      --
      Hail Eris, full of mischief...

      E pluribus sanguinem
    128. Re:The 'help' command by Anonymous Coward · · Score: 0

      of course there's something wrong with the system, he (or she) is using csh...

    129. Re:The 'help' command by DunbarTheInept · · Score: 1

      The advantage of a man page over info is that it's searchable. I can do a '/' over the whole pile of documentation to try and quickly zap to the one part I'm interested in (hmm, how do I make 'find' follow a symbolic link again? man find, then /sym, then n,n,n,n until I see it. That's hard to do in info where there's a hierarchy of organization. Sometimes a flat structure has advanatages.)

      I think Info is useful, but it should have had a search-across-all-pages feature. (It also shouldn't have been based on it's own ugly keymappings - I think that held it back more so than anything else. It took a LONG time to convince the maintainers of info that activating the special keys like arrows and pgup/pgdn is kind of important for a tool that is supposed to help newbies.

      --

      Don't label something "offtopic" unless you know the topic well enough to tell what's on topic.

    130. Re:The 'help' command by Karellen · · Score: 1

      ...all the different commands on linux systems

      Hmmm....lets have a try.

      $ cat > ~/bin/help
      #! /bin/sh

      if [ "$1" ]; then
      man 1 $1
      else
      for file in /bin/* /usr/bin/*; do
      whatis `basename $file` | grep -E " \\(1\\) "
      done
      fi
      ^D
      $ chmod 777 ~/bin/help
      $

      Hey, that looks OK. It could search $PATH instead of just /bin and /usr/bin, and it's not ncurses, but it's a start. However, if you give it a try you get hundreds of commands fly up the screen. You could pipe through your pager, but it gets to be quite a job paging through all of that. How many commands are there on my system?

      $ help | wc -l
      1324
      $

      1324 different commands eh? Better come up with a way of whittling those commands down some if this is intended for newbies. :)

      --
      Why doesn't the gene pool have a life guard?
    131. Re:The 'help' command by Karellen · · Score: 1

      Point 1 is incorrect. It only tells you you can't remove non-empty directories unless you're a super-user.

      Point 4 is bad. All use of rm is destructive. That's what it does. It's unlikely you have any files called "*" that you are trying to remove. You are only likely to try "rm *" if you are trying to delete all your files. "-r" recursively deletes files. "rm -r *" recursively deletes all files. What sort of warning do you want?

      "Warning: 'rm -r *' will recursively delete all the files in the current directory."?

      You already know that. What other warnings do you want?

      "Warning: 'rm file' will delete 'file'."?
      "Warning: 'rm' is scary. Use 'mv' to put the file somewhere else instead."?

      2, 3 and 5 are valid, and directly attributable to GNU's love of `info`, which most people I know hate. GNU - please go back to maintaining your man pages. They're so much more useful than `info` as a quick reference.

      --
      Why doesn't the gene pool have a life guard?
    132. Re:The 'help' command by Anonymous Coward · · Score: 0

      TehHustler, meet /etc/profile. /etc/profile, meet TehHustler.

    133. Re:The 'help' command by iabervon · · Score: 1

      That's why you don't give tcsh to newbies...

    134. Re:The 'help' command by Trejkaz · · Score: 1

      I love man. Well... at least it's not 'info'. *shudder*

      --
      Karma: It's all a bunch of tree-huggin' hippy crap!
    135. Re:The 'help' command by Trejkaz · · Score: 1

      "No news is good news."

      However when you're writing a program which does any kind of logging, you do pick the level of detail which you want each log entry to be at, so there's no particular reason programs shouldn't work like that with command-line output too. I'm not sure you would necessarily need an extra stream to do it though, wouldn't you just want some kind of environment variable which is recognised by every program to mean, "maximum verbosity"?

      --
      Karma: It's all a bunch of tree-huggin' hippy crap!
    136. Re:The 'help' command by Trejkaz · · Score: 1

      Particularly when the command has multiple return codes where you actually know what each code means. But why not have both? The smiley is just so cute, especially when you add some ANSI colour codes around it.

      --
      Karma: It's all a bunch of tree-huggin' hippy crap!
    137. Re:The 'help' command by Anonymous Coward · · Score: 0

      What, to add to the myriad of reasons it also sucks?

    138. Re:The 'help' command by srinivas_rc · · Score: 1

      Reminds me of vi + clippy = vigor :)

      --
      I could change the world, but GOD won't give me the source code :(
    139. Re:The 'help' command by Anonymous Coward · · Score: 0

      +5 Something.

      DO IT NOW!!!

    140. Re:The 'help' command by Artifakt · · Score: 1

      It's still a bump in the learning curve. Sure, not every user needs to grep anything, but one who does is likely to learn to use the command solo before they ever pipe anything else through grep. Normally, I hesitate to use words like "everyone", "all", and such, but this is almost that universal - out of thousands of people learning to use Unix commands at a gien time, there may be a very small percentage that would learn them in such a way that the reason grep doesn't generate a negative output would quickly make sense, but it's darned near zero.
      If I was training someone, and I caught them trying to pipe other command output through a command without really understanding what those commands did alone, I'd probably tell them not to try to walk before they have learned to crawl. If one of those commands is grep, that common sense homily is useless. Behavior that makes sense in the more complex uses but makes none in the simplest case is always very hard to understand, and the people who are trying to provide work arounds and solutions are doing a good thing.

      --
      Who is John Cabal?
    141. Re:The 'help' command by Anonymous Coward · · Score: 0

      Actually, just out of interest...

      What's stopping someone creating a Linux distro with sane aliases for standard commands, and a great help system aimed at newbies?

      Even if the alias commands output "The other name for this command is . Running, please wait." each time.

      OK, so it would annoy the hell out of people used to Unixalikes using historical Unix commands. But wouldn't such a distro make it a whole lot easier to give to newbies? "Look, everything works intuitively, and the help system is always useful!"

      A user-obsequious distro like this, plus a bit of a low-level marketing campaign amongst the great unwashed masses, and all of a sudden people might realise that they can upgrade their old PC to a more powerful system for free, or buy their computer cheaper if they don't pay for a commercial OS.

      Part of the reason Linux isn't ubiquitous is that it still doesn't have moron-appeal. Capture the idiot market first and you can worry about the fine details of distros and yadda-yadda later.

    142. Re:The 'help' command by hackstraw · · Score: 1

      Your right. Its been a long time. Its move.exe that I'm thinking of. I believe that that it once was a builtin, but later moved to an executable.

    143. Re:The 'help' command by Anonymous Coward · · Score: 0
      If you type foo /? in DOS, you'd get a one or two page SUMMARY of how to use the command

      Not only that, but typing "foo /?" would actually TELL YOU WHAT foo DOES.

      The number of unix apps and utilities which don't clearly explain what they do when you type "foo -h" or "foo --help" is stunning.

    144. Re:The 'help' command by shellbeach · · Score: 1

      I would always play my games for a little while then ask my mom if it was okay to "play with the blue screen." Which actually meant messing around with C64 BASIC. I learned about PRINT, and INPUT, and how to get a program to add numbers together, etc. Slowly my mom taught me how to write actual programs. Ahh... Those days were great!

      *sigh* ... nostalgia! I had a similar learning experience with the good ol' Apple ][ (well, it was a "cheap" clone called an Orange, but close enough :) The great thing was being able to program in BASIC or assembly straight from the command line - it's funny to think of the things you took for granted!

      I was really sad when my family finally upgraded to a Mac SE30 - suddenly the only "inbuilt" progamming tool was hypertalk (not that that was bad language, btw, it had beautiful syntax IIRC - but it was extremely limited) Moving to a Win95 PC system was even more depressing, with no language available at all. One of the joys of using Linux has been the myriad of languages that come installed with a distro by default :)

    145. Re:The 'help' command by Anonymous Coward · · Score: 0

      Like 2 months later she had root at NASA.

      Yeah, I hear those space guys are so desperate, they'll root anything ...

    146. Re:The 'help' command by Jman314 · · Score: 1

      I never got the hang of info either. This is a lot better, since I've used lynx before. Thanks!

    147. Re:The 'help' command by jc42 · · Score: 2, Insightful

      There's no warning about destructive behavior ('rm -r *' etc)

      Huh? That's the silliest objection I've heard in years. There is absolutely nothing about rm that isn't destructive. That's why rm exists: to destroy things. It has no other purpose whatsoever. If you can't get that from the man page, you shouldn't be allowed near a keyboard.

      Next you're going to demand that guns come with warning labels saying that they can injure or kill people, and that matches come with warnings that they can start fires that burn things.

      Jeez; who lets people like this into this assylum?

      --
      Those who do study history are doomed to stand helplessly by while everyone else repeats it.
    148. Re:The 'help' command by IntlHarvester · · Score: 1

      If you can't get that from the man page, you shouldn't be allowed near a keyboard.

      I agree with your implication that the majority of people should not be allowed near Unix. However I think that's a rather unpopular opinion on Slashdot.

      (The reason I mentioned it in the first place is that it was a common freshman gag to tell people to type 'rm -r *', so I think it's worth an explicit mention. It's not like one line in a man page would be the end of civilization and Unix Guru Ego as we know it.)

      --
      Business. Numbers. Money. People. Computer World.
    149. Re:The 'help' command by vegetasaiyajin · · Score: 1

      You are right. The worst part about man pages is they don't include any examples.
      They usually explain a endless number of switches, but never give examples about how to perform common tasks.
      The man system is great, but the content sucks.
      Content of info pages is frequently much better.

      --

      My heart is pure, but make no mistake, it's pure evil
    150. Re:The 'help' command by Anonymous Coward · · Score: 0

      you have got to be kidding me. the command line is the most annoying, frustrating, counter-intuitive interface ever conceived. GUI's kicked the command line's ass a long time ago. let the market speak you morons. fuck a cmd line, bitch

    151. Re:The 'help' command by SeregonSandgrain · · Score: 0

      How about having two sets of help, "basic" and "reference". Basic being basic usage and examples and reference being the current man pages?

      --
      My User Agent: "Where is the pr0n?"
    152. Re:The 'help' command by Anonymous Coward · · Score: 0

      He is using tsch dummy not bash.

    153. Re:The 'help' command by DigitalCrackPipe · · Score: 1

      This is a place where DOS did it right and no linux distro yet has matched

      Maybe they're worried that MS will go after them like SCO is?

      I love the command line, but when working on different distros of Un*x or linux, a command summary would really help when commands differ between versions. The Nutshell books are great for the versions they match, but other than that I've often ended up searching the web for the proper syntax. Using a windows machine.

    154. Re:The 'help' command by Feztaa · · Score: 1

      where you actually know what each code means

      You don't have to know what the code means for it to be useful. If you're trying out a program you've never seen before, and it's just mysteriously failing without any output, you can google for it's error code for solutions to the problem.

    155. Re:The 'help' command by jonadab · · Score: 1

      > Five years of being a Linux weenie and I still remember almost everything
      > about DOS. Oy.

      Indeed. I bet if you gave me a list of DOS commands and I had to categorize
      them off the top of my head according to whether they were builtins, COMs,
      EXEs or BATch files, I'd probably get at least 80% of them right. I think
      part of the reason I remember DOS so well is because it was inherently a
      small and simple system. Today's OSes provide a lot more functionality, and
      that makes them more complex. DOS left most of the functionality to
      third-party apps. Especially the older versions of DOS (prior to version 5).
      I've been fooling around with Linux since 1998, and it's been my main system
      both at home and at work since circa 2001, but if you gave me a list of
      commands and asked me which ones are bash builtins and which ones are scripts
      or aliases and which ones are compiled binaries, I wouldn't know most of them.

      Anyway, back to the help command: I agree that the DOS 6 help command is
      a good model to look at, in terms of improving current help systems. Also
      the VMS help system is pretty good and worth looking at. The problem with
      man is that you have to know what the command is called before you can look
      it up. There's apropos, but there's no discoverability there and it's harder
      to spell and longer to type than help and (perhaps the worst thing) it gives
      you a bunch of irrelevant non-command stuff like system calls and other
      things a user doesn't need to know about. For example, let's say I want to
      know the *nix equivalent of the DOS command MEM. So I try typing mem just
      in case it's that simple, then also try memory, but no dice. So I fire up
      apropos and get... 314 lines of response. So I pipe that into less and
      start reading, and I will eventually find out about free, but this is NOT
      an ideal interface.

      Of course, the free command is one of the twenty or so commands that I
      wouldn't need to find out about this way because I'd have already read about
      it in a *nix-command-line tutorial, but there are other commands, not quite
      so common as to be listed in an introductory tutorial but still useful enough
      that the user might want to discover them. Things like screen for example.
      (Yes, the DOS 6 help tells you about stuff like e.g., dosshell.)

      So yeah, even for someone who started fooling with Debian in 1998, a help
      command similar to the one in DOS 6 would be a welcome improvement.

      --
      Cut that out, or I will ship you to Norilsk in a box.
    156. Re:The 'help' command by Anonymous Coward · · Score: 0

      I know an experienced linux user who wanted to play a real file with a name like movie.rm. How do you play rm's? Without thinking, since a lot of players run when you use the corresponding extension as a command, he did rm movie.rm. Oops. It took a week to find and download a new copy.

      As opposed to the trash in gui's, where you not only specifically give something to the destroyer, you have to tell it to empty and click a confirmation.

      I have a feeling that if they implemented a "Remove all 537 files in ~user? y/n" confirmation when you do rm -r *, the n would get used every once in a while. Of course, jc42 never makes a mistake, but we mere mortals are different.

    157. Re:The 'help' command by poweroff · · Score: 1

      That rocks.

      A true hack.

      Thanks!

    158. Re:The 'help' command by ghakko · · Score: 2, Funny

      It could be worse.

      Welcome to Unix! You are a lawful male human user.
      $ rm * .c~
      You feel as though you're missing something.
      $ file *
      j1.au: An ornamental clip.
      rep12.doc: A pair of snow docs.
      hayw.pl: A fizzy file.

      $ pkill -INT -f mozilla
      The magic missile hits the lizard! The lizard resists! The lizard hits!
      $ pkill -TERM -f mozilla
      The bolt of fire hits the lizard! The lizard resists! The lizard hits! User is about to die.
      $ pkill -KILL -f mozilla
      The death ray hits the lizard! The lizard is killed! Welcome to experience level 5. You gain some swap.

      $ cat /dev/zero >/dev/mt0 &
      The cat catches a tape ration.
      $ sleep 60; jobs
      The cat is still eating.
      $ stty dec
      ^[0;1mOh wow! Everything looks so cosmic!^[0m^M$ sttu^Hty^H ^H^W sane^Mfg^M^C^C^C^K^[0;1mThe jumbo shrimp ululates! You hear the studio audience applaud!^0m^M^H^M$ stty sane^M
      Everything looks SO boring now. You see here a cat corpse.

      $ mount /dos
      You mount your saddled dos.
      $ ls -d ~/wkfolder
      You see here a large boulder.
      $ cp ~/wkfolder /dos
      You try to pick up the boulder, but your dos cannot lift any more.
      $ umount /dos
      You can't. The saddle seems to be cursed.
      $ fuser -mk /dos
      You feel as though someone's helping you.
      $ umount /dos
      You dismount. You've been through the dungeon on a dos with no name.

      $ halt
      Suddenly, the dungeon collapses! You die...
    159. Re:The 'help' command by Anonymous Coward · · Score: 0

      Unfortunately, "they" can't do that because it would break 20 years worth of Unix scripts and the standards.

      It would be nice to have a standard "del" or "erase" command that behaved like you described (and maybe even used a trash can concept).

    160. Re:The 'help' command by Tiro · · Score: 1

      There's a shirt on thinkgeek about the humor of man/woman doc pages

    161. Re:The 'help' command by mwood · · Score: 1

      Yup, TOPS-20 COMND% JSYS rocks! (You youngsters who missed TOPS-20 can find a similar style of interaction in Kermit.) It's nice to see younger OSes beginning to pick up some of the neat ideas to be found there.

      DEC's documentation was top of the heap, but so is IBM's, at least in the mainframe area. IBM doco is huge and intimidating but at least it's *thorough* and *complete*. They both tend(ed) to split up the manuals into Reference (complete formal description of every feature) and User's Guide (explaining the organization and use of the product as a whole) which IMNSHO is a really useful way to document.

    162. Re:The 'help' command by darkxsun · · Score: 1

      More lazy users who don't want to figure anything out by themselves will only lead to more distributions like Redhat and Mandrake. No power, but easy as hell. Also quite corporate. They can't even include MP3 playback for licensing reasons. This isn't the Linux I want.

    163. Re:The 'help' command by socode · · Score: 1

      So what? How does that affect you?

      If you don't like a new distribution, don't use it. New distros & new users != forcing you to use it/users to abandon your distribution.

      Or should all things you don't, personally, want not exist because you'd prefer [desktop] Linux to remain a niche OS used mainly by computing professionals & students?

    164. Re:The 'help' command by jc42 · · Score: 1

      Something I've done when I aws involved in setting up new users was to have the default *rc files for shells do:

      alias del "rm -i"

      This makes life a lot easier for people coming from DOS without breaking zillions of shell scripts.

      On a more complex level, something that I did for a project some years back, and which I've kept in my personal library, is to hack the rm/mv/cp/ln commands so that they could automatically make backups instead of deleting or overwriting files. You could define the backup style in the environment with a setting like:

      #define BACKUP - (backups have a hyphen appended)
      #define BACKUP .bak (backups have .bak appended)
      #define BACKUP # (backups have a pound sign prepended)
      #define BACKUP ';' (VMS-style backup)

      The first was the default. There was a command-line -b option to enable backups. A useful trick was that the programs also checked the first char of their name, and if it was upper-case, they did the backup. The '-' case was recursive, so if foo- existed, it would be renamed to foo-- before foo was renamed to foo. And so on.

      Then we could just tell people "If you want to play it safe, remove files with Rm rather than rm. The latter is the old unix command that doesn't have any mercy. And if you want to get rid of those backup files, rm will do the job."

      (One of the disasters in porting stuff to OSX was with these commands. We had to come up with variant names due to OSX's caseless file-name matching. This in turn broke lots of scripts. Grrr...)

      I and others have repeatedly suggested something like this in the standard unix tools, but so far this has been like dropping a rose petal into the Grand Canyon and listening for the sound as it hits bottom. When people do it, they inevitably pick an inventive new scheme, so nothing is portable. And most often, they modify the builtin unix commands so that scripts can't be made portable.

      One of the ongoing frustrations in writing scripts is seeing a user baffled when a script tries to delete a scratch file, and it suddenly asks the user
      /tmp/XQ34759.blx?

      This is NOT what I'd call user-friendly. It comes about from vendors repeatedly doctoring rm so that it tries to protect users from accidentally deleting files. One result is that it is often very tricky to write a script that silently deletes a file. You think you've figured it out with something like "/bin/rm -f", and they decide to protect you from the danger of that command. You just can't win this arms race.

      If you want a user-friendly file-deletion command, it's much better to call it "del", and leave "rm" in a form that is usable in scripts without harrassing some hapless user who won't have a clue.

      Another idea I've seen is to have another set of system commands for scripts, which would have all the user friendliness stripped out so they would be script friendly. We might have directories with names like "/sbin" and "/usr/sbin" for these commands. Scripts could then start by prepending these directories to $PATH or $path, and things would work a lot better.

      But I've never seen any vendor do this. Probably they'd decide that these commands aren't safe for novice users, and would start doctoring them to be user friendly.

      There are powerful forces at work blocking the development of user-friendly scripts ...

      --
      Those who do study history are doomed to stand helplessly by while everyone else repeats it.
    165. Re:The 'help' command by Anonymous Coward · · Score: 0

      alias rm 'rm -i'

      The problem is that the * argument is expanded by the shell, so that rm gets all 537 files as its arguments; unlike DOS where the DEL command got it and processed it.

    166. Re:The 'help' command by Anonymous Coward · · Score: 0
      And humerous:
      .HELP SEX

      The DECsystem-10, being only a machine, is not in a position to be able
      to offer help on problems of this type. Sorry.

      (For HELP with the various aspects of reproduction, users are advised to
      consult the Xerox documentation. ed.)

      .KJOB
    167. Re:The 'help' command by darkxsun · · Score: 1

      Well, let's think this through logically. If new distributions with Windows-XP-like ease start coming out, more will soon follow and any that are true to Unix tradition of high power and low size will become more and more outdated to the point of being obsolete. I want distributions like Slackware to be around forever, not suffocated by garbage like Lindows (http://www.lindows.com) and Mandrake. I haven't a problem with customizing Linux, that's why it was made, but when corporate companies like SCO and Redhat are using similar monopoly-creating tactics to Gates's at Microsoft, I don't have the freedom that I am guaranteed by the GPL, which, in case you haven't noticed, the Linux kernel is published under.

    168. Re:The 'help' command by jonadab · · Score: 1

      > Stdidiot is where you tell the user verbose output of what you are doing
      > including positive affirmation!

      The right place for this stuff to go is standard output; what we need is a
      standardized centralized way for the user to change one setting in one place
      and have all applications see it and know how simple/verbose/newbieish the
      user wants everything to be. We could call it the user experience level and
      abbreviate it UXL for full buzzword compliance. New user accounts could start
      with the UXL set to 0 by default, which means "the user is slightly more
      intelligent than lettuce but has less experience using computers". At a UXL
      of 0, the desktop would consist of four big icons -- one for "read email", one
      for "surf the web", one for "turn off computer", and one labelled "advanced",
      which would prompt the user "Are you ready for more options?" and (if yes)
      raise the UXL to 1. At a UXL of 0, the web browser would have three buttons
      on the toolbar -- Back, Print, and Search. At UXL of 1 the address bar would
      appear. And so on. As users gain experience, they'd keep raising their UXL
      setting, which would cause more advanced options to appear in the menus,
      preference dialogs, and so on. Command-line apps could read the setting too.
      If the user raises the UXL to 3 or so, a command prompt window would become
      available, but all the command-line apps would be set to a hyperverbose mode
      wherein they explain exactly what they're going to do, do it, and then tell
      the user what they did. Raising the UXL would ease off the more annoying
      aspects of this; raising the UXL high enough would eventually land you with
      old-school Unix-style behaviors. Given a high _enough_ UXL, rm would not
      prompt "Are you sure", and standard globbing would be expanded into full
      regular-expression pattern matching (a la Perl) and so on. It would need to
      be well-documented exactly what you should set your UXL to in order to get
      the "old", pre-UXL behavior. (128 seems like a nice number...) Users past
      a certain level could directly set their UXL to a specific number and also
      could set up their app launchers to change the UXL within that application's
      environment (similar to running an app chrooted or sudoed or whatever) so as
      to have different UXLs for different apps.

      It should also be easy to set the UXL back down, so that users who raise it
      too much too quickly aren't stuck at sea, so to speak. I'm thinking (at the
      lower UXLs anyway) big fat buttons on the desktop for "More Advanced" and
      "More Simple".

      --
      Cut that out, or I will ship you to Norilsk in a box.
    169. Re:The 'help' command by Anonymous Coward · · Score: 0

      second match for "disk space" happens to be df, but Aunt Tillie's head would explode after reading the first match. Try again.

    170. Re:The 'help' command by Anonymous Coward · · Score: 0

      a fair amount of consternation, misstyped commands, web lookups and other crap

      Methinks you need to take some typing classes. I have yet to see a true Unix sysadmin who cannot fire off 256 keyboard hits so fast it makes your head spin, without missing a single character, and on the odd chance they do miss one, they're back again right away and do it right.

      I know this will come as a shock to you, but the world of Unix was doing very nicely, thank you, before you idiots with your user-friendly GUI malarkey came along.

    171. Re:The 'help' command by rixstep · · Score: 1

      With DOS it was easy; everything which was embedded in command.com

      And that was good? Hello?

      The reason the Unix shells are so powerful is that they interpret commands and no more - this is classic Ken Thompson thinking. And you know you can move from one shell to another with ease - just type in their names.

      The reason the MS shells are so poor is that they confuse things - as always. There is no good design here. Perhaps 'user-friendly' is a consideration, but where does that get them? Nowhere. MS shells are about the weakest of the lot. They percolate your coffee, mix your Mai-Tais - but can they interpret commands like a Unix shell, with advanced control flow and the like? And you truly do not see the connection?

      To call COMMAND.COM a 'command interpreter' or 'shell' is really stretching it - akin to calling MS-DOS an 'operating system'.

      And BTW: having things such as 'dir' embedded in COMMAND.COM did not make things any easier; the poor design just made things more difficult.

  2. Mac OS X by jammer+4 · · Score: 4, Insightful

    And isn't it nice that Mac OS X now gives you the best of both worlds :)

    1. Re:Mac OS X by Standard+Colin · · Score: 1, Funny

      I like the way you chose to back up your statement with solid, and clear evidence.

    2. Re:Mac OS X by scsirob · · Score: 2, Interesting

      I write diagnostics tools for a living. All command line based. Same source tree compiles on Solaris, Win32, Linux, NetBSD, FreeBSD, AIX and MacOS-X.

      Too bad, users of MacOS-X are the *only* ones who need handholding to operate the tools.

      --
      To Terminate, or not to Terminate, that's the question - SCSIROB
    3. Re:Mac OS X by baryon351 · · Score: 3, Insightful

      I think so

      I don't believe the importance of a really refined gui is as high as it used to be. Back when the original mac was introduced, along with other later GUI based systems such as the Amiga, it was brand new. Newbies back then were far newbier, and it wouldn't be unusual to find 98% of the population who had never used a computer, EVER.

      Now in the same society you'd be hard pressed to find a third grader who hasn't used a computer for nearly a year. The skills are being embedded at a younger and younger age. The big difference between a machine thats intuitive now, and one thats not, is the one that doesn't crash is more usable. Not much more than that

    4. Re:Mac OS X by jammer+4 · · Score: 1

      Well, I don't think anyone would debate that the Unix shells are the most powerful CLI's around right now.

      And in terms of GUI, even if you don't like the Mac OS X GUI you need to admit that it's a well functioning GUI. So my point was that Mac OS X has a good GUI a good CLI. Maybe not the "best" but certianly good.

    5. Re:Mac OS X by Anonymous Coward · · Score: 0

      The same could be said about windows.

      And before you say they just stole it from Apple or Xerox, etc, please remember the MS innovations they did to the GUI, like the Document-View architecture. Where would GUI developers be today without that?

    6. Re:Mac OS X by Zone-MR · · Score: 2, Insightful

      And isn't it nice that Mac OS X now gives you the best of both worlds :)

      Linux has done the same ever since X came into existance.

      Windows has always supported a command prompt too, just the majority of users don't have a clue on what it is, or how to use it.

      IMHO only a subset of the intrinsic OS utillities can be properly used via the GUI. As an example I often want to transfer files from my digitial camera. The camera saves the files as "DSCF0001, DSCF0002, ...". Sometimes I want to move the contents of several memory cards into each folder. I have no quick way of renaming "DSCF0001-DSCF0056 --> Holiday0001-Holiday0002" via the GUI. In the CL, I just type "ren DSCF* Holiday*".

    7. Re:Mac OS X by bfg9000 · · Score: 2, Funny

      You know, I haven't seen a single article, on any topic, in the last 6 months where at least one person didn't try to sell me a Mac.

      --

      I'm not normally an irrational zealous dickhead, but I figure "When in Rome..."

    8. Re:Mac OS X by drouse · · Score: 1

      Well, considering that they *expect* a GUI, I'm not terribly suprized.

      And since the classic Mac OS days there have been ways to wrap a command line application inside a GUI object. Today it would be even easier, with an AppleScript that ran the command line ap and then sent formatted output to ... I don't know ... TextEdit? There are a lot of options.

      But if you'd rather be pissed off and hold their hands, don't bother.

      --
      -- I browse at +5 with stripped sigs ... Ha! Ha!
    9. Re:Mac OS X by Anonymous Coward · · Score: 0

      The Amiga preceded the Mac by a year. Amiga's came out in 1983, Mac's in 1985

    10. Re:Mac OS X by Durandal64 · · Score: 2, Interesting
      inux has done the same ever since X came into existance. Windows has always supported a command prompt too, just the majority of users don't have a clue on what it is, or how to use it.
      He said the best of both worlds, not "command line plus fucking ugly GUI." I like a lot of things about both Linux and Windows, but neither holds a candle to OS X.
    11. Re:Mac OS X by Durandal64 · · Score: 1

      Oh, and I'd argue that OS X isn't exactly the best of the CLI world. Sure, it has a CLI, but you can't just hit a hotkey to bring it to the front in the middle of a GUI session, like you can in Linux. That really sucks when you need to get to the terminal because the GUI's frozen.

    12. Re:Mac OS X by christopher240240 · · Score: 1

      X is older than linux.

    13. Re:Mac OS X by bdowne01 · · Score: 2, Insightful

      And assuming they're not on Apple's payroll, you just might have to step back and wonder if there's a damn good reason! :)

      --
      -brain
    14. Re:Mac OS X by PitaBred · · Score: 1

      What's even better is trying to get them to understand the concept of directories. We updated our program specifically for one user, and he was an egotistical, cocky bastard who couldn't figure out how to decompress the file (click on it) then copy it to where the old one was (not a very difficult task to find). We went through multiple emails, and finally ended with me on the phone with him. A lot of people buy OSX because it "just works". Unfortunately, it's a user defect that causes most of the problems.

    15. Re:Mac OS X by PitaBred · · Score: 1

      You obviously haven't used OSX much for development then. It's a pain. Sure, it has auto-complete, but it won't do it if you don't match case. So much for the vaunted case-insensitivity of OS X. And since when is KDE a "fucking ugly GUI"? Even the default configuration looks pretty cool to me. Yeah, I have a G5 sitting on the desk here, and I'm using it, extensively. I still like Linux better. OS X was made for people that wear mittens for daily tasks.

    16. Re:Mac OS X by DoctorScooby · · Score: 0

      Hmmmmm... I know *I* have to wonder. I have a few Macs, and while they're very good, they're definitely not deserving of the amount of worship I see here. The Finder sucks compared to Windows Explorer, Safari is barely out of Beta, the damn things are still at 1-2 Ghz with a crippled bus, iLife is still crashy and often slow (iPhoto STILL sucks), and Photoshop REALLY IS FASTER ON WINDOWS. OS X is not Open Source like Linux, it doesn't have the millions of apps or printer/scanner/camera/etc. support like Windows. Apple computers are LOSING marketshare, which means Jobs, being a smart and hardcore businessman, will eventually migrate COMPLETELY from making computers to iPods (his most profitable product), leaving all us Maccies in a BeOS-like situation of homelessness, and since OS X is proprietary, no way to continue development ourselves. There are ahem--let's say, "rumors" of backdoors built into OS X at the request of the NSA (It was done with LotusNotes and many other important pieces of software (search this page for 'Lotus'), and I highly doubt Apple would be able to resist similar demands, especially when a large cash carrot was dangled in front of what was, at the time, a very financially desperate Apple).

      Yes, of course, I know this is a "troll". I know better than to post something "Insightful" or "Informative". I've learned that on Slashdot, when reality conflicts with hype, reality must be wrong. Don't bother reading it or thinking about it; just mod it down and go back to blissful unaware sleep. I and the other Overlords will take care of everything for you. Damn, it's hard to blow the whistle when your mouth is taped shut by the religious masses.

    17. Re:Mac OS X by Durandal64 · · Score: 1

      I work as a developer for my university. The Terminal in 10.3 is indeed case-sensitive (and there is the HFS+ Case Sensitive file system for server). I very much prefer XCode to any other IDE I've used. It's clean and simple, unlike VS.Net, which is just god awful.

      And I've seen the Linux GUI's. Some of them look okay, but Aqua is far, far better-looking. Konquerer has to have some of the ugliest toolbars I've ever seen, and the Aqua knock-offs for Linux are just abysmal.

    18. Re:Mac OS X by bfg9000 · · Score: 1

      Well, I know my mom had damn good reason to constantly warn me to stay abstinent when I was a teenager, but it was irritating just the same. Stop telling me what to think and just give me unbiased complete specs or nothing at all.

      The MacSlashdot Sales Stalkers are a pain in the ass. They make this site feel less like a true conversation with give and take and appreciation of other's viewpoints, and more like there are Jehovah's Witlesses constantly coming to my door, bothering me with something I don't want and will NEVER agree to. Slashdot discussions are becoming all the same cookie-cutter crap. "Whatever you're using is worse than a Mac. You won't be truly happy until you buy a Mac. I can offer you salvation! Buy a Mac. Buy a Mac. Buy a Mac. Don't look too close at the specs, just buy one." If people wanted a sales pitch, they'd go to Apple.com.

      But read my posting history, you'll see that I already have a Mac. It's good. OS X beats Windows by far and is more user-friendly than Linux. The only thing I truly hate about it is you people. The sales drones who constantly lie about how great it is on this site and others like it. And if they're not lying, they're twisting the facts just enough that everyone believes one thing without the salesman actually saying it. But they lead everyone on and let them jump to incorrect conclusions without correcting them. Everywhere I go there's somebody telling me something I can prove is not true, just by turning my own computer on! Much of it is true, but it's still not cool to post "Macs are the greatest!" to every damn thread. It's irritating as hell. I partly base my purchase decisions on these comments, and I certainly feel I was lied to in order to make a sale. That's dishonest and I don't respect it one bit.

      --

      I'm not normally an irrational zealous dickhead, but I figure "When in Rome..."

    19. Re:Mac OS X by bfg9000 · · Score: 1

      Thanks for the link. Scary.

      --

      I'm not normally an irrational zealous dickhead, but I figure "When in Rome..."

    20. Re:Mac OS X by bdowne01 · · Score: 1
      Well, I know my mom had damn good reason to constantly warn me to stay abstinent when I was a teenager, but it was irritating just the same. Stop telling me what to think and just give me unbiased complete specs or nothing at all.

      The MacSlashdot Sales Stalkers are a pain in the ass. They make this site feel less like a true conversation with give and take and appreciation of other's viewpoints, and more like there are Jehovah's Witlesses constantly coming to my door, bothering me with something I don't want and will NEVER agree to. Slashdot discussions are becoming all the same cookie-cutter crap. "Whatever you're using is worse than a Mac. You won't be truly happy until you buy a Mac. I can offer you salvation! Buy a Mac. Buy a Mac. Buy a Mac. Don't look too close at the specs, just buy one." If people wanted a sales pitch, they'd go to Apple.com.

      But read my posting history, you'll see that I already have a Mac. It's good. OS X beats Windows by far and is more user-friendly than Linux. The only thing I truly hate about it is you people. The sales drones who constantly lie about how great it is on this site and others like it. And if they're not lying, they're twisting the facts just enough that everyone believes one thing without the salesman actually saying it. But they lead everyone on and let them jump to incorrect conclusions without correcting them. Everywhere I go there's somebody telling me something I can prove is not true, just by turning my own computer on! Much of it is true, but it's still not cool to post "Macs are the greatest!" to every damn thread. It's irritating as hell. I partly base my purchase decisions on these comments, and I certainly feel I was lied to in order to make a sale. That's dishonest and I don't respect it one bit.


      Well, here's a one little viewpoint from "us people".


      It's just a computer.


      Repeat that several times until you "get it".

      In case you don't, here it is:

      I give a flying fuck what they hell I'm using, I just want it to work when I need it. After doing just crap as work for the better part of a decade now, I learned to HATE shit that doesn't work. That means just about every computer in general.

      Macs are the most invisible computers--far from perfect--but they do what I want the least amount of bullshit.

      --
      -brain
    21. Re:Mac OS X by bfg9000 · · Score: 1

      It's just a computer....I just want it to work when I need it.... I learned to HATE shit that doesn't work.

      If it's "just a computer", tell your zealot buddies to stop trolling me and everybody else here with astroturf. They obviously don't think it's "just a computer", or they wouldn't be getting the Apple logo tattooed on their overstuffed asses. If you just want it to work when you need it, WindowsXP has far better compatibility than OS X, over a range of far more devices. It rarely crashes. It's faster than OSX at the same clock speed, and PCs have faster hardware. You hate stuff that doesn't work, I hate the fact that my TiBook flaked all to hell and Apple said it was typical and wouldn't fix it. I hate that the Finder is Carbon sluggish badly designed crap compared to Windows Explorer.

      I hate people that try to shut me up from thinking my objective mind, when they post crap about how their PowerBook 520 can run 25 copies of Photoshop CS and not crash.

      My ass.

      --

      I'm not normally an irrational zealous dickhead, but I figure "When in Rome..."

    22. Re:Mac OS X by CoolMoDee · · Score: 1

      I am one of those that "sells" (not on payroll) Apple, but I also sell other things, such as Linux, Openoffice and Mozilla, and open-standards. I use OS X because I am addicted to Objective-C and the NeXT way of developing (yes, yes I know, GNUstep, but it is a bit cumbersome as of now). Why do I "sell" apple? Because I belive that it provides one of the best user experiences out there. Why do I "sell" linux? Because it is (generaly speaking) more secure than that OS that comes out of Redmond, and depending on the tasks (non power-user) can provide a better experience. As for OpenOffice and Mozilla, people like the idea of using an Office Suite freely and not breaking some copyright laws in the process. As for Mozilla, people like being able to browse with-out pop ups, have built in spam filtering in ther mail, and tabs. In short *I* sell alternatives because without some "grassroots* efforts, nobody would know about them.

      --
      Jisho - A Japanese English German Russian French Dictionary for the rest of us.
  3. 4Dos by swordboy · · Score: 3, Interesting

    Does anyone remember 4Dos? Between that and Qmodem, I learned a whole lot about computers.

    --

    Life is the leading cause of death in America.
    1. Re:4Dos by rduke15 · · Score: 1

      I do.

      It enabled me to actually do some useful stuff with the Windows command-line and batch files.

      That was, of course, before I discovered Perl. And later (on Linux) what a real CLI is supposed to be.

    2. Re:4Dos by muffen · · Score: 4, Informative

      Remember??

      I still today spend way more time in a 4DOS (or well, 4NT) prompt than I do in the windows GUI.
      Virtually everything I do at work is done via 4NT BTM files (batchfiles that only work in 4DOS/4NT).

      The CMD line interface is really good, and it makes me a little sad that new computerusers don't realize this.
      Some things are just done so much quicker using the CMD interface...

      For example, I use multiple computers at work, and I have to transfer files between them all the time.. I do this using 4NT BTM's, and it takes a few seconds to transfer a file... doing the same thing in a FTP app takes much longer...

    3. Re:4Dos by paganizer · · Score: 1

      I'm probably insane, but...
      Every computer I build for friends and family (or me) I first create a fat 1.9gb directory and install either dos 6.22 or Win98SE if possible, then Norton Utilities 8 with Ndos.
      Then they get the Win2k on the rest of the drive(s). (or NT4ws on older machines; I have about 50 licenses from a failed business)
      Having a cmd prompt that will access Ndos makes life VERY simple.
      Nobodies asked for Linux yet, but they each have a mandrake CD in a sleeve taped to the side of the computer, just in case.

      --
      Why, yes, I AM a Pagan Libertarian.
    4. Re:4Dos by ClioCJS · · Score: 1

      You need 4NT.

      --
      -Clio
      Karma: Bad (mostly from not giving a fuck)
      Blog: http://clintjcl.wordpress.com
    5. Re:4Dos by misleb · · Score: 1
      Dude, you really need to install Linux some time. If you think the NT CMD interface is powerful, try a bash shell (and associated tools). The things you can do with find/cut/grep/sort/etc are amazing. And don't fall for that Cygwin crap. The tools might be there, but if the OS isn't designed to be manipulated by them, they are not very useful.

      -matthew

      --
      "THERE IS NO JUSTICE, THERE IS ONLY ME." -Death
    6. Re:4Dos by Anonymous Coward · · Score: 0
      Remember?? I still today spend way more time in a 4DOS (or well, 4NT) prompt than I do in the windows GUI. Virtually everything I do at work is done via 4NT BTM files (batchfiles that only work in 4DOS/4NT).
      Me too. Man .. what I wouldn't give to have my beloved 4NT shell ported to Linux. =)
  4. Brilliant by jennifer_l · · Score: 2, Informative

    Wow, what a well-researched and interesting article. Will we be seeing 'newbie conversation' mode with the limited commandset (as used in the article) splashing across the desktop soon? Unlikely, I think, but this article puts the whole thing in a new dimension for me.

    I notice the author is multitalented -- he's also the genius behind Desktop Manager, a virtual desktops manager for Mac. Wow. If only I was single...

    1. Re:Brilliant by rjw57 · · Score: 4, Funny

      If only there was a -1: Author's Girlfriend moderation option...

      --
      Rich
    2. Re:Brilliant by jennifer_l · · Score: 1

      *snigger* It should be +5 (and a cup of tea) surely?

    3. Re:Brilliant by Chalybeous · · Score: 1

      +5 and a cup of tea with Professor Chronotis...
      (I really should stop doing obscure sci-fi gags, but I love Cambridge and Douglas Adams!)

      --

      "It is dark. You are likely to be eaten by a grue." -- Zork

    4. Re:Brilliant by torpor · · Score: 1

      oh man, on a sunday morning too ...

      (cup of tea on a sunday morning, i mean)

      so. why aren't you single?

      --
      ; -- the corruption of government starts with its secrets. a truly free people keep no secrets. --
    5. Re:Brilliant by Indras · · Score: 1

      I, too, thought the article was brilliant, particularly this phrase:

      Like most humans she (perhaps somewhat unfairly) feels happier when she perceives herself to be the most intelligent or knowledgeable person in the dialogue.

      When you think about it, it's so true. All people want to be smarter than the people they talk to or the tools they operate. If overly-complex interfaces are truly the #1 problem for a first-time computer user, then perhaps all programs should have a "first-use" mode, similar to a Wizard. A simple dialog box, with a question or statement for the user to read, and two or three buttons at the bottom to choose as a reply. New features to the interface can be added gradually as the user gets comfortable with the existing ones.

      Well, personally, I like the idea of using command line. Perhaps if I had started teaching my grandparents bash first, instead of putting them in front of Windows XP with AOL 8.0, scanning software, and all sorts of other complexities, they would have felt more comfortable. I can certainly agree that the mouse is not an easy thing to teach someone to use if they've never touched one before.

      --
      The speed of time is one second per second.
    6. Re:Brilliant by jennifer_l · · Score: 1

      I wonder if I had taught my grandparents bash whether it would have helped them all that much. My grandmother has three main tasks she wants to do on the computer: scan in paintings, edit/print paintings, and send email. Certainly I don't see the commandline being much use for the first two (highly graphical) activities. Email, yes; though almost all her email is in HTML, and a lot of it is family email with photographs attached.

      Yes, she would know more about how the computer works. And perhaps the commandline fits her method of working better -- she works in 'steps', writing down everything in the right order, and it would be a lot easier for her to remember the steps if they were commands rather than 'click on this' 'click on that'. But at the end of the day a huge knowledge of bash wouldn't help her touch up a spot of colour on her pictures without horrendous contortions... she doesn't really want to learn how it works, and that's fine by her and me (the 'local' -- only 100 miles away -- technical support).

    7. Re:Brilliant by cbcbcb · · Score: 1

      Get a (chat) room!

    8. Re:Brilliant by Mikkeles · · Score: 0
      'All people want to be smarter than the people they talk to ...'

      Well, not quite; as a student, I wanted my teachers to be smarter than I, but it was so rarely the case :^)

      --
      Great minds think alike; fools seldom differ.
    9. Re:Brilliant by LittleBigLui · · Score: 1
      he's also the genius behind Desktop Manager, a virtual desktops manager for Mac.


      Wow. A real genius.

      Seriously, virtual desktops are a great thing, and retrofitting them on a system that doesn't support them "out of the box" is probably very hard and frustrating work.

      Kudos to everyone who does this, but "genious" describes people who invent concepts like that, not those who port them.
      --
      Free as in mason.
    10. Re:Brilliant by jennifer_l · · Score: 1

      Hm.

      genius, n.
      [...]
      A person who has an exceptionally high intelligence quotient, typically above 140.

      amongst other meanings -- and don't get me started on quoting the OED ;-)

      There is no one true way.

    11. Re:Brilliant by LittleBigLui · · Score: 1

      Ah, come on. We both know that the fact that you have to rely on a dictionary to prove your point only shows that you are wrong. ;)

      --
      Free as in mason.
  5. Command line is your friend by scsirob · · Score: 5, Insightful

    I find it amazing how many computer "experts" are dead in the water when the mouse doesn't work or the GUI doesn't come up as expected.

    Too bad only the "old-timers" seem to appreciate the power of the keyboard.

    --
    To Terminate, or not to Terminate, that's the question - SCSIROB
    1. Re:Command line is your friend by Anonymous Coward · · Score: 2, Interesting

      The thing is, I found windows to be far superior in using the keyboard in GUI applications. You can navigate completely without a mouse in Win XP something you really can't in KDE or GNOME.

      I also frequently use the start->run command, I never manually browse to a folder.

    2. Re:Command line is your friend by chunkwhite86 · · Score: 5, Funny

      I find it amazing how many computer "experts" are dead in the water when the mouse doesn't work or the GUI doesn't come up as expected.

      These same so-called "experts" tend to have MCSE certificates proudly displayed on their cubical wall.

      --
      I'd rather be a conservative nutjob than a liberal with no nuts and no job.
    3. Re:Command line is your friend by Tribbin · · Score: 2, Funny

      Nature has it's natural selection...

      Mouse-users will be less succesful in life because of RSI.
      The female would find the male less attractive because it has less to offer.

      In the end there will only be keyboard-users.

      --
      If you mod this up, your slashdot background will turn into a beautiful sunset!
    4. Re:Command line is your friend by Wun+Hung+Lo · · Score: 1

      I agree totally. I don't know how many so-called "System Administrators" (especially MCSE's) I have dealt with who pee their pants when they see a command prompt.

      If it's GUI-less,
      they're cluey-less.
      (Hey, I'm a poet!)

    5. Re:Command line is your friend by Gopal.V · · Score: 1

      I'm a GUI geek most of the time ... but actually, you should find how effective command line is when you actually put that with crontab ...
      like ....open the firewall for browsing during lunchtime... send a password reminder mail every month or something ...

      For those watching , it's magic :)

    6. Re:Command line is your friend by BiggerIsBetter · · Score: 4, Funny

      She will also enjoy his strong and nimble fingers, whereas the lonely mouse user will have to find his own use for his strengthed wrist.

      --
      Forget thrust, drag, lift and weight. Airplanes fly because of money.
    7. Re:Command line is your friend by w1r3sp33d · · Score: 5, Funny

      And many of us still use the most powerful keyboard ever created, the IBM (super-clicky) Model M. The sound of these keys has been known to kill users at twenty feet and drive MCSE's mad.

    8. Re:Command line is your friend by HFXPro · · Score: 1

      I'll second his results. I too find it often much easier to navigate around in windows with a keyboard than in the popular linux gui's. Even better I can often get by using a mouse only without a keyboard and still get some work done. It makes it a little hard to program, but doing things like researching on the web, etc can be done without too much hassle.

      --
      Reserved Word.
    9. Re:Command line is your friend by khakipuce · · Score: 1
      Like many perople I grew up in the days when there was nothing else and I have long advocated that one should use the right tool for the job, and very often the correct tool for interacting with the OS is the command line.

      In the days of showing users how to use DOS there was a lot less to remember and no hand-eye coordiantion skills to learn, to get started. Over the last few years my mother has started using a computer and she finds it very hard to double click wihtout moving the mouse - I've taught her the keystrokes to get round this - but here life would be a lot simpler is there was no mouse.

      I also find that, like other posters have said, people who have never used the command line do not know what they can do with it. And so a lot of simple taks (recursively delete all files called *.log that are over 7 days old) become a real chore.

      --
      Art is the mathematics of emotion
    10. Re:Command line is your friend by term8or · · Score: 1

      It depends on the OS. In Windows I would be dead in the water without a GUI, but in a Unix-based OS I would be quite happy.


      As an anecdotal point my dad used to teach computing to kids, and was fairly good at it (not a GURU but a capable user). Once the GUI came in, Dads computing knowledge gained a half-life of every 2 years. Every time a new OS comes out, everything looks different. And he has to learn it all again. Whereas all command prompts look the same. And all you needed was a list of the appropriate commands, rather than a 200 page "how to" book. Now he can barely open a word document. How intuitive is that?

      --



      "As a writer / novelist you might want to spellcheck your sig. :) " - AC
    11. Re:Command line is your friend by JanneM · · Score: 1

      The Model M was/is an absolutely great keyboard. Almost indestructible - well, apart from a fatal weakness regarding hot coffee, which killed the last two I had. Great key "feel"; never any doubt on wether you managed to hit the key or not, or if you did or did not hit another key at the same time. The noise can be more than a little distracting, though.

      In fact, make a slightly more silent, liquid-proof version (with Swedish layout), and I'll be first in line to get one.

      --
      Trust the Computer. The Computer is your friend.
    12. Re:Command line is your friend by Anonymous Coward · · Score: 0

      No, you're noet.

    13. Re:Command line is your friend by AndroidCat · · Score: 1

      I dumped a coke into mine but it got better with some cleaning. (One or two keys need a little more work.) I use a scavenged Compaq RT101 on my main machine: small desk space, firm keys and less noise. I hate mushy keyboards.

      --
      One line blog. I hear that they're called Twitters now.
    14. Re:Command line is your friend by adept256 · · Score: 3, Informative

      I couldn't agree more. I went without a mouse for two weeks using winXP. Why? Long story! Anyhow, I became so familiar with the keyboard shortcuts, I was soon using the GUI faster than when I was using a mouse.

      The keyboard shortcuts are faster (in general) than the mouse-work it would take to do the same thing. There are stumbling blocks, somethings are *impossible* with a keyboard, but on the whole I found a way to do most things. Getting the context-menu from an icon in the system tray isn't as fast as with a mouse, but it's not impossible. Selecting text in IE is impossible, but you can always 'view source' and copy from there.

      I still use a mouse of course! They're indispensible, but I'm not as reliant on it. I do shudder when I see someone take as many as 10 mouse-clicks in what can be done in 3 keystrokes. Yes, the keyboard is powerful, and under-rated.

      On-topic: I thought the whole idea of GUIs was to make the whole experience more 'user-friendly' for beginners. Maybe in the beginning, but looking around my GUI and it's myriad dispirit elements it's easy to see how a simple 'C:\>' would be a far easier to comprehend starting point for newbies.

      --

      I ran a benchmark on my quantum computer, now I can't find it anywhere!
    15. Re:Command line is your friend by bhtooefr · · Score: 1

      I don't know if it was made with a Swedish layout, but the Lexmark Model M (from 1993 until Unicomp bought The keyboard division - capitalization intentional) was quieter (it also felt cheaper), and had drainage channels. I think in early 1993 IBM added drainage channels to the original Model M, then they spun off Lexmark, which is when Model M quality fell off.

    16. Re:Command line is your friend by JanneM · · Score: 1

      Yep, they are cleanable, but it is still hard on them. It's generally not the first or second or even third incident that kills them, but eventually you will get enough damage on the metal tracer layers inside that it is effectively destroyed.

      I'd really like to see a solution with a sealed rubber/plastic layer beneath the keys themselves. The keypress detection is inductive, so you could make a design that allows the keys to travel freely but still has no risk of allowing liquids (or breadcrumbs, ramen, hair, dust and what have you) inside.

      --
      Trust the Computer. The Computer is your friend.
    17. Re:Command line is your friend by adept256 · · Score: 1

      Oh, one more thing. MCSE's that don't know what alt-space-c does generally find out the hard way soon after meeting me. It's the lazy man's alt-f4, you can kind of mash it in (for those special goatse moments). There are so many shortcuts people just don't know about, even so-called professionals :)

      --

      I ran a benchmark on my quantum computer, now I can't find it anywhere!
    18. Re:Command line is your friend by paganizer · · Score: 1

      As a MCSE I have to say....
      yup.
      Even if you take the "intensive" courses, they don't tell you much about the cmd prompt.
      Which leads to me having heard, quite often, "oh shit, now what?, "you can't do that!", and "what did you just do?".
      Luckily, I learned all the truly neat stuff before win 3.1 came out.

      --
      Why, yes, I AM a Pagan Libertarian.
    19. Re:Command line is your friend by Cro+Magnon · · Score: 1

      Speaking of keyboard shortcuts, once one of my cow-orkers got some ad window where he couldn't get to the close button. When I told him about ALT-F4, he'd never known about it before. Given the choice, I'd like to feed the mouse to my mom's cat.

      --
      Slow down, cowboy! It has been 4 hours since you last posted. You must wait another few hours.
    20. Re:Command line is your friend by Sigma+7 · · Score: 1

      I also find that, like other posters have said, people who have never used the command line do not know what they can do with it. And so a lot of simple taks (recursively delete all files called *.log that are over 7 days old) become a real chore.
      Winkey-F
      All or part of the filename: "*.log"
      Look in: Whatever.
      Sort by: Date Modified.

      I've been using the commandline for quite a long time, and I have never seen a way to recursivly delete files other than "rm -rf *" or "deltree Dir". Both of these commands, as you know, are a bit rash that remove every single file with no filter.

      In fact, I never remembered any easy way to recursivly delete a specific set of files in any
      command line - never really needed it. The only way I know that it is possible is to use the tree command to list every file, grep the output, and set the output as the commandline parameters for the delete command.
    21. Re:Command line is your friend by Apathetic1 · · Score: 1

      Ah, but balance is everything - the mouse user develops a strong and nimble scroll-wheel finger.

      --

      My username does not make me Apathetic. It's irony, get it?

    22. Re:Command line is your friend by Skweetis · · Score: 1

      Amen to that! The first computer I ever bought was an IBM PS/2. 286, 1MB RAM, 20MB HD. I still use the keyboard, although I gave away the rest of the system years ago. The spacebar is a little loose, but it still works fine. I actually have trouble getting into "deep hack" mode without the key-clicking :).

    23. Re:Command line is your friend by geoffspear · · Score: 1

      And you can't use a GUI tool to edit your crontab file because...?

      --
      Don't blame me; I'm never given mod points.
    24. Re:Command line is your friend by dasmegabyte · · Score: 1

      No, the whole idea of GUIs was to make computers more VISUAL -- to make the experience of using one better reflect real life. Instead of moving a file to a folder, you could DRAG it to a folder. Instead of reading a tag at the beginning of a word that says it was bold, you could SEE it was bold. If you completed a command, you knew you completed it. In short, the GUI was a way for man to tell his computer what he wanted to do without needing a small dictionary of terms to do it.

      GUIs are infinitely more complex than the command line. They're also infinitely better at complex commands. Complex, meaning composed of difficult relationships, not meaning composed of MANY commands (for batch operations, you can't beat a good CLI). Such things as WYSIWYG document editing, pixel and area level graphical manipulations and any abstracted data manipulation (graphs, waveform editing, many-to-many relationships) are impossible without SOME form of GUI -- even if it's done in ASCII.

      So, yeah, it is easier for newbies to perform the three or four functions they need to use with the CLI. They only have to learn three or four things. But these people don't really need to computer for what they're doing, anyway.

      --
      Hey freaks: now you're ju
    25. Re:Command line is your friend by Anonymous Coward · · Score: 0

      Message has been forwarded to PETA. People like you are scum.

    26. Re:Command line is your friend by evilad · · Score: 1

      You need to learn to use backticks. The command you're looking for is something like

      rm `find . -name "*.log" -mtime 7`

    27. Re:Command line is your friend by Patik · · Score: 1
      Selecting text in IE is impossible

      In Mozilla, just hit F7 to toggle carat browsing, where you can move the text cursor anywhere on the page and select text using shift.

    28. Re:Command line is your friend by Kenshiro · · Score: 1

      Why not

      find . -name "*.log" -mtime 7 -exec "rm" "{}" \;

      ?

      Not that backticks aren't incredibly useful...

    29. Re:Command line is your friend by Ganennon · · Score: 1

      I don't have a winkey, now what? *blink*

    30. Re:Command line is your friend by thejaded1 · · Score: 1

      My story is short: During high school, bonus points were offered to those who volunteered to go without a mouse for the remaining two months of Computer class, during a mouse shortage.

      Although the mouse is clearly much faster for doing a lot of things, I still took the extra time trying to figure out how to do it without the mouse.

      IE does have the capability to have a cursor present, something along the lines of "Carets" it's called, IIRC. However, you have come up with a workable solution.

      System Tray, although tedious, is accessed as follows.
      1) Open Start Menu (WinKey OR Ctrl+Esc)
      2) Close Start Menu (Esc) #This is brings you to the Taskbar
      3) Tab over to the Taskbar (now you can select something with arrow keys), Tab again until you see a System Tray icon selected. Shift+Tab to go in reverse order, and once at the System Tray, use arrow keys to select a program.
      4) Hit the Context Menu Button. I have no idea what it is really called, but it's the one between the WinKey and Ctrl on the right hand side. For those without these keys, Shift+F10 simulates a mouse right click.

      To get to the Desktop, first minimize everything if you wish (WinKey+D), Open/Close the StartMenu, (See Above), now "Shift+Alt+Tab", and use arrow keys to select a link.

      Other tidbits, to minimize/maximize windows, "Alt+SpaceBar" brings up the same menu as if you were right clicking on the top left icon in any given window. Now tap "N" to miNimize, and "X" to maXimize. Alt+Tab cycles through active programs, and Shift+Alt+Tab cycles backwards. As well as the standard WinKey+(D/E/F/R/M/L), and WinKey+PauseBreak.

      Experiment with those!

      -Paul

      --
      :wq
    31. Re:Command line is your friend by zero_offset · · Score: 1

      Over the last few years my mother has started using a computer and she finds it very hard to double click wihtout moving the mouse

      Assuming she's using Windows, there is an undocumented registry setting which controls the size of the double-click hotspot. I think by default it's only 5x5. My mother had the same problem, and it mostly went away when I expanded it to 10x10 and slightly increased the double-click time (in the Control Panel). For the double-click hotspot, go to this location in the registry:

      HKEY_CURRENT_USER\ControlPanel\Mouse

      Create two string values, one named DoubleClickHeight and the other named DoubleClickWidth. Set them to whatever pixel size you want. I can't remember whether you have to restart for the change to take effect.

      (Disclaimer: if someone is reading this and planning to whining about undocumented features or whatever, please feel free to move on, I really don't care. I'm just trying to help this guy.)

      --

      Slashdot quality declines as the number of hot grits posts decreases. - Provolt's Law, Apr-09-2005

    32. Re:Command line is your friend by Imagix · · Score: 1

      To coin a joke I heard a while ago: MCSE = Mouse-Clicking-Solutions-Expert

    33. Re:Command line is your friend by bullestock · · Score: 1
      These same so-called "experts" tend to have MCSE certificates proudly displayed on their cubical wall.

      Strange, most walls I've seen are square, not cubical.

    34. Re:Command line is your friend by Anonymous Coward · · Score: 0

      Did any of you rebuild the carburator in your car this morning?
      Did any of you rewire your microwave oven this morning?
      Did any of you swap out circuit boards in your TV last night?

      No, no and no.

      Of course you didn't.

      What you did do was use an abstracted interface, a GUI if you will, to interact with a very complex piece of machinery/electronics to get you to work, to cook your burito, to entertain you.

      Guess what? Your computer should be doing exactly this and more!

      I should have to learn vi to write a letter?
      I should have to learn pkg(add,proto,trans) to extend the functionality of my information device?
      I should have to pine in to retrieve my communications?

      Of course not! And anyone who expects me to is fooling themselves. The thought that a 40+ year old command line interface is superior to an modern intuitive graphically based knowledge machine is just plain ludicrous.

    35. Re:Command line is your friend by Anonymous Coward · · Score: 0

      Once you get used to it, it's definitely faster to use the keyboard than it is to use the mouse for pretty much anything in Windows. When editing text, there are a number of shortcuts that make life much easier:

      Ctrl + Right/Left Arrow: Move the cursor to the next/previous word boundary. (Very useful in conjunction with Shift.)
      Ctrl + Home: Go to the beginning of the document.
      Ctrl + End: Go to the end of the document.
      Shift + Arrows: Highlight text.
      Ctrl + A: Select all. (This is one of those universal ones that people don't seem to know about. If an application doesn't implement it, Ctrl+Home followed by Shift+Ctrl+End will do the same thing.)

      When tabbing across pretty much anything, hold Shift to go backwards.

      Also, Ctrl+F4 does in MDI windows what Alt+F4 does everywhere else. Try it sometime.

      And then there're IME shortcuts... I can switch from English to Japanese mode by pressing Alt+Shift and then Ctrl+Caps Lock. But that's another story.

    36. Re:Command line is your friend by Anonymous Coward · · Score: 0

      Also don't forget Alt+Esc and Alt+Shift+Esc to bring focus to windows. If all the windows are maximized, it's a quick simulation of Alt+Tab. If they're not, just press enter when the taskbar button is focused to quickly maximize it. I strictly use cmd.exe, not explorer, for my shell, and Alt+Esc comes in handy when I don't feel like pressing Alt+Tab.

    37. Re:Command line is your friend by gnu-generation-one · · Score: 1

      I find it amazing how many computer "experts" are dead in the water when the keyboard doesn't work or the CLI doesn't come up as expected.

      Too bad only the "old-timers" seem to appreciate the power of toggling the register states with switches.

    38. Re:Command line is your friend by Anonymous Coward · · Score: 0
      When editing text, there are a number of shortcuts that make life much easier

      You're a good candidate to learn Vi. Vim kicks ass on Windows.

    39. Re:Command line is your friend by BFaucet · · Score: 1

      Hear hear! Well spoken, Bruce.

      --
      -Derick
    40. Re:Command line IS your friend by toiletmonster · · Score: 4, Interesting

      I do _not_ find it fun to spend hours clicking through obsolete, incomplete help dialogue boxes just to find out that I need to click a checkbox in some obscure dialogue box and have to guess if its the customize menu option or the options option and then click through all 15 tabs searching for the checkbox. Bonus points if the option is disabled or expects some obscure registry key to set. More bonus points if clippy or some other annoying dialogue box pops up asking if i'm really sure i want to do that. Double bonus if my program crashes and without an error message, or i get a bsod which outputs some cryptic error messages like "1962 Short School Bus", that don't even tell me what the **** went wrong there. Not to mention customizing a shell script is a lot easier than customizing a gui. Not to mention you can't script guis.

      Gimme a break. My time is too valuable to spend it on that kind of crap.

      Give me a CLI which has prompts me for the stuff I need to enter. If it's a file name, don't give me a file selector dialog where i have to manually click through 20 directores to find it. If I'm supposed to enter options, don't give me checkboxes, radio buttons, or drop down combos. And, ffs, give me an up to date help for it. And clear, humanly understandable error codes.

      And you know what? I'm surprised how much energy goes into defending the sacred right to produce crap code and piss-poor interfaces.

      Here's an idea: if half the time that went into whining about how the 80's graphical user interfaces are better for the user, went instead into throwing together a simple user-friendly shell script or learning how to use existing cli interface we'd all be far better off than we are today.

      Yearly millions of hours go into just learning to use some crap software. It isn't learning some l33t skillz, it isn't "getting a clue", it's just _wasted_. It's time when you're _not_ doing what you needed to do in the first place. Time where, like in the example above, instead of already having your file printed on that networked printer, you're still searching through obsolete help dialogues and trying stuff that fails for no obvious reason.

      look. point taken that for some people in some situations, point and drool might be better. i'm a cli advocate, but not for every situation. but a lot of the things you mention are just poor program design. i like having man pages and open source because if something doesn't work i've got real in depth documentation and if i have to, i can figure out what the heck is wrong. with a gui in a closed source world, you are just sol. even with a gui in an open source world, the code is more complex and less accessible. granted this is not for newbs, but it does help non newbs. and it gives newbs an option to become non newbs -- they can learn if they want. if they don't want, then hey nothing lost.

    41. Re:Command line is your friend by Ryan+Mallon · · Score: 1

      I didn't know others still used these keyboards. I hunted for ages to find one, plus I had to get a 5-pin DIN to ps/2 adapter so I could plug the beast into my machine. My girlfriend hates it at the moment cause the computer is in our bedroom and the clicky keys keep her awake ;-)

    42. Re:Command line is your friend by Anonymous Coward · · Score: 0

      That's because you only look at them from one side. All walls have thickness.

    43. Re:Command line is your friend by Trinition · · Score: 1

      Amen!

      I can't stand when I see people using Windows Explorer and they click the File menu and select Rename, or tha advanced losers use the context menu. I'm screaming in my head "F2! F2, you moron! F-f'ing-2!!!"

      I generally know hwo to do 99% of the things with either a mouse or keyboard, and I do it wherever my hand happens to be from the previous task. Like you said, selecting text in IE can't be done with the keyboard, but in any word processor, text editor, text area, text filed, etc. you can. Likewise, I can struggle to think of ways to enter the new name of the file you're renaming using a mouse, but the keyboard is far more efficient.

      I think every GUI user shoudl be forced to live without a mouse for two weeks, or until they can prove they CAN live without one, and they they'll reap the benefits of being flexible.

    44. Re:Command line is your friend by egg_green · · Score: 1

      I completely agree with you about keyboard shortcuts.

      One time, my parents were giving a PowerPoint presentation at a church, but the computer they were working on had no powerpoint and no mouse. I had to guide them through the install process over the phone using only the keyboard. Apparently, everyone at the church was amazed, and thought I was a genius. The next week, I got several phone calls asking for me to fix various problems from the parisoners.

    45. Re:Command line is your friend by Anonymous Coward · · Score: 0

      In win95 I would agree, but ever since they integrated everything with the browser, half the features have been unavailable, or at least seems to be unavailable from the keyboard.

    46. Re:Command line is your friend by Anonymous Coward · · Score: 0

      find . -name "*.log" -mtime 7 | xargs rm

      backticks or $() have a limit (os-dependent) on how many filenames they can handle.

      -exec is much slower than xargs, because it forks a lot more processes.

      Besides, xargs is easier to type than both the backticks (which key were they again?) and the {} \; combo.

  6. purely anecdotally by Transient0 · · Score: 4, Insightful

    It seems to me that if you start someone on a command line versus starting them on a GUI they learn a little slower but acquire a deeper understanding of the computer.

    point-and-click and drag-and-drop don't encourage any actual understanding of ways in which a computer interprets commands.

    1. Re:purely anecdotally by Anonymous Coward · · Score: 1, Insightful

      I'd say at least 90-95% of people don't have the slightest interest in how the computer works. They merely have a problem to solve (or a game to play) or whatever. Similarly, while I have a vested interest in how the work I'm trying to do works, I prefer tools (or even a complete environment) where I can ignore the rest and assume it'll work when I need it do.

      Naive, yeah, but there's too few hours in the day to worry about everything...

    2. Re:purely anecdotally by Ubi_NL · · Score: 4, Insightful

      Don't you nerds get it??

      I don't WANT to understand how my computer operates internally, just as much as I don't give a toss for how my car or my phone works.

      I just want to type a friggin letter.

      (This is not a troll, but to show that slashdotters are not really a typical representation of the worlds population)

      --

      If an experiment works, something has gone wrong.
    3. Re:purely anecdotally by Chalybeous · · Score: 1

      I'm tempted to agree. I was taught the basics of MS-DOS in school before we got Windows 3.1, and I understand computers better than other members of my family, who've only used Win9x.
      I still use command lines, too - I can telnet to the university library catalogue, check my internet connection, and half a dozen other useful things that are either more time-consuming or dumbed down under Windows.

      Now, if only I could get some help learning the Linux command line, I'd be set...

      --

      "It is dark. You are likely to be eaten by a grue." -- Zork

    4. Re:purely anecdotally by nickos · · Score: 4, Insightful

      "point-and-click and drag-and-drop don't encourage any actual understanding of ways in which a computer interprets commands."

      How does moving a file using the command line rather then dragging and dropping it in a GUI encourage "understanding of ways in which a computer interprets commands"? They're just different interfaces.

      If I install some speech recognition software on my Mums Windows box, will the new command based interface encourage "understanding of ways in which a computer interprets commands"?

      While most users who know how to use the command line also have a good understanding of how computers work, this knowledge is not the result of them having to use the command line.

    5. Re:purely anecdotally by jtwJGuevara · · Score: 1

      Yes, I learned the deep knowledge of computing that turns into carpal tunnel syndrome after repeatedly typing "cd x", "dir /w", "cd x" "dir /w" [...].

    6. Re:purely anecdotally by Cybrr · · Score: 1

      It knows where you click (mouseDown and mouseUp btw) and what you are holding. That's not a big difference from it knows what you ask and what additional info (parameters) you pass to it.

      Piping would be harder to understand in GUI terms though. Hmm.

      --
      Why did GEAR crush RDP?
    7. Re:purely anecdotally by Anonymous Coward · · Score: 0

      The command line limits you to the things you know, which is good for newbies because they're not overwhelmed by the complexities of what they don't know yet. This quality also favors learning before doing, so there is a reason why the command line leads to a deeper understanding.

      On the other hand, a GUI is great for tasks which you don't have to perform regularly (which means you are less likely to remember the command line syntax). A good GUI is an interface which unifies tool and help. In the hand of the uninitiated it provokes trial and error, but in the hand of knowledgeable people, it offers the mnemonic hooks which let you perform a wide range of tasks without having to remember implementation dependant syntaxes while still knowing what you're doing.

    8. Re:purely anecdotally by JCMay · · Score: 2, Funny

      If that's all you want to do, would you not be better served by a correcting typewriter? There's less to figure out, fewer boxes to clutter your desk, and "ink refills" aren't $50 a pop!

    9. Re:purely anecdotally by Anonymous Coward · · Score: 5, Insightful

      The issue here is that while you have no desire to find out how your computer works, YOU STILL NEED TO. The common analogy is that people rarely would think it makes sense for someone to buy a car with no clue how it works, even if you only understand fail conditions.
      Before you say you have no idea, if you live in the US, you did have to a test before you were allowed on the road, if you recall, and in that bank of questions there are fail conditions, such as driving on ice, perhaps even dealing with bug related Emergencies ( The long test to pass driver's ed around here included some very amusing questions about what to do when you discover a bee in your car )
      However, people rely heavily on their computers and never try to learn basic fail conditions, like file location, full disk problems, uninstalling undesired programs, checking for updates. I'm not saying everyone needs to have a nitty gritty look at their kernel source, but you should know the difference between an ISP and AOL. You PAY for this stuff, you should have a vague idea of how it works and first steps on how to fix it when it breaks.
      If you happen to be a supreme fool that knows so little about your car that you can't tell how fast it's goings, whether the engine is running hot, how to tell if your brakes need servicing ( waiting for the grind counts ), or the meaning of any of those "little flashy lights" on your "long window thing the steering wheel is hooked under", I pity you and your genetic tree.

    10. Re:purely anecdotally by Anonymous Coward · · Score: 0

      > I don't WANT to understand how my computer operates internally,
      > just as much as I don't give a toss for how my car or my phone works.
      >
      > I just want to type a friggin letter.

      If you only want to do one thing with a computer, it's very easy to learn. If you want to do more and more with them, is it unreasonable to expect you to take some time to learn? BTW, if you're like most people, you will have taken lessons on how to drive your car.

    11. Re:purely anecdotally by Quazion · · Score: 1

      And DOS with Wordperfect where fine for that, noone needed windows etc...

      Then:Boot computer (5 seconds later)
      at c:\ type wp, hit enter.
      write your letter with wp refernce manual next to you. hit F7 to quit and power of computer.

      Today: Boot computer (30 sec - 2 minutes later)
      Login, press start, press programs, press word.
      Type letter, press file, press quit.
      press start, press shutdown, press ok.
      (wait 30 secs - 2 mins or for ever with win98 ;)
      power off computer.

      Somehow i feel writing a letter just became harder with a gui, you have to know much more steps.
      We have to reduce the steps.

      I say make a computer that boots fast, has 3 buttons. 1 Internet(www) 2 email 3 wordprocessor
      and nothing else, and you must eb able to turn it of at once..

      And now i have to leave so i wont spell check or check if it was nonsence i wrote.

      have fun today...

    12. Re:purely anecdotally by Anonymous Coward · · Score: 0

      Somewhere, you need to have an inkling of how a car works to be seen as ready to get a license to drive...

    13. Re:purely anecdotally by Zardoz44 · · Score: 2, Interesting
      I wholeheartedly agree. Despite being a male, I think this car is the way to go:

      Designed for Women.

      I don't need to assert my masculinity with a fast&furious Dodge Neon. I want a car that I can get in and drive. Does it need gas? Fine. Does it need washer fluid? Fine. Oil change? Give me an easy-to-access location for removing the old and adding the new. Point being, I just want it to work.

      This is the same with computers. I program them for a living, but when I want to use one, I just want to use it. I don't want to have to troubleshoot it every day. I don't want to have to wait 10 minutes for a reboot. I don't want to have to install patches 5 times a week. I want to turn it on like a TV and play a game. If I need more space, give me a (literally) plug&play harddrive that's no more complex than a flash card. I don't want to open the case and muck around with IDE cables and jumper settings.

      Ok. Enough ranting. I'll go back to work.

    14. Re:purely anecdotally by Anonymous Coward · · Score: 2, Insightful

      I see...you don't care about how the brakes work on your car...or how to operate the turn signals...or HOW TO operate the horn...or HOW TO operate the radio...or HOW TO operate the lights. You want a car that reads your mind. And a computer that reads your mind. Learning to operate a computer or a car involves PRECISELY the same thing. The difference is that a computer can do FAR MORE than a car ever will, hence it is MUCH MORE COMPLEX...get over it.
      If all you want to do is type a letter, buy a typewriter...

    15. Re:purely anecdotally by martin-boundary · · Score: 4, Funny
      Don't you lusers get it?

      We don't care that you don't want to know how your computer works. We like discussing interfaces and tech lawsuits. That's what we want to do, not type friggin letters or pay the bills over the internet. Different websites for different people. This is slashdot.

    16. Re:purely anecdotally by Valar · · Score: 1

      It doesn't worry me that some people don't want and don't need to learn how their computer works...

      It worries me that I've heard almost the exact same phrase out of several 'computer science' majors...

    17. Re:purely anecdotally by steveorama · · Score: 1

      Boy are you in the wrong forum. slashdotters are, however, representative of slashdotters.

    18. Re:purely anecdotally by moviepig.com · · Score: 1
      Actually, GUIs and CLIs lie on a continuum (and one's choice of camp seems often merely to favor one's birthplace).

      To see the continuum, start with a "pure" command-line interface: the simple 'prompt' character. Now, by prepending to it (say) the name of your current working directory, you're starting to build a GUI (by adding a bit of always-present unsolicited information). Next you might, e.g., add a short list of available commands... then maybe make them each clickable, etc.

      And, it should come as no surprise that any interface should be chosen to match its application. You wouldn't try to drive a car via a CLI. (No, you wouldn't. Think about it.) Nor will a fancy GUI help you write (good) poetry.

      --
      Seeing bad movies only encourages them. Watch responsibly
    19. Re:purely anecdotally by clasher · · Score: 1
      From one perspective the command line interface is closer to the functional languages in which the operating system is probably written. In that way it gives you a better understanding. There are less metaphors between you and the operating system.

      When I execute mount /mnt/cdrom from the command line the computer executes (among other things) the function

      mount("/dev/cdrom", "/mnt/cdrom", "iso9660", MS_RDONLY|MS_NOSUID|MS_NODEV|0xc0ed0000, 0x805b180)
      .
      On the other hand, there is little similarity between me dragging a disk to the trash can and executing mount().
    20. Re:purely anecdotally by HeghmoH · · Score: 2, Insightful

      Bingo!

      People who don't understand how their car works beyond turning the ignition and pushing the gas are the type of people who drive their car for ten thousand miles without an oil change, and then scratch their heads when their car just up and dies. You must have at least a basic understanding of what's going on inside your car in order to be able to use it effectively. Yet many people are completely unwilling to invest an equivalent amount of time to gain an equivalent amount of understanding of their computer, and still expect to be able to use it with no problem.

      --
      Mod down posts with a "Free Mac Mini/iPod" sig, they're spam!
    21. Re:purely anecdotally by El+Torico · · Score: 1
      Cars and computers are very different since a computer is a generic device that can accomplish a lot of different tasks. It has to be able to have BOTH the "regular" user way and the "techno-guru" way.

      Yes, you may want to only type a letter, but someone else may want to use that same computer to model animal populations in the Serengeti, and someone else may want to set user permissions to keep everyone from messing up each other's work.

      --
      In the land of the blind, the one-eyed man is usually crucified.
    22. Re:purely anecdotally by Anonymous Coward · · Score: 0

      That's why there's computer engineering and EE majors.

    23. Re:purely anecdotally by Anonymous Coward · · Score: 0

      Ah, yes, the classic "I don't WANT to understand, etc." routine...

      Good thing they make you understand certain things about your car before they let you behind the wheel by yourself, eh? Oh, so you don't want to understand what that pedal on the floor is for? You just want the car to magically take you somewhere without instructions?

      Only slightly worse is the "please fix my computer" types...similar to the ones who don't want to learn how to drive, they just want someone to chauffeur them all the time...sheesh...

    24. Re:purely anecdotally by rbolkey · · Score: 3, Funny

      just as much as I don't give a toss for how my car or my phone works.

      Please change the oil in your car. And that rattling sound is your catalytic converter. The squeeking sound is your brakes. Just a heads up.

    25. Re:purely anecdotally by Anonymous Coward · · Score: 1, Interesting

      Amen to that. Yesterday I was trying to explain to our HR director why copying-and-pasting a 114-page document in Word was devouring his memory, but "copying-and-pasting" the same file was handled easily. He's a pretty smart guy, but he's been dumbed down by GUIs.

    26. Re:purely anecdotally by muckdog · · Score: 2, Insightful

      How does moving a file using the command line rather then dragging and dropping it in a GUI encourage "understanding of ways in which a computer interprets commands"?

      Feedback and the ambigousness of GUIs. "Did the drag and drop copy the file or move the file?" It depends. "Did it move my program or create a fucking shortcut for it in the new folder?" Not sure where you holding the shift key. The slowness of GUI also contributes to it too. How many time have you clicked on the X to close a windows when it doesn't close right away?

      With a command line you type move or copy and then the computer does it. Many command are simple. If it fails it comes back with an error

    27. Re:purely anecdotally by bhtooefr · · Score: 1

      Of course, knowing how (say) internal combustion works could provide insight on how to drive a car to utilize the engine properly.

    28. Re:purely anecdotally by Otter · · Score: 1
      How does moving a file using the command line rather then dragging and dropping it in a GUI encourage "understanding of ways in which a computer interprets commands"? They're just different interfaces...While most users who know how to use the command line also have a good understanding of how computers work, this knowledge is not the result of them having to use the command line.

      Or more likely, most of the people bragging about how much they know about how their computer works don't really have any idea how a computer works. They do have a much broader and deeper grasp of how to use a computer than most people, but they don't grasp that the shell is an interface, not the operating system itself.

    29. Re:purely anecdotally by nickos · · Score: 1

      What could be better then drag and drop for visual feedback? Issues about windows not closing when the close widget had been clicked are implementation problems - a good GUI will close the window instantly.

    30. Re:purely anecdotally by OwlWhacker · · Score: 1

      It's like somebody getting in a car without wheels and wondering why it won't move. You have to have some knowledge of how a computer works or you'll probably end up going nowhere.

    31. Re:purely anecdotally by Woy · · Score: 1
      Don't you nerds get it??

      I don't WANT to understand how my computer operates internally, just as much as I don't give a toss for how my car or my phone works.

      I just want to type a friggin letter.

      Then go buy a typewriter. Really, i mean it. A computer is a generic machine, not a letter-typing machine. It's like buying a 747 and saying "I don't WANT to understand how my plane operates internally, i just want to drive it to the mall.

      Ah, and at least in my country, you need a license and classes to drive a car.

      Don't you ignorant, scared, inteligence-bashing ppl get it?

      --
      "If God created us in his own image we have more than reciprocated." - Voltaire
    32. Re:purely anecdotally by Lomby · · Score: 1

      There is just one small difference.
      A car is a rather simple device, and you have a limited set of controls to interact with it (pedals, gear, steering wheel).
      A computer is extremely more complex, both in its components and in the interaction possibilities.
      Before being allowed to drive a car, at least in Europe, you have to pass two exams: a theoretical (signs, limits, ...) and a practical one.
      Before being allowed to use a computer (and post on Slashdot), you do not have to take any course nor pass any exam.
      Keep these facts in your mind the next time people wonder why the computer is so difficult to use.
      Without a proper instruction you would not be able to use your car (either driving would be too difficult or you would smash it at the first crossing: how are you supposed to know that a red light means stop?)

    33. Re:purely anecdotally by Anonymous Coward · · Score: 0

      Yes, and since you don't understand how your car works you not only need all the fords and toyotas, you need also a mechanic.

      Instead of building and repairing your self built car.

    34. Re:purely anecdotally by DoctorScooby · · Score: 0

      I just want to type a friggin letter.

      You can type a letter on a 386 running DOS or Windows 3.1. Why aren't you? In fact, you can use a typewriter. If all anybody wanted to do was "type a friggin' letter", typewriters would still be around en masse, wouldn't they. The fact is that people want more functionality than they think they do originally. My dad buys a computer to check his stocks online, next thing he knows he's in Photoshop playing with digital photography. My mom bought her laptop to do her banking, now she hacks NASA on the weekends. Everyone I know who's thinking of buying a Mac talks about getting into MP3's, or trying their hand at making movies or electronic music. And of course, consolidating their pr0n into one spot.

      And as the stuff we do gets more complicated (as is inevitable), the complexity of our interaction with the machine gets more complicated, and you *really can't avoid* learning about your machine. Even surfing the web is complicated to a newbie. I know guys who can't get a grasp on sending email attachments. It's all relative. Learning is required. You've already done it, you just don't remember....

      The best an OS maker can do for you is to pay attention to make everything as simple as possible within reason. NOBODY, even geeks, wants to spend 3 hours configuring their system in order to accomplish a task that is automated and automatic on the other platforms. This is where Apple is doing better than the other platforms. Sometimes, it's not worth the effort to use Linux. People just want to get their crap done, and what is the best tool to get it done quickly and painlessly?

      Linux won't rule the desktop until they realize that Ease-Of-Use is the only thing that matters to the masses.

    35. Re:purely anecdotally by Sepper · · Score: 1

      "understanding of ways in which a computer interprets commands"?

      Maybe not, be user usually get the basic idea that the computer does what he is told and not what he suddenly wants to do... You would be suprised has to what people think on how the insides work when they never seen anything else than a GUI...

      I had a girlfriend who thought that the icons on the desktop were there for artistic purposes and that the computer decided to do things on his own all the time (like it was sentient)

      I simply told her: "On a computer, everything is there for a reason... everything happen for a reason... rational thinking mens builted this, not artists"

      By comparaison, my father learned DOS back in the days(for fun), and immediatly understood that the explorer windows was a graphical representation of the directory...

      --
      I live in Soviet Canuckistan you insensitive clod!
    36. Re:purely anecdotally by TigerPlish · · Score: 1

      No, don't you muggles get it? The Common People's desire to remain willfully ignorant about computers and everything else around them is what has this world in the shape it is.

      Natural Selection SHOULD apply to both mental and physical -- we've just developed an industry and culture of kow-towing to the ignorant massess.

      Feh.

      --
      The "Civilized World" jumped the shark ca. 1973.
    37. Re:purely anecdotally by yoz · · Score: 2, Insightful

      The issue here is that while you have no desire to find out how your computer works, YOU STILL NEED TO.

      Why?
      Oh, you're not actually going to tell me, are you? You're just going to give me yet another tired car analogy.

      Before you say you have no idea, if you live in the US, you did have to a test before you were allowed on the road

      Yes, I did (in the UK) because CARS CAN KILL PEOPLE. It's perfectly good and sensible to ensure that people know the rules of the road before they take to it. However, the rules of the road and the workings of the internal combustion engine are two utterly unrelated things.

      Do you know how your microwave works? I mean, really? Because you shouldn't need to. Besides a couple of key rules to stop it blowing up (i.e. don't put any metal in there, or kittens) there is no need that I can see to understand what "the polarisation frequency of water molecules" means.

      The whole point of appliances is to make complicated tasks simpler by hiding all but the most necessary complexity. A computer is an information appliance, and I shouldn't have to know about i386 opcodes and hard disk platters in order to use one.

      You know, if we were having this argument ten years ago, I bet you'd have told me that it was utterly vital that I understand all the IRQ settings of my hardware, and that if I was arguing against having to know such madness then I'm clearly a moron who can barely type for all the dribble in the way. Well, thank god that someone disagreed with you and invented Plug and Play, the whole point of which is to stop me having to worry about that shit. And in response to your next point, yes, PnP can go wrong, just like a billion other things that keep me having to carry around a hundred manuals in my head, but it hasn't. If it does, I'll learn about it then.

      The fundamental point is this: Computers are designed to execute software, and software is the embodiment of someone else's expertise which abstracts away the difficult parts of simple tasks. We should be trying to make sure that operating systems get better at keeping the problems away from the user, rather than having to teach the user about all the problems. Because some of us have actual work to do.

    38. Re:purely anecdotally by Telex4 · · Score: 1

      If I ever bother to learn to drive, I'd need to learn those things because otherwise I would be an unsafe driver, and because no technology exists today that would safely remove that responsibility. As soon as we get automatically chauferring cars, people who use cars will need to learn to drive.

      On the other hand, it is possible for people to "safely" and happily use a computer without needing to learn concepts like hardware components. The task of software developers who are producing code for non-specialised uses is to try to get the software to soften the learning curve by hiding these concepts.

      That said, there's truth in saying that at the moment many basic concepts need to be taught, and especially to sysadmins. A lot of Microsofties in particular are jumping the gun in making/encouraging people to use software without the necessary concepts in hand.

    39. Re:purely anecdotally by jglen490 · · Score: 1
      While I hate to argue a point, I will anyway!!

      Understanding command line inputs and the resultant outputs don't actually give any insight into HOW the computer works. All they give is an understanding of WHAT happens with the typed in commands. An analogy might be that if you don't set the jumper on a drive correctly, it probably won't show up as a usable drive. That doesn't give you any more insight into HOW the circuitry of the controller works, only WHAT happens when you set the jumper to one position or another.

      When I click on kfree in the KDE menu, I get a graphical representation of the free space. When I enter a df command, it gives me a non-graphical representation of free space. Neither actually tells me HOW the respective inputs gave me the respective outputs, only that each did something.

      Neither the graphical interface, nor the command line interface is conceptually superior. The results may be quicker on the command line, but the inputs are not as obvious (unless you have committed a lot to memory) and those same results are also a little more esoteric.

      Personally, I use both the command line and KDE, and Windows when I have to (such as earning a living!). I have a computer science degree and over my 56+ years have learned a lot, so I do understand some of the HOW of the Linux OS, but the understanding really did not come from a study of man or help or apropos.

    40. Re:purely anecdotally by dasmegabyte · · Score: 3, Insightful

      Whoa. The guy said he doesn't want to know how his computer works. He didn't say he didn't want to know how to prevent it from breaking. These are two completely separate things. Ignorance of the mechanical engineering of combustion engines does not preclude following a maintenance schedule, in fact my wife (who knows NOTHING about cars) is far better at maintaining her car than I am at mine, because she knows when to defer to authority.

      You see, this is the problem most everyday people have. They want to run a computer, perform tasks, and prevent themselves from running into problems. And when they ask how, the average "computer guy" starts running down lists of commands and protocols and the history of DOS. These things are excellent trivia, but they're not analogous to what you're saying here. The end result is this: the computer looks more complex than it is. And complex things are hard to use, right? So why bother?

      You can show somebody how to use Uninstaller and Windows Update without showing them the command line, and in far less time. In fact, I can't imagine where either of these functions, essential to the use of a GUI based machine, has any real bearing in the command line. Certainly I've never Run->CMD to get rid of that stuff...

      Using the command line doesn't make you any more knowledgable about how to secure a computer or choose an internet provider than knowing how a carburetor works tells you how many miles you can drive on that loose bearing before it seizes. People who know their shit about cars still have engine problems and get into accidents. They still pay the same blue book value to get the car fixed. They're just better at explaining the problem.

      --
      Hey freaks: now you're ju
    41. Re:purely anecdotally by happyfrogcow · · Score: 1

      It doesn't matter what you want. It's what you need. If you understand a little more about why or how something works, you won't get as frustrated when something "breaks". You might know how to fix it yourself in 10 seconds. There's no substitute for being a little more self reliant.

      You might not understand how your car works, but you probably know what could be wrong if you here a pop sound and lose control of your car a bit. You can get out of the car and check the tires to see if they are flat, or maybe open the hood and see if you see smoke. You wouldn't just keep driving until someone else notices your problem and decides to help you out. And your telephone... you know that to dial you need a dial tone (unless it's a cellphone, in which case you know you the service indicator to show you have service), and you know what a busy signal is.

      My point is you need some knowledge of how the thing behaves when working and when not working. Ignorance will get you a whole lot of frustration.

    42. Re:purely anecdotally by 91degrees · · Score: 1

      I say make a computer that boots fast, has 3 buttons. 1 Internet(www) 2 email 3 wordprocessor and nothing else, and you must eb able to turn it of at once..

      I've been pondering this. A TV metaphor for GUI design. I think one of the problems is that there are too many inputdevices on a PC (well, only 2, but the keyboard is overly complicated for most tasks). Different applications can be channels. Perhaps have some sort of record button to save, and replace a filesystem with "a library", which is essentially the same thing with a different name.

      Oh, and the other thing to borrow from a TV - a 5 second boot time.

    43. Re:purely anecdotally by dasmegabyte · · Score: 1

      "Did the drag and drop copy the file or move the file?"

      Did the file disappear from place a? Or did the mouse have a PLUS SIGN or ARROW underneath, indicating a COPY and LINK command, respectively? Either way, if you're not sure what it did, undo the command.

      By the way, pressing the CTRL key ensures a copy. Pressing ALT ensures a link.

      Selecting some items? Pressing SHIFT allows you to add new items to a selection. Pressing CTRL allows you to INVERT an item's selected state (in case you selected too much and want to leave somethint out of the selection).

      I can write these down for you. It'll take about as much time, and as much paper, as writing down the syntax for CD, MV, RM, LS, CP, etc.

      How many time have you clicked on the X to close a windows when it doesn't close right away?

      Quite often, and I'm glad for that. Closing a program forcefully can FUCK UP current operations. If I want a computer that isn't missing data, I can wait. I think this is better design than closing the window while operations are still in action -- don't you?

      With a command line you type move or copy and then the computer does it.

      Right. And you have to type out everything you want to do. Want to move 23 files out of 41 in a directory to a different directory? Start typing. And if you make a mistake, you have to type it all again. And if you accidentally do something wrong...you're done. No undelete, no unmove. If you mv something to somewhere that doesn't exist, congratulations...you just renamed the file. "I know you *SAID* to move it, but I've just renamed it. Good luck finding it, mate."

      I prefer the safety razor of the GUI, thanks.

      --
      Hey freaks: now you're ju
    44. Re:purely anecdotally by schmaltz · · Score: 1

      Your analogy fails, because to many drivers, it's their mechanic, or their spouse/parent/relative/neighbor/friend who looks after the machine's internals for them. For a lot of people, simply getting in the car and driving it is what they know.

      Neil Stephenson made the apt comparison of computers to cars, with Macs being the Volvo-esque, hermetically sealed O/S, Windows 95 a station wagon, and Linux a tank.

      The analogy holds up, being that the average car owner takes their vehical to an expert who does the regular servicing. Sure, you and I know where the drain plug is located on the oil pan of our tanks, but do you think the graphical designer cares whether their Volvo even has one? Nope, they just want it to work, and they pay experts to solve the problems outside their domain.

      I pity you and your genetic tree.

      "Stay away from my house, you freak!!"

      --
      Big Daddy, Johnny, Burp, Aunt Zelda, Scott, Slurp, Big Momma ... where's Siggy?
    45. Re:purely anecdotally by switcha · · Score: 1
      If you happen to be a supreme fool that knows so little about your car that you can't tell how fast it's goings, whether the engine is running hot, how to tell if your brakes need servicing ( waiting for the grind counts ), or the meaning of any of those "little flashy lights" on your "long window thing the steering wheel is hooked under", I pity you and your genetic tree.

      How is any of that not the GUI equivalent in a car? Lights, needles and gauges are all representations of what's happening in the internals, more or less.

      --
      You know what? ... A little club soda *did* get that out!
    46. Re:purely anecdotally by NutscrapeSucks · · Score: 1

      Mac Performas used to ship with such an interface, because (get this) Apple found that the Mac Finder was too hard for new users.

      Basically it was a full screen shell with two tabs - one with buttons for all your applications, and the other with a list of all your documents. (maybe someone can remind me what this thing was called.)

      It also used to be common to use a "boot menu" on corporate DOS systems - when you turned the computer on it prompted you (1) WordPerfect (2) 1-2-3 (3) ccMail and so on.

      --
      Whenever I hear the word 'Innovation', I reach for my pistol.
    47. Re:purely anecdotally by brucmack · · Score: 1

      Why should a user have to know where a file is located on a disk? Or how to install updates? Or how to uninstall undesired programs? When software truly becomes easy to use, all of that stuff should be handled automatically by the OS. A user should be able to organize their files however they damn well please, regardless of how the OS treats the files on the backend. Updates should just silently install automatically, and not require a reboot (the most annoying thing about MS patches IMHO). And undesired programs should never get there in the first place, because the OS should properly explain things to the user whenever something is trying to install itself.

      A full disk is something I would consider to be a very very basic problem. It's something that anyone can understand. The data on the computer takes space, and the space available to the computer is finite. A sufficiently advanced OS would simply inform the user of this and give them advice as to what files or programs to remove to free up more space.

      Yes, right now, any user needs to know things about how a computer works, or they won't get very far. But this shouldn't be the case! There should be an OS that abstracts everything down to the simplest possible terms. A user shouldn't even have to know what a file or directory is, because the OS should handle all of that automatically.

      Now, I'm also going to comment on your car analogy. I see the car as being an excellent abstraction. It is really quite simple to operate: press one pedal to go faster, a different pedal to go slower, a wheel controls which direction it goes in, and the rest is all bonus. Manual gear shifting adds some complexity, but people who get that know what they're doing. What could be seen as an unwieldly number of extra gadgets (turning signals, headlights, wipers, mirrors, climate controls, stereo, etc.) are all nicely controllable without having to search for them after a short adjustment period.

      Now, let's think about users of cars. How many of them actually think about or care that their engine is running hot? That their brakes need servicing? More importantly, why should someone care about that? Anything important should be either 1) told to the user by a warning light or 2) maintained through regular maintenance so that it never becomes a problem in the first place. You are really mixing simple things with complicated things... Nobody in their right mind would call it a "long window thing the steering wheel is hooked under", but plenty wouldn't recognize if the engine is running hot.

    48. Re:purely anecdotally by filmsmith · · Score: 1

      Yet another time when I've wanted nothing more than a 'Ya Damn RIGHT!' mod.

      I've been using OS X for over a year at work and have had the Terminal App in the Dock the whole damn time. The only time I've opened it is when I can't get something to work right (or someone shows me a cool trick). Because of those special instances, I now understand rm. ...that's it.

      And, so far, that's all I've needed of the Terminal.

      fs

    49. Re:purely anecdotally by Anonymous Coward · · Score: 0

      That's the most intelligent post ever by a guy posting at 0 by default. Interesting analysis!

    50. Re:purely anecdotally by zero_offset · · Score: 1

      A laptop using Hibernate will reduce the steps, and my 2.8GHz laptop with XP boots much faster than any other machine I've ever had (after all, few people ran DOS without a slew of start-up junk in CONFIG.SYS and AUTOEXEC.BAT).

      Worst case:

      1. Open lid, press power, wait about 10 seconds for boot.
      2. Click Word icon on desktop, type letter, click Save button*.
      3. Close lid (machine goes into hibernation).

      * If speed is the goal, technically I don't need to bother clicking Save.

      More typical case:

      1. Open the lid, press power, wait 5 seconds to come out of hibernation.
      2. Word is already running -- click New Document button, type my letter.
      3. Close lid.

      Much easier. I've been using Hibernate for a couple years and haven't had the slightest bit of trouble.

      --

      Slashdot quality declines as the number of hot grits posts decreases. - Provolt's Law, Apr-09-2005

    51. Re:purely anecdotally by Anonymous Coward · · Score: 0

      The issue here is that while you have no desire to find out how your computer works, YOU STILL NEED TO.

      Bull. Well, a good many programmers need to know more about how their computer works, but the general population doesn't need to know where every transistor goes.

      Before you say you have no idea, if you live in the US, you did have to a test before you were allowed on the road, if you recall, and in that bank of questions there are fail conditions, such as driving on ice, perhaps even dealing with bug related Emergencies

      Driving on ice? HAHA! I live in California. Ice rarely comes in any form but cube.

      In any case, cars and computers are fundamentally different in many ways. The most relevant way would be that software does not wear out, does not need regular maintanance and replacement. Well, if you use unpatched IE, sure, but that's a different matter.

      People do need to learn how to fill up the tank and wash off the bird crap, but they can get someone else to change their oil.

    52. Re:purely anecdotally by DoctorScooby · · Score: 0

      If you weren't an AC, I'd tell you that you shouldn't be reading this. I am despised by all on Slashdot, but loved and respected by all in person. And I have made the front page of Slashdot in the past, but without my name attached to my posts, it seems I am nothing. That's humanity for you. If Steve Jobs posted here under an assumed name, he'd be flamed as a troll. The message is only as insightful as you consider the person giving it, it seems.

      I have found that the great majority of posters here have very little concept of reality, and they're vastly unintelligent, and none seem burdened with initiative. I could chain together every poster at Slashdot into a Beowulf cluster and I still couldn't power a light bulb.

    53. Re:purely anecdotally by Anonymous Coward · · Score: 0

      Uh, I know this is pedantic, but my owner's manual says my car goes 12,000 miles between changes. I think you've succumbed to the 3,000 mile marketing campaign by the oil companies.

    54. Re:purely anecdotally by Anonymous Coward · · Score: 0

      then don't come crying to me when you lose your damn file! i don't care if you want to understand a computer or not, you have to learn some basic facts to function at a computer!

    55. Re:purely anecdotally by Trinition · · Score: 1

      However, people rely heavily on their computers and never try to learn basic fail conditions, like ... checking for updates...

      I'm focusing on your one example only because I instantly thought of the perfect counetr example in the car paradigm.

      Updates are like a recall. Do you know how often cars go without their recalls being performed? Often times people don't wan tto take the time and disruption to their schedule to go and get it done. But even to get to the point of that decision, they must first learn of the update. Decent car companies mail out letters to people when there are recalls. Diligent owners periodically check their dealership, service shop, or a website for new recalls.

      With things like XP's auto-update-notifier, we're finally, almost as good as automobile recalls, even if some people just look at the pretty icon in their system tray instead of doing somethign about it. Its no worse than a user not getting their ecalls performed, and then having their junker blow up while in front of you on the interstate (a-la a viral infection of an non-updated computer) and causing a traffic jam.

    56. Re:purely anecdotally by not_cub · · Score: 1
      >I don't WANT to understand how my computer operates internally, just as much as I don't give a toss for how my car or my phone works.

      I just want to type a friggin letter.

      I am not entirely sure whether this is meant to be a typical joe-six pack response, or Ubi_NL's actual response. Regardless, my response follows:

      I imagine you don't want to understand all that addition and subtraction crap, just as much as you don't give a toss about all those letters with red numbers your bank manager sends you. You just want to buy stuff, right?

      The world at large does not yet let you be so insulated from knowledge that you can get by without a basic level of numeracy and literacy. Those are going to be joined shortly by "computeracy". And not just "typing a friggin letter". Effective use of a computer has two key results. First, routine tasks can be performed with greater speed and reliability, and even in some cases totally automated. Second, more complex problems can be solved, whether this complexty arises in terms of problem specification, or volume of data. Together these are an effective metric for intelligence. Quite simply, an effective computer-user acts with greater intelligence. Conversely, just as it would be hard to consider someone with poor numeracy or literacy skills to be smart, when 80% of people are able to use a computer to the level maybe 5% can now, what will be said of the other 20%?

      The change is inevitable, and unlike numeracy and literacy, it will not take millenia. Us "nerds" already get it. When will you jocks?

      not_cub

      --
      q='echo "q=$s$q$s;s=$b$s;b=$b$b;$q"';s=\';b=\\;echo "q=$s$q$s;s=$b$s;b=$b$b;$q"
    57. Re:purely anecdotally by tehdaemon · · Score: 1
      Don't you carpenters get it??

      I don't WANT to understand how my table saw operates internally, just as much as I don't give a toss for how my joiner or my planer works.

      I just want to build a friggin chest of drawers.

      (This is not a troll, but a (very) sarcastic comment to show that lusers are not really a typical representation of logical people)

      --
      Laws are horrible moral guides, moral guides make even worse laws.
  7. Ah the command line... by Xpilot · · Score: 5, Funny

    Apprentice: "What is that, Master?"

    Master: "It's a command line. The instrument of a Unix Programmer. Not as random or clumsy as a GUI. An elegant interface for a more civilized age. Before the dark times. Before...Microsoft!"

    --
    "Backups are for wimps. Real men upload their data to an FTP site and have everyone else mirror it." -- Linus Torvalds
    1. Re:Ah the command line... by Anonymous Coward · · Score: 0

      Can't blame this one on Gatesy. Three guys are at fault here; two named Steve, the other named Xerox.

    2. Re:Ah the command line... by Xpilot · · Score: 2, Offtopic

      Can't blame this one on Gatesy. Three guys are at fault here; two named Steve, the other named Xerox.

      They invented the GUI but they didn't demonize the CLI the same way Gatesy did. And Apple now has a Unix shell in OS X, so they have redeemed themselves.

      I wonder why my post was modded down though. Must be a lot of humorless Microsoft apologists in the audience today.

      --
      "Backups are for wimps. Real men upload their data to an FTP site and have everyone else mirror it." -- Linus Torvalds
    3. Re:Ah the command line... by HFXPro · · Score: 1

      Ah but the Win9x and WinNT's have all featured a command line for which you could run the whole system without ever seeing a GUI. Besdies I use both gui's and command lines. Depending on what I am doing a GUI can be much more usable or intuiative (especially if it is laid out correctly). I find that one reason I have to resort to the command line in OSX or the *nix's, is because the GUI interfaces are terribly designed. More standardized look and feel with windows applications, and because I use the GUI doesn't mean I don't get the "can't do anything useful" GUI that I find so often on unix. True, most Windows applications are more of a middle ground. They have a lot of power if your willing to get past the basics but not as much as a geek might like. With most Unix GUI applications I find that I either don't get enough power for what I need done, or I'm so swamped in details I'd sooner give up and type rm -rf * from the root as root.

      --
      Reserved Word.
    4. Re:Ah the command line... by Anonymous Coward · · Score: 0

      > but they didn't demonize the CLI the same way Gatesy did.

      Of course not, they just completely ignored its existence. Classic MacOS didn't have a CLI (save perhaps some obscure debug mode, I'm not quite sure), and this was deemed the Superior Way. Then OS X also came with a CLI+GUI like every other system out there, and is now deemed the Superior Way.

    5. Re:Ah the command line... by o-hayo · · Score: 1

      Don't you mean, "Before... Macintosh!"

      (before... Apple! didn't have the same ring to it)

    6. Re:Ah the command line... by Anonymous Coward · · Score: 0

      Boy are you misremembering things. "Demonizing" the CLI and console mode programs was a mainstay of Apple's advertising for over 10 years.

    7. Re:Ah the command line... by jsebrech · · Score: 1

      Boy are you misremembering things. "Demonizing" the CLI and console mode programs was a mainstay of Apple's advertising for over 10 years.

      While at the same time, if you installed the official mac developer tools, you got *pause for dramatic effect* a command-line. And its use wasn't optional either.

      Power users have always used the CLI, even on the mac.

    8. Re:Ah the command line... by Anonymous Coward · · Score: 0

      Ah but the Win9x and WinNT's have all featured a command line for which you could run the whole system without ever seeing a GUI.

      Umm, no, you can't. To get anything configured, you HAVE to use the GUI, either in the form of control panel applets, or at the very least regedit. You can switch your shell from explorer to cmd (or command, for win9x), but you still have the GUI, and you still have to use it for many tasks. If you're a sadist, you COULD use newer versions of regedit to dump the registry to a text file, edit it, and then merge the changes back... but funnily enough, the info on the command line switches to help you do that is practically unfindable on support.microsoft.com.

    9. Re:Ah the command line... by Anonymous Coward · · Score: 0
      To get anything configured, you HAVE to use the GUI, either in the form of control panel applets, or at the very least regedit.

      reg.exe is the command line version of regedit. Other than registry permissions, you can do anything you want with reg.exe that you can with regedit.

      You can switch your shell from explorer to cmd (or command, for win9x), but you still have the GUI, and you still have to use it for many tasks.

      It's true that a GUI window manager is permanently in the Windows background. But that's a nitpicking detail. I've worked with cmd.exe as my login shell for awhile now and I can attest to the fact that it's not necessary to resort to GUI clicking. I even operate Winamp straight from the command line, with a program I wrote that calls the Windows API function SendMessage().

    10. Re:Ah the command line... by Trinition · · Score: 1

      No, he means "before Xerox PARC's demonstration go a GUI back in 1975 or so".

    11. Re:Ah the command line... by Anonymous Coward · · Score: 0

      I'm willing to bet quite a large sum that you couldn't get your machine set up in the first place without said GUI clicking.

      Day to day operation is likely fine, but I'll guarantee you something like installing hardware is nigh impossible for anyone without deity-level knowledge of the registry. If the system auto-detects all your hardware, then you're just lucky.

      But thanks for that REG.EXE pointer... I'm off to set my shell to CMD for a week ;P

  8. Command-Lines by Anonymous Coward · · Score: 1, Interesting

    I have always wanted to bind my run line into the start bar of Windows XP....

    It has been my experience when trying to improve efficiency, the mouse has been a pain. Using it to click and move around a mouse pad may be easier, but the time it takes to grab a mouse and move it could easily be beat by pressing tab and enter.

    1. Re:Command-Lines by REBloomfield · · Score: 1

      So: Press CTRL-ESC, press up twice, hit enter. That's what I do..

    2. Re:Command-Lines by v_1_r_u_5 · · Score: 1

      Windows Key + R brings up the Run window.

      And on that note, some other interesting windows key combinations:

      WK+D - shows the desktop. Pressing WK+D again will restore the windows if you haven't opened up any other window.

      WK+M - minimizes all windows.

      WK+L - locks the terminal or presents you with the logoff screen, depends on your OS.

      WK+F1 - Brings up the windows help and support center.

      WK+B - Sends the keyboard focus to the task bar.

      WK+F - Brings up the Find window.

      WK+E - Starts a new Explorer window.

      WK+U - Brings up the Utility window.

      Probably a few others, but I can't think of them right now.

      -v

    3. Re:Command-Lines by REBloomfield · · Score: 1

      I have to use my method above, because i can't find a modern (read: with a windows key) that isn't all squishy. I like a nice solid keyboard that goes clack when i hit it. There was an ask slashdot about this a while back.

    4. Re:Command-Lines by upside · · Score: 1

      Hitting up cursor twice will log you out instead of getting the Run prompt if you have the sign out option in the Start menu. :)

      --
      I'm sorry if I haven't offended anyone
    5. Re:Command-Lines by 18769 · · Score: 1

      I was once on a job with a bunch of laptops (all windows). The mousepad on one of the laptops broke, and there was no chance of getting it repaired. It sort of force fed me all the keyboard shortcuts for windows, and led to this interesting situation where I could all of a sudden do thing three or four times as fast as anyone else (even on laptops without broken touchpads). If we could type and use the mouse at the same time, mice might be worth it. But, as it stands, reaching for the mouse is an inefficient move, and one that I avoid at all costs now.

    6. Re:Command-Lines by bhtooefr · · Score: 1

      [CTRL]-[ESC], R, dipwad, or [Win]-[R].

    7. Re:Command-Lines by bhtooefr · · Score: 1

      Customizer 104. Think Lexmark Model M (bastardized version of The Keyboard, the IBM Model M), but with Windows keys, and a Unicomp logo, instead of an IBM logo. Actually, it is the same technology as the Model M, as Unicomp bought Lexmark's keyboard division. Lexmark was a spinoff of IBM that made keyboards and printers (still makes printers, and tries to use the DMCA against those who make off-brand cartridges).

  9. Well by odano · · Score: 5, Insightful

    I believe it is because the command line is very simple and compact, single-threaded and simple to understand.

    Modern GUIs have many things going on at once, which can confuse people who have no idea what is going on. Windows pop up, there are icons to deal with, they have to search through endless menus to find what they want.

    The command line however has simple command to remember instead of complicated graphical procedures, and the status of the command line really never changes. If you mess something up, you are still back where you started, but in the GUI, a user could close a window to open another one which obviously confused people who don't understand what they mean.

    1. Re:Well by coolguy81 · · Score: 1

      The command line can be simple to understand... but as far as single-threaded... there are command line programs that are multi-threaded and if you are just talking about multitasking, that can be done too.

      CLI for noobies: background foreground suspend

    2. Re:Well by jtwJGuevara · · Score: 1

      I've found with the older generation, my father in particular, that the GUI's indeed cause more confusion. He can halfway type and I've managed to get him to navigate in a DOS prompt to find a word processor once without too much pain, but give him a mouse and a bloated GUI (ie: Windows 98 and later editions) and he is about as disoriented as neutered cat. He doesn't know what to click, when and where, and what all of these buttons are supposed to do.

    3. Re:Well by SvendTofte · · Score: 5, Interesting

      Sounds like the people here have no idea what makes GUI's so powerfull.

      1. State. You can (should) always at a glance be able to see what state the system has. With a CLI interface, there's simply no state. It's a command execute cycle forever.

      2. Exploration. Simply exploring a program, by seeing what it menu's contains, is a very easy, and intuitive way of exploring. CLI's have none of this.

      3. Rote memorisation. There is no motor memory when using the CLI. You must remember the syntax of commands 100% accurately. GUI's support "knowlegde in the world", as Norman puts it. Consider a door handle on a door, it has an obvious way of being used. Staring at "~$", is so very different.

      4. Easy reversal.

      In fact, the benefits of GUI's over CLI's are so many fold, I won't bother with digging out the literature.

      The command line has only one advantagde, it's speed, and the possibility of executing extremely complex commands. Both not things newbies are well known for.

      "To master modern GUIs, one must recall the operation, layout and relation to each other of hundreds, if not thousands, of such panels."

      Funny, I thought that was the same with CLI's. With a GUI, the GUI can at least support exploration of the interface. Click that arrow down, see what happens. A CLI can do none of these things, unless you consider adding random letters after a command, to be "exploration" ...

    4. Re:Well by SvendTofte · · Score: 2, Funny

      Also, don't forget the modus operanti of Unix tools on succesfull operation. No feedback...

      How the hell do you have a dialogue with someone who won't talk with you?

    5. Re:Well by Imperator · · Score: 1
      The command line has only [two advantages:] its speed, and the possibility of executing extremely complex commands.

      I'm not really sure it's faster. Quite to the contrary, I think that a GUI is faster for many tasks. It's just that with a CLI you have a faster perceived response time because the letters appear as you type, so it seems like the computer is responding quickly and you get a good vibe. I would say that the real strength of a good CLI is the ability to write scripts. Over the years different GUIs have tried different systems for scripting, but none work as well as a Unix shell.

      --

      Gates' Law: Every 18 months, the speed of software halves.
    6. Re:Well by martin-boundary · · Score: 4, Insightful
      Maybe in the beginning with windows 3.11. Unfortunately, times have changed. GUIs like WinXP are so complex and arcane, your points are no longer valid.

      1. State. With five windows open at the same time, four taskbar icons demanding attention, and background downloads and let's not forget Clippy, the state of the machine is so complicated to figure out it's impossible for a newbie. And then of course the state changes rapidly that it's not even worth figuring it out until you're a power user. for example, you accidentally click on another window and the whole current state is now with reference to the new window. That's hard.

      2. Exploration. Do I look for the command in the File menu, Tools menu, toolbar, right click context menu, shift right click context, properties panel under a seemingly unrelated program function, right click on the taskbar icon? What? By the time I've gone through all possibilities unsuccessfully, I might as well have typed several different commands at random. Same difference.

      3. Memorisation. With a modern cli, I have just as many reflex actions as with a GUI. Whereas I routinely right click on objects, I routinely press tab on the shell.

      4. Easy reversal. That's totally application dependent, and independent of GUI vs CLI.

      There's no "ease" advantage to GUIs these days, unless you consider locked down internet kiosks the paragon of graphical technology. Both interfaces are equally hard at the very least.

    7. Re:Well by virtual_mps · · Score: 1
      3. Rote memorisation. There is no motor memory when using the CLI.

      I beg to differ. My fingers can remember key sequences just as easily as mouse sequences. You do it long enough and you don't even think about it.

      Funny, I thought that was the same with CLI's. With a GUI, the GUI can at least support exploration of the interface. Click that arrow down, see what happens. A CLI can do none of these things, unless you consider adding random letters after a command, to be "exploration

      The trouble is that many (most?) computer users are afraid to explore. Either they don't understand what clicking an interface element will do, or they've done so in the past and had something go horribly wrong. That sort of user is much happier just following a script, and instructions are much easier to write for cli's. Does this line of thought lead to stratification of computer users--of course! There will be some who understand the interface and some who just push buttons. A cli interface is just more up-front about that.

      As an example, consider financial data-entry clerks. A few years ago they would have had a green screen into which they enter certain numbers. The interface would have sucked (simple text, limited functionality) but it did what was needed. And the clerks could be really fast--they just entered the numbers in a certain order and then typed a magic key sequence. They didn't have to understand what they did, they just had to know a couple of magic sequences. Today the clerk would get a windows machine. If they're lucky they then get a terminal emulator which gives them the same green screen they used to have, but smaller and with a lousy font. But in addition to knowing the magic key sequences they also have to know how to start the windows machine & the terminal app. That's a little bit of progress. If they're really lucky they get to replace their green screen with a web browser and replace the magic key sequence with a lot of clicking of drop-down boxes & buttons. Their productivity goes through the floor because they're constantly interrupting their workflow in order to mouse around. That's a lot of progress.

      What's the point? Simply that many computer users don't care about whether they can explore the interface--they just want to get a job done.
    8. Re:Well by Norman+Lorrain · · Score: 1

      You've got to be kidding

      1. State. With multiple applications open, taskbar icons, etc., it is actually *easier* with a GUI. Try monitoring these app states otherwise, e.g. ps

      2. Exploration. Sure you can type different commands, but the combinations are endless. With a GUI at least you're steered in the right direction. Try ImageMagick vs Gimp as an example.

      3. Memorisation. You can't use tab-completion on command options. Quick - with ls, how do I sort on modification date, in reverse order. In any GUI file manager, I know I can click on the column header.

      4. Reversal. Much more common in GUIs than CLI

    9. Re:Well by leoboiko · · Score: 1

      State: In a GUI this information is always in your face, even when you don't want it (windows all over the place, alert boxes popping up, busy taskbars while I try to write some text). With the CLI I can probe the information only when I want it (with "jobs" or "top", for example).

      One of the most common complaints about computers is how they force you to give attention to lots of things you don't care about; as pointed in the article, CLIs attenuate this problem.

      Exploration and rote memorization: I find it way harder to "explore" a program clicking randomily in obscure menus and GUI elements than by reading the manual and trying the options after knowing what they do. I also fail to see why memorizing a given sequence of menus, panels, windows and GUI objects is easier than memorizing CLI commands.

      Most newbie users I teached agree. One old lady lived with painfully small fonts in her Windows system for months, failing to discover how to increase them. All because some GUI designer thinks the GUI widget is "self-evident" and didn't documented how you can find it. By contrast, most of my Linux students had trouble in reading manuals and trying new options and commands (the exception being those who can't read English).

      The catch is, you should not force the user to memorize anything. In GUIs, as in CLIs, you must have good, easily searchable instructions.

      Easy reversal: Again, I fail to see what in the nature of GUIs makes undo inherently easier than CLIs.

      --
      Prescriptive grammar:linguistics :: alchemy:chemistry. Stop being a nazi and learn some science.
    10. Re:Well by Anonymous Coward · · Score: 0

      CLI also avoids context-switching overhead. I don't have to move my hand from the keyboard to do something. That's too much overhead! With the keyboard it's very quick to get a new shell prompt with ^Z (Bash suspend), Ctrl-A-C (Screen create new window), Alt-Fn (switch virtual console), or even access the shell directly from the running app (! in vi, etc.) All this time your hands can stay in front of they keys, where they belong.

    11. Re:Well by tootlemonde · · Score: 1

      It sound like you're making an argument for simplified GUIs, not for the virtues of the command line. With a simplified GUI all of the original poster's arguments stand.

      The Web browser provides just the simplified GUI that a newbie needs to get started. The success of the graphic Web browser proves that the difficulty of mastering a GUI is vastly overstated. The windows, mouse and menus are all transferable to other GUI-based applications.

      There is a natural progression from simple GUIs to richer or more complex ones. A typical user who has mastered a browser and moved on to a more complex GUI would avoid all of your objections.

    12. Re:Well by SlashDread · · Score: 1

      Maybe Im just old but..

      1. What is this "state" thing?, and why is the PROMPT not enough for it?

      2. I really used to like Norton Commander, it was a command line tool, with some easy interfacing just for exploration. You could do for example a simple "compare" on two directories to find the difference. On standard Windows or Mac, this still is not possible.

      3. Rote memorazation, didnt know what it was, so thanks for the enlightenment. However...

      "This particular brand of education has been given a bad name in spite of its clear advantages in particular learning situations. What is now favored (to the exclusion of rote memorization) is an integrated understanding of the material to be taught."

      As I understand it, it is the same as learning by heart. As opposed to understanding WHY you are doing things, you just do em, cuz it worked the last time.

      I would argue this has some merit, but so has UNDERSTANDING, especially in using computers.

      Lastly, CLI's do NOT require a 100% memory, there is the tab-completion, there are MAN pages, there are convetions. It could all be better, but there is nothing intrinsic that prevent this "rote" thingie.

      4. Easy reversal.

      Thats nonsense. There is nothing in a CLI that prevents that either. In fact, moving a program in *nix is far easier (and reversable) then moving a program in Windows.

      GUI's have merit, CLI's have merit, and on neither of them is the last word said.

      peace

      "/Dread"

    13. Re:Well by martin-boundary · · Score: 2, Insightful
      I'm not kidding.

      1. State. With multiple applications open, taskbar icons, etc., it is actually *easier* with a GUI. Try monitoring these app states otherwise, e.g. ps
      Call me old fashioned, but if I want to know how all my apps are doing, I'd rather have a list (eg ps or task manager) instead of looking around all over the screen, under a window here, in an animated scrolling thingy there. But anyway, I'm not a newbie. For a newbie, one thing at a time is better than lots of things at once.

      2. Exploration. Sure you can type different commands, but the combinations are endless. With a GUI at least you're steered in the right direction. Try ImageMagick vs Gimp as an example.
      Try teaching your mother/grandma about how to navigate with a mouse. Identifying and manipulating the icons, not messing up and accidentally resizing, not losing the menu focus because the mouse moved out... There's endless combinations of things they could do that are useless, unless they are taught the few things that work for the task at hand. Same as knowing the few cli commands which work for the task at hand.

      3. Memorisation. You can't use tab-completion on command options. Quick -
      Yes you can. Check out the bash programmable completion project on freshmeat. But anyway, your example shows a strength of the gui. Here's a strength of the cli: quick show only files which end in .bat and contain the number 2003: ls *2003*.bat in a cli, impossible in a gui. Quid pro quo.

      4. Reversal. As I said, depends on the apps. Maybe you use more GUI apps than CLI apps, so you see more reversal in the GUI.

    14. Re:Well by martin-boundary · · Score: 2, Insightful
      It sound like you're making an argument for simplified GUIs, not for the virtues of the command line.
      To each his own, I say. I just wanted to point out that the GUIs people are exposed to these days tend to be so complex that the CLI has a newfound advantage. "GUI is easier" no longer makes sense in the general way it did ten-fifteen years ago.

      There is a natural progression from simple GUIs to richer or more complex ones. A typical user who has mastered a browser and moved on to a more
      Absolutely. As people become more proficient, let them use whatever they like and do whatever they can. That doesn't change the current difficulties for newbies, which is what the article is about.
    15. Re:Well by tootlemonde · · Score: 2, Interesting

      The implication of the article is that GUIs are a mistake of monumental proportions. All of the original testing at PARC and Apple were fundamentally flawed and the computer industry has blindly charged ahead on a false conclusion.

      The fact that the author of the article had such success teaching the command line almost certainly more a tribute to his teaching skills and enthusiasm than virtues of the CLI. There's no question you'll learn more about using the computer from a good teacher than you will from GUI.

      The irony that using a GUI is necessary to read his article should not be lost. Even reaching the article from a command line would have required typing in a 41 character url with no errors.

    16. Re:Well by mrroach · · Score: 1

      Who needs feedback? I consider "mv file1 file2" a proclamation of what _will_ occur. No need to tell me, "your will be done." When I say "Let there be light" there will be light, and it will be good!

      Hmm, ok, perhaps I've gone too far with it.

      -Mark

    17. Re:Well by dasmegabyte · · Score: 1

      1. State.

      Your argument is that GUIs are harder to use because they enable us to do more things?

      Dude, if you want the single-app friendliness of the CLI, just don't open another program. My mom does that because she can't concentrate on more than one task at a time.

      2. Exploration.

      The point is, you have a place to look. Everything is within the program. In the CLI, functions are based on the environment, not on the task. You have about thirty thousand to try, as opposed to the maybe 20 or 30 functions in the average program menu. You can click the first menu, and just drag the mouse along until you find the one you want. Whole process takes about 20 seconds.

      And they have useful names...if I want to search text on this page, I use "Edit -> Find on this page." If I want to do that from the command line, I have to type egrep? What the heck is a grep? "Find" will find a file, but if I type "find apache" it tells me "no such file." So I have to page through 22 pages of MAN for options with no examples.

      But you're right. If all I did was copy, rename, and concatenate files all day, the CLI would be much easier.

      --
      Hey freaks: now you're ju
    18. Re:Well by tootlemonde · · Score: 1

      Here's a strength of the cli: quick show only files which end in .bat and contain the number 2003: ls *2003*.bat in a cli, impossible in a gui.

      This example only shows the strength of the cli if the ls command doesn't return a large number of files that scroll off the screen.

      If they scroll off the screen, you have to use some additional utility like less to view the list and even then you can't see the complete list at once.

      The scroll bars on many command line sessions in GUIs are much more convenient than using less or more.

      In fact, putting the command line in a resizable window with scroll bars, copying and pasting with the mouse, and some icons across the top with a configuration menu that lets you select a font all make the command line easier to use.

      I've never seen a dedicated cli user refuse to use those features when they were available.

    19. Re:Well by Anonymous Coward · · Score: 0

      ls *2003*.bat in a cli, impossible in a gui

      "Impossible" in a GUI? Not at all. Just because Windows Explorer is too stupid to take wildcards in it's address or search boxes, doesn't make this feature difficult.

      Even so, this is primarily a sysadmin command. End users do not name files to make them easy to glob like that.

    20. Re:Well by martin-boundary · · Score: 1
      Dude, if you want the single-app friendliness of the CLI, just don't open another program. My mom does that because she can't concentrate on more than one task at a time.
      You can't. A newbie will open his mail program and have the mail arrive in the background while he's typing a letter, because the program's only minimized, not closed. Then suddenly the anti-virus pops up to say something's wrong. All the while, he thinks he's still in Word, and gets confused because all those messages that want attention have nothing to do with the task at hand. Modern GUIs are too complex by design, for newbies. They're just not new user friendly.

      The point is, you have a place to look. Everything is within the program.
      The point is you don't have a place to look. How do you move an icon, do you left click and drag, or do you right click and drag, then choose from a menu option that magically pops up? How obvious is it to a newbie that you can drag with the right mouse button and it does something else?

      But that's just for starters. Try enabling disabled extensions in Microsoft Outlook 2003. You can go looking for it as much s you want in the menu, you won't find how to do it. It's in the About box, you have to press a button there. How obvious and exploration friendly is that? Suddenly, you've upgraded to the latest Outlook and some stuff you had installed no longer works, and you have to go to the About box and press a button there to fix it.

      And I picked that example because MS supposedly knows user friendly UIs, but there's tons more stupid examples like those I gave.

      Face it, modern GUIs are just as complex and arcane as the command line, except you don't have to remember to type "-lhS", instead you have to remember to press shift + right mouse on the property page from the third menu on the right.

    21. Re:Well by poot_rootbeer · · Score: 2, Interesting

      1) CLIs have state too. If there's a prompt, the computer is waiting for your input. If there isn't a prompt, the computer is busy doing the last thing you told it to do.

      2) If you want to explore, RTFM. The idea that a tool and its documentation need to be integrated doesn't make sense to me -- do hammers come with a "how to drive nails" pictorial pasted to the handle?

      3) There is certainly motor memory involved with CLIs; you use motor skills in your hands to type, don't ya? After years of CLI usage, frequently-used commands such as `ls -l` flow from my fingers without conscious thought. My fingers have typed that string of characters so many times, it's imprinted in motor memory.

      4) Easy reversal requires conscious effort on behalf of the software designer, whether it's a GUI or CLI tool. It's not a design consideration that's endemic to one or the other.

    22. Re:Well by Anonymous Coward · · Score: 0

      > I really used to like Norton Commander, it was a command line tool

      No it was not. Since the discussion is about "the command line", fullscreen console mode apps don't count. Besides, there was/is a GUI version of Norton Commander.

    23. Re:Well by martin-boundary · · Score: 1

      That's an idiotic statement. Lots of people in offices name their files after the year, the quarter, the department etc. The typeglobs were designed exactly to make finding stuff like that easier.

    24. Re:Well by glorf · · Score: 1
      Here's a strength of the cli: quick show only files which end in .bat and contain the number 2003: ls *2003*.bat in a cli, impossible in a gui.


      Nope. GUI can do that. Windows Explorer has been able to do that for years. Just hit F3 to bring up the search and put *2003*.bat in the "Search for files or folders named" box.
    25. Re:Well by martin-boundary · · Score: 1
      (snip)
      I've never seen a dedicated cli user refuse to use those features when they were available.
      Sure. Guess what one of the most popular tools in the DOS era was? Norton commander. What did it do? Lots of things like you mention.

      But guess what else? Each of those features needs a hook to call it. Either an icon, or a keystroke, or a dynamic, context sensitive talking paperclip. The more features you add for ease of use, the harder it becomes to master the program, and the easier it is to get lost in unknown territory.

      So what's the answer? You don't put all the features in, only the most important. And when you do that, you make the less important features much harder to do.

    26. Re:Well by dasmegabyte · · Score: 1

      A newbie will open his mail program and have the mail arrive in the background while he's typing a letter, because the program's only minimized, not closed. Then suddenly the anti-virus pops up to say something's wrong...Modern GUIs are too complex by design, for newbies. They're just not new user friendly.

      In this case, it's COMPUTING that isn't user friendly. And the CLI wouldn't make it any easier. If you're making the command decision to inform people when they have mail and viruses while providing them with an interface to do something about it, you are much better off using windows. In the CLI, you'd have to deal with each of these things in turn as they come up. In the GUI, you can ignore them and continue what you're working on...and the taskbar is a constant VISUAL reminder that there are other things which require your attention. If people get confused by this, they won't be once you explain the concept of windowing. Which you should be doing.

      How do you move an icon, do you left click and drag, or do you right click and drag, then choose from a menu option that magically pops up? How obvious is it to a newbie that you can drag with the right mouse button and it does something else?

      Easy: you tell them. You have to tell them things with the CLI, too. People don't automatically know that MV will move or rename something. People don't automatically know what . means, or that a / separates directories in a hierarchy, or whatever /var is for. Shit, even typing "man" to get help is wierd.

      The difference is, since the left click is such an intuitive interface, people immediately think they've "got it," when they don't, and they can just "go to town," when they can't. It's lazy teaching, not inherent complexity. I've used Windows for about ten years and I'm still discovering useful shortcuts...the kind of thing that you'd learn the first day running *NIX.

      A simple cheat sheet, of the type you'll see posted near the monitor of any new CLI user, would be infinitely helpful to a new Windows user. But because the stigma is that "clicking is easy," they don't get it. THIS IS NOT THE FAULT OF THE WINDOWS, it is the fault of instructors.

      As for the rest...well, there's no accounting for bad design. Sure, there are some crummy interfaces. There are some crummy command line tools, too, a good example is vi (put a new user in there and see if they can even quit the program without help). It's hard to make a program as ambitious as Outlook work in a simple fashion. Which is why I suggest Thunderbird for email...it's the first GUI mail tool that is snappy enough, and powerful enough, to get me away from using PINE and Squirrelmail.

      PINE, by the way, is somewhere between a GUI and a CLI tool in terms of complexity and easy of use. It also has the WORST setup I've ever seen. A list of completely items a mile long, most of which are completely useless. And you'd better not forget the right way to set up your maildir (shudder)!

      --
      Hey freaks: now you're ju
    27. Re:Well by Blakey+Rat · · Score: 1

      Other than being slow, I would argue that AppleScript is as good as a Unix scripting language. It's powerful enough to do all the repetitive file-related tasks you need, has the ability to talk to applications and even the greenest user can hit 'record' and make a simple script with it.

      One of the problems here is that everyone things "Windows = GUI" and "Unix = CLI." There are better GUIs than Windows, and better CLIs than Unix out there.

    28. Re:Well by Anonymous Coward · · Score: 1, Insightful

      The command line has only one advantagde, it's speed, and the possibility of executing extremely complex commands.

      Its one advantage is speed, speed and the possibility of executing extremely complex commands. Its two advantages are speed, the possibility of executing extremely complex commands, and ruthless efficiency.

    29. Re:Well by Anonymous Coward · · Score: 0

      I think one of the major factors not explored here is the difference between younger 'newbies' and older 'newbies'. Younger people seem much more attuned to moving images across a screen, from video games, to a GUI is pretty easy, you just have a mouse rather than a pad. Furthermore, they have fewer language skills, less refined spelling ability, and are generally less intimidated by a graphical interface than a CLI.

      Adults however, especially older ones, often know how to type (typewriters) or at least understand that only the correct spelling is 'proper', and tend to think in terms of strings of exact procedures. They are less inclined to multitask, and much more often just want a defined procedure to work, each and every time. Also, many of these folks learned most of their knowledge by rote memorization, making learning computers by rote much easier for them.

      Just my $.02

    30. Re:Well by Anonymous Coward · · Score: 0

      So what you're saying is you drop into a command-line... one that includes arcane symbols like * that mean little to a beginner... don't even get me started on the fact that windows will hide the .bat extension from you to begin with!

    31. Re:Well by Anonymous Coward · · Score: 0

      You left out the element of surprise. Nobody expects the command line.

    32. Re:Well by Anonymous Coward · · Score: 0

      > there are command line programs that are multi-threaded

      True.

      C:\>tlist mutt
      308 mutt.exe
      CWD: C:\
      VirtualSize: 436760 KB PeakVirtualSize: 436760 KB
      WorkingSetSize: 4468 KB PeakWorkingSetSize: 4468 KB
      NumberOfThreads: 3
      720 Win32StartAddr:0x00401000 LastErr:0x00000000 State:Waiting
      1104 Win32StartAddr:0x61002fb0 LastErr:0x00000000 State:Waiting
      1152 Win32StartAddr:0x61002fb0 LastErr:0x00000000 State:Waiting

    33. Re:Well by Anonymous Coward · · Score: 0

      it takes you 41 characters to type 'slashdot.org'?

      Or do you consider lynx to be a GUI in itself?

    34. Re:Well by phoenix.bam! · · Score: 1

      Actually, windows automatically searches with a *. lets say I want all my documents i typed in word (I don't need to know the extention, they are in the my documents folder) that have a 2003 in the file name I push the search button, and type 2003 in the search box ( what command line are you talking about? Looks like a Gui text box to me) and all documents with 2003 in the name magically appear.

    35. Re:Well by crucini · · Score: 1

      But is it truly a GUI at that point? You pressed F3 and entered a mini-program in a simple language. How would a true GUI do it? Would it be fast or convenient?

    36. Re:Well by Imperator · · Score: 1

      I was specifically thinking about AppleScript when I wrote that post, and also of the older Macro Recorder (or whatever it was called) from the System 6 days. The old "record your mouse and key input" macros were ludicrously useless. AppleScript was a much better attempt, and Apple tried hard to integrate scripting into everything it controlled directly. (AppleScript and speech recognition briefly combined for what was at the time the world's most technologically sophisticated "knock, knock" joke.)

      The problem with AppleScript, as I saw it anyway, was that it involved launching full GUI applications to do minor scripting tasks. Those applications were not necessarily designed with launch speed in mind. Also, the application support just wasn't there quickly enough.

      (Unix shell scripting requires launching even more subprocesses, but they're typically small ones designed to load quickly.)

      --

      Gates' Law: Every 18 months, the speed of software halves.
    37. Re:Well by SlashDread · · Score: 1

      The GUI version was next to useless. And why exactly do fullscreen console apps not count? If I recall correctly, you could even still use CLI commands in NC. My point is that a CLI does not prohibit some form of navigational assistance.

      Gr "/Dread"

  10. I bet if you by Anonymous Coward · · Score: 1, Interesting

    give a newbie instruction on how to operate a computer with 1's and 0's they will just as easily become apt at it.

    These days people only know the GUI, for that matter the MS Windows UI of doing things. Most people have no time/reason to understand how things work or that there is a more optimal way of doing things. The other guy watchs TV so, I must watch TV. Get it.

  11. Unix CLI is NOT easy by Anonymous Coward · · Score: 0, Troll

    The Unix/*nix/*nux CLI is not easy. It is a major design flaw that the file name "jones.txt" is treated different than "joNes.txt".

    If you want the best of both worlds, try the Amiga CLI, which has many features of *nix, but does not take case-sensitivity to this useless extreme.

    Good point on OS X, however. It is Apple's first serious OS. The previous ones were hard to use and crippled due to the lack of a CLI.

    1. Re:Unix CLI is NOT easy by BassKnight · · Score: 2, Informative

      You can configure the shell to work with more confort with the case sensivity issues. Gentoo comes with tcsh preconfigured to behave like that. IMHO i don't find case-sensitiveness an annoying issue, rapid fingers and the blessed tab-autocomplete do the work easy for me.

    2. Re:Unix CLI is NOT easy by oingoboingo · · Score: 2, Informative
      The Unix/*nix/*nux CLI is not easy. It is a major design flaw that the file name "jones.txt" is treated different than "joNes.txt".

      This is not true on OS X. The default filesystem is case independent.

    3. Re:Unix CLI is NOT easy by Tava · · Score: 1

      Case independence just does not work! At least not if you start adding non-latin1 characters: uppercase-lowercase correspondence is locale-dependent which means the filesystem has to kow the locale of the filename and the system must have it installed. Besides having user-locale info at the filesystem level is a clear layering violation. Windows and Mac OS are paying with huge complexity, File-lookup inefficiencies, and limited cross-sytem compatibility their bad decision to go for case-independent filenames. Especially now that the hole world is moving to Unicode.

    4. Re:Unix CLI is NOT easy by Anonymous Coward · · Score: 0

      Previous Macintoshes had a command line built into the hardware, you moron. You hit the programmers interrupt switch and it brings up a small window that lets you issue commands directly to the firmware. If that's not a CLI, then what is it?

      Now, it's certainly not a *NIX-like CLI, but you didn't use that qualifier, DID YOU?

    5. Re:Unix CLI is NOT easy by ajs318 · · Score: 1
      I too used to hate case sensitivity with a passion. Now I'm older, and wiser, and I have just ..... got used to it. The fact is, it's just less effort to put up with it than to try to change it. Tab completion certainly makes it more bearable

      It would have taken the original Unix developers just an extra eighteen keystrokes to do a case-agnostic comparison;
      if (foo == bar) becomes
      if ((foo & \x5f) == (bar & \x5f))
      That works fine in 7-bit ASCII, if you don't mind punctuation marks matching other things. To do it properly, you need a translation table; but, on the bright side, the t.t. can also be used to strip accents from foreign characters.
      if (tt[foo] == tt[bar])
      Back in the days, 256 words was a lot of memory to spend on simply making it easy for humans; 64K would have been utter sacrilege. So introducing case-insensitivity was never a high priority. After all, if people can get used to a figure 5 and a percent sign not having the same meaning despite being generated by the same key, then what is the problem with a small "a" and a capital "A" having different meanings?

      Fixing it now will almost certainly break stuff {someone is bound to have used foo and Foo in the same directory}, but probably not as badly as taking something case-insensitive and making it case-sensitive.
      --
      Je fume. Tu fumes. Nous fûmes!
    6. Re:Unix CLI is NOT easy by TechniMyoko · · Score: 0

      theres a reason for that
      Unix was designed for programmers of the 80's, by programmers from the 80's
      OSX was designed to do what the general population tried to make it do.

    7. Re:Unix CLI is NOT easy by Beowabbit · · Score: 1

      This is a matter of preference, I think. It would really bother me if my OS claimed that 'n' and 'N' were the same character, just as it would bother me if my OS claimed that 'wrap' and 'rap' were the same word. (It wouldn't bother me if my environment said '"joNes.txt" not found; did you mean "jones.txt"?', though.) But then, I'm the sort of person who spells out "you" and "before" in SMS messages and corrects spelling errors in them before sending.

    8. Re:Unix CLI is NOT easy by karuna · · Score: 1

      I can only second that. It is a big problem with Windows files when somebody starts actually use national characters in file names, for example, Russian or Latvian. It works great untill on local machine untill they should be shared. Then other users quickly discover that they cannot access those files because because they have different Windows version, or sometimes even different locale. The same happens when someone upgrades to different version of Windows. And more over, many backup software may not backup such files at all. In many organizations this has lead to policies to use only ASCII chars for filenames (often violated by clueless users).

      However, Linux doesn't have problems with such filenames. mount command has some switches which allow to access these files although the actual unicode characters will be converted to hex numbers.

      --

  12. Sure, for computers, for now by ObviousGuy · · Score: 4, Interesting

    But you think a command line would make using a digicam easier? A microwave? A thermostat?

    The computer as a non-specific device is a fundamentally flawed (though useful) contraption. The command line, GUI, and other UI creations are all hacks to help users get around the problem of genericity of the machine.

    As computers get more powerful and more 'intelligent', computer user interfaces like these will wither away and something more straightforward like controls for a camera, microwave, or thermostat become the primary UI of the computer. This means that innovations in computer operating system design must be made so that the OS can guess what the user wants to do and present an appropriate, simple interface.

    I really look forward to the day when the concept of the PC disappears.

    --
    I have been pwned because my /. password was too easy to guess.
    1. Re:Sure, for computers, for now by khakipuce · · Score: 1
      This only only true for single purpose machines. I agree with you that the problem with current PCs/Laptops is that they are generic machines.

      What will really lead to what you advocate is not more power and intellegence but reduced size and cost. How often have you used a pocket calcualtor rather than the calc app on your desktop? the reason? it feels better to use a dedicated machine rather than a multipurpose one (why hasn't the Swiss Army Knife done away with a box full of tools?).

      When we can have one machine per task (a "note pad" for writing, a "calculator" for spreadsheets, a stack of "electronic" forms for database apps) we won't need UIs.

      I think the future is a computer that is the size of a sheet of paper and as thick as a sheet of card - which I can interface with by writing - and costs $20

      --
      Art is the mathematics of emotion
    2. Re:Sure, for computers, for now by McWilde · · Score: 1

      If all your computer does is control a thermostat I guess it only makes sense to get rid of everything on it except for a single dial. But then you'd probably be better of with a regular old bimetal/mercury switch thermostat.
      I want to do spectrum analysis, audio editing, play Grand Theft Auto and read my mail. I need more controls than Time and Power and more feedback than *ding*.

      --
      Maybe
    3. Re:Sure, for computers, for now by rduke15 · · Score: 4, Insightful
      But you think a command line would make using a digicam easier? A microwave? A thermostat?

      I don't have either of those, but I often felt it would make the setup of my TV much easier:
      # move 14 15
      # move 28 14
      # tune 12 S25
      # tune 13 C35
      # describe 14 CNN
      # show channels
      ...
      14 CNN S25
      15 BBC C12
      ...
      ("S25" or "C35" being channels as listed on the cable provider's web site. Not sure if it looks similar in the US.)

      or my VCR:
      # record 14 today 21:05-23:00
      # record tomorrow 15:00-16:00
      Error: missing channel number.
      Usage: record channel date starttime-endtime
      # record 14 tomorrow 15:00-16:00
      But that will be easy when I replace my old VHS with a Linux PVR, I guess... (or will it?)
    4. Re:Sure, for computers, for now by Anonymous Coward · · Score: 1, Funny

      Sorry, no.

      There is no "straightforward" real-world analogue for, say, a relational database program.

      On top of that, there is a patronizing premise behind your post and the parent article: that non-geek computer users only want to do a couple of things.

      Where I work, people are always complaining about slow boot times, because they've downloaded lots of crapware that they've installed into their systray.

      As exasperating as it is, it shows pretty damn clearly that the "genericity of the machine" is something that users like. They may only use email, web and word processing today, but they might want to do something new tomorrow.

      With a gui, so long as you can work through the absurd dream-logic behind the designer's choices, you can figure out new things for on your own, without reference to a manual. With a command line, you either know a command or you don't.

      In closing: whenever your secretary brings down the entire network because she installed comet cursor, that's a big f. you to techie-knows-best assumptions about what users want.

    5. Re:Sure, for computers, for now by Cybrr · · Score: 2, Funny

      Twist those knobs! Twist those knobs! You! Pull some levers! Pull some levers!

      --
      Why did GEAR crush RDP?
    6. Re:Sure, for computers, for now by Bazzargh · · Score: 1

      But you think a command line would make using a digicam easier? A microwave? A thermostat?

      For 2 out of 3 of these, the answer is yes. I'd probably say yes to all 3 if I used a digicam more often.

      Hardware user interfaces are patentable (do a USPTO search for microwave control panel) and thus there is a small fee for including one developed elsewhere. For low-end consumer devices, with small margins, this introduces a disincentive to using the best user interface. As a result, microwave UIs are generally confusing. I often see people in our office push buttons semi-randomly to get the thing to start, then open the door to stop it when enough seconds have passed - they can't even operate the timer.

      Similarly, looking at the timed thermostat in my house, it uses little pushpins to determine on/off times, but its difficult to set the /current/ time, the power level doesn't relate to the temperature, and all the radiators have their own thermostat anyway. Its a mess.

      Microwave
      >cook 30s
      >cook full power 30s
      >defrost 1m 30s
      >at 08:00 cook 30s #breakfast coffee?
      >in 35m cook 3m #cook veg when roast is ready

      Thermostat
      >list sensors
      >alias bedroom sensor3
      >at 07:00 bedroom 22c #before I wake
      >at 09:00 bedroom off #after I leave
      >at 19:00 tvroom 20c
      >house warmer 2c

    7. Re:Sure, for computers, for now by Anonymous Coward · · Score: 0
      The computer as a non-specific device is a fundamentally flawed (though useful) contraption. The command line, GUI, and other UI creations are all hacks to help users get around the problem of genericity of the machine.


      I beg to differ. The general utility of a computer is what makes it so valuable. It allows us to solve new problems as we meet them, and I don't know about you, but digital cameras, microwaves and thermostats have never solved any problem for me other than the one for which they were designed.


      The solution to bad interfaces is not to turn everything into a toaster, but rather to make better interfaces that can represent complex information effectively and allow users to interpret the information and act upon it.


      I know it might be disturbing to those that try to remove thinking from their lives, but for some tasks a command interface is the best way to do this.

    8. Re:Sure, for computers, for now by gosand · · Score: 1
      The computer as a non-specific device is a fundamentally flawed (though useful) contraption. The command line, GUI, and other UI creations are all hacks to help users get around the problem of genericity of the machine.

      It is my insane opinion that computer interfaces will become more complex, not simpler. The difference between a refrigerator, a microwave, a VCR, TV, etc and a computer is that a computer is not a single purpose device. THAT is precisely why it has revolutionized the world. And it has. A computer can be customized to BE a single purpose device - like an ATM. Or a cash register. Or a GPS device. A microwave is a microwave, that probably has a computer IN it. Without this complexity, the computer is nothing.

      The problem is that we still have people around who have never used them, or remember the "good old days" when computers didn't exist. Hell, I started using them in high school (mid 80s). There are still people out there who are scared of them. In 100 years, everyone who remembered a time when there weren't computers will be dead! The fear factor will be gone. The only reason the CLI and the GUI are scary and difficult is because computers are new. I think the greatest power is in the combination of the GUI and the CLI. They each have great strengths and inherent weaknesses. You gotta have both. Today's power users will be tomorrow's users. I do lots of things with the command line that can't be done in a GUI today. Maybe tomorrow, you'll be able to, maybe not. Try this with a GUI - take a directory of images, convert them all to 800x600, and add 800x600 to the end of the file name (before the extension), then add them all to a zip file. You can do it in a GUI, but I can do it on the command line easily. Today I would be considered a power user, even though most of you were typing out the commands in your head ;-). Hopefully, in 100 years, that would seem trivial, either via GUI or command line for the average user. Or obsolete, because 800x600 would be a ridiculously low resolution image that no current hardware would even display! Heh.

      Anyway - the only way computers will morph into single-purpose devices is if someone who understands them makes them do so. Hopefully the rest of the world will smarten up in that amount of time, and embrace the complexity of the computer. Complex is not bad! God help us if the PC interface becomes a huge Clippy that you talk to.

      --

      My beliefs do not require that you agree with them.

    9. Re:Sure, for computers, for now by rduke15 · · Score: 1
      Microwave
      >at 08:00 cook 30s #breakfast coffee?

      What? Coffee in a microwave? You are disgusting!

      On a Real Microwave, the session would look like this:
      >at 08:00 cook 30s #breakfast coffee?
      Error: Cannot cook coffee.
      I'm your microwave, you insensitive clod! Try your espresso machine.
      You must be using some propietary WinOwave...
    10. Re:Sure, for computers, for now by Joe+Decker · · Score: 1

      Channel surfing:

      do {
      tuner->nextChannel();
      } while ((key = remote->waitForKey(1)) == NULL);

      (Yeah, I probably wouldn't use C++ syntax for my TV, but you get the idea.)

    11. Re:Sure, for computers, for now by ultranova · · Score: 1
      God help us if the PC interface becomes a huge Clippy that you talk to.

      Every time I've tried to learn 3D modelling I've run into the same problem - I know what I want to do, but where is that functionality hidden in the menu system, and what is it named ? Or would this be best done by using several functions in sequence ? And if so, then what commands with what parameters and in what order ?

      Now, suppose that, instead of this aHmm... Th.ink about this. Forget Clippy and think about a natural-language interface in generalttack of the functions, the 3D program would simply give me a command prompt. I would simply type in what I want it to do. The program's AI would then analyze my input, trying to figure out what I wanted. It would then ask me questions if neccessary. If it made any mistakes in carrying out my orders, I would explain those mistakes until the AI would get it right.

      The AI would learn while working - it would expand the database it shipped with by storing it's analyzis of my commands, the contexts and the desired outcomes. In time, the AI would become better and better at understanding me, and also expand it's general usefulness - when shipped, it might not had known what dragons or armies were, but after teaching it I could simply write "put on army of dragons on the sky" and it would just ask "what color ?". This would also give such AI databanks a good resale value, and allow the users to take part in program development without coding.

      Add a speech recognition software, and you'll have a killer application on your hands... HELP ! POLICE !

      Comments ?

      --

      Forget magic. Any technology distinguishable from divine power is insufficiently advanced.

    12. Re:Sure, for computers, for now by poot_rootbeer · · Score: 1

      You mean my microwave DOESN'T have a command line interface?

      I use a keypad to type in instructions telling the machine what to do, and then with a final keypress the machine executes the instructions. When it's finished, it goes back to its original state and the cycle begins again. Sound familiar?

    13. Re:Sure, for computers, for now by Anonymous Coward · · Score: 0

      ^ Classic backassward Unix-style thinking.

      Think about it -- if a cable system was really designed to be "easy", it would use the channel name as the identifier, not the arbitrary channel number. You would have "setchannel CNN 14" instead.

    14. Re:Sure, for computers, for now by a24061 · · Score: 1
      But you think a command line would make using a digicam easier? A microwave? A thermostat?

      Getting off-topic...

      I'd find my microwave a lot more user-friendly if it had a numeric keypad (as they did years ago) instead of the buttons it has ("10:00"; "1:00"; "0:10"; "0:01"; a power button that you press repeatedly to cycle through HIGH, DEF, MED, LOW; etc.). And if it didn't beep on every keypress.

    15. Re:Sure, for computers, for now by Anonymous Coward · · Score: 0

      But you think a command line would make using a digicam easier? A microwave?

      Microwaves typicially DO use a CLI. You enter the time, on a line, and hit start. No need to type "cook" because that's really the only command available.

      Of course with our new microwave, they've chosen to hide everything behind bizarre and complex menus. This would be easier if you could type in words, because at least then you'd have a useful mnemonic for what key sequence to press.

    16. Re:Sure, for computers, for now by hackstraw · · Score: 1

      and other UI creations are all hacks to help users get around the problem of genericity of the machine.

      Thats why its called the User Interface.

      However, look at the user interfaces on phones and electronics like TVs and stereos. There horrible. I would love it if my CD or DVD player had a slider bar like that that comes with most media players on computers that you can click to go to the middle of the track, or 1/4 into it, etc.

      Don't get me on remotes! My god, they have about as many keys as a computer keyboard, they are all different (yet do 99% of the same functionality). There is no feedback from the device to say to the user or remote "Hey I actually got that signal!". This is important because remotes use IR which requires a direct line of sight to the device (why????). These things have not changed in at least 20 years.

      Also, it is amazing how little info that comes from an AV reciever to the actual TV set. Most TV's have PIP, mine has a dual split screen version with plenty of real estate to give me info, but no, lets not do that. Anyway...

    17. Re:Sure, for computers, for now by Bazzargh · · Score: 1

      yup its pretty disgusting. I havent actually done that since some all nighters 10 years ago (reheating filter coffee rather than waste energy making a whole new pot). Apparently you can get decent coffee this way though, using a cold brew process.

      Anyway I don't need a command line for making coffee - its already online.

  13. Sure! by Anonymous Coward · · Score: 0

    The DOS command line, that is. M$ is much more friendly than any unix flavor command line. So, if you are a newbie, go M$!

  14. TeachThis to PHB by robbyjo · · Score: 1

    And you can take a conclusion: Aunt Tillie's intelligence >> PHB's intelligence. And... in an RPG world, the same would apply for strength, dexterity, wisdom, and charisma. Oh yes, it takes all these to get the CLI working... ;)

    --

    --
    Error 500: Internal sig error
    1. Re:TeachThis to PHB by Anonymous Coward · · Score: 0

      I thought ESR was the only person to talk about "Aunt Tillie".

  15. Help Ninnle! by Anonymous Coward · · Score: 0

    Tells you everything you need to know!

  16. I'd be willing to wager... by Millennium · · Score: 2, Interesting

    I'd bet that the CLI is probably easier to learn for a complete newbie to computers in general, but a GUI probably easier to learn for anyone new to a given application.

    More intelligence in either interface would certainly be a Good Thing, however.

    1. Re:I'd be willing to wager... by Advocadus+Diaboli · · Score: 1
      but a GUI probably easier to learn for anyone new to a given application

      I doubt that. Just compare the manuals for a GUI based app and the manuals for a CLI app. The GUI based manual usually has a lot of pages, all filled with a big load of screenshots (that are maybe even not the same as the actual program version shows) and very little text.

      A manual for a CLI based app is usually more straightforward: What does the user want to do? How does he achieve it? What unexpected situations can happen? And yes, its a lot of text to read but it is usually much more useful than a lot of screenshots.

      And as already stated: As soon as the GUI looks slightly different from what the book explains (or a support guy tells you on the phone) a newcomer to an app is getting lost.

      I think one big difference between GUI and CLI is that a CLI sets the focus on each step you have to do to complete your job. A GUI distracts you by offering too much "noise" in form of options that lead you somewhere else. Didn't it ever happen to you, that you were looking for a solution for X and found a function Y, wasted a lot of time there and totally forgot your initial problem. CLI environments keep you on the path.

      Compare it with cooking. Sure you can see your kitchen environment as a "GUI" where you can point at any thing and use it to prepare a meal. But to make a good meal you usually follow a receipe that is just written down in simple words. And if you're lucky the cookbook has a picture of how it should look like when its done. :-)

  17. Command line is more consistent by AtariAmarok · · Score: 3, Interesting

    In my experience, the command line is more consistent, especially if you are telling someone to do something. Once you get into it, it just a matter of saying "press A, then press ., then...."

    With a GUI, there is a lot of hunting and squinting and guessing: basically, the stuff is never in the same place and never looks the same from one machine to the next.

    --
    Don't blame Durga. I voted for Centauri.
    1. Re:Command line is more consistent by LarsWestergren · · Score: 2, Informative

      With a GUI, there is a lot of hunting and squinting and guessing: basically, the stuff is never in the same place and never looks the same from one machine to the next.


      Well, I like using the command line, but to be fair, there are lots of inconsistencies there too.

      * Standards for command parameters. For instance, using a command recursively, sometimes the flag is "-r", sometimes "-R".
      * Always use a dash to separate command flags from file names. Except for the exceptions like tar: "tar xzvf filename.tar"
      * Differences between unixes and Linux. "df -h" gives you human readable disc sizes in Linux (50G) and an error message in AIX.

      Also, while I agree command line commands are more convenient at first, it is easier to remember GUI moves if you have been away for a while. When using an old FTP program I haven't used in years, I can quickly remember the steps I need to take to configure and get started, I hardly need to read the text on the buttons or menues. But when its time to do something on the command line I haven't done in a while, its much harder. "Ok, setting up a new CVS repository. was it 'cvs init', or 'cvs -i' or something else? Do I have to set the CVSROOT environment variable first, or was that just for the clients...?"

      The POSIX standard with "--help" "--verbose" and so on makes it easier to use and remember commands, but doesn't solve everything.

      --

      Being bitter is drinking poison and hoping someone else will die

    2. Re:Command line is more consistent by Chanc_Gorkon · · Score: 2, Interesting

      I have made this point time and time again. Here's the steps in GUI and CLI of finding a file in a directory listing and showing it's properties:

      GUI
      1. Hunt around for and click on your file manager icon.
      2. The file you are looking for is called foo. It is in a subdirectory calld bar. Click on the subdirectory called bar in your home directroy (most file managers will put you there when you fire them up).
      3. Look for the foo icon. Right click an pull up properties.

      CLI
      1. Type pwd to make sure you are in your home directory.
      2. You have already been told the file is in directory called bar. To make sure that bar exists type:

      ls -al

      3. Now to get the listing AND show the properties, type in:

      ls -al bar

      Both of these took about the same amount of steps but I guarantee you the CLI version too much less time. In GUI's you spend alot of time mousing around trying to FIND the File Manager while the File Manager in a CLI is you. In a CLI, if you have not loaded X, you are already at the prompt and ready to go. You don't even have to open a terminal if X isn't loaded. You don't have to run anything until your ready and as soon as you input it, it spits it back out...no messy refreshes.

      --

      Gorkman

    3. Re:Command line is more consistent by Cybrr · · Score: 1

      A great way to consistency is to have free, open guidelines that work. Also, why have many different dialog windows when a single, uniform, drag & drop operation will suffice? *annoyed by the fact that i can't save pages from many sites at once without navigating through a dialog box.*

      --
      Why did GEAR crush RDP?
    4. Re:Command line is more consistent by rjstanford · · Score: 1

      You now want to make a change to bar, and then print it.

      GUI: double click "bar"
      make changes
      either:
      File->Print
      Clicky the printer icon
      (if you've closed the app):
      right-click on "bar" and pick "print"

      Now do the same on the command line:
      $....wait a second...
      (Yelling) "What type of file is 'bar'?"
      $gqed bar
      (Thinking) "Now how do I modify this file?" ...
      $enscript "bar" | lp -dlocalps

      Its always easy to find things that are easier in one method or the other. But for things that you don't do very often, the GUI can be much simpler.

      --
      You're special forces then? That's great! I just love your olympics!
    5. Re:Command line is more consistent by NoOneInParticular · · Score: 1

      Agreed on -r -R, but do try 'tar -x -v -f' for a change, shorthand does not mean it breaks the convention.

    6. Re:Command line is more consistent by Anonymous Coward · · Score: 0
      The POSIX standard with "--help" "--verbose" and so on makes it easier to use and remember commands, but doesn't solve everything.

      I believe that's a GNU standard. I'm pretty sure that's not anywhere in the POSIX docs.

    7. Re:Command line is more consistent by Trinition · · Score: 1

      You are SOOO wrong:

      GUI
      1. Click on your file manmager icon since its right where it has been the last 500 times you used it
      2. Look at the address bar to ensure you in the My Documents folder (you took the liberty of assuming your home directory for the CLI) and open the folder icon with the name 'bar'.
      3. Look for the foo icon. Right click and pull up properties

      CLI
      1. Type pwd to make sure you are in your home directory
      2. You have already been told the file is in directory called bar. To make sure that bar exists type:

      ls -al

      3. Cuss and swear as you realize bar is 5 pages back and your scroll back buffer isn't big enough.
      4. To make sure bar exists and you can know it eiher:
      4a. increase size of scrollback buffer and repear step 2.
      4b. execute ls -al | more instead
      5. Now to get the listing AND show the properties, type in:

      ls -al bar
      6. Cuss and swear again as you suddenly find our more than just the file 'foo' was in the 'bar' directory. Calm down and scroll back again and do one of the following:
      6a. Use a GUI
      6b. Pipe the ls command through more again
      6c. Use a mroe explicit ls command, like

      ls -al bar/foo

      Now you state claims about the GUI taking longer because you have to mouse around. How are you scroll back your buffer when there's too many files? Or maybe you use'd the space bar to page through it after piping it through another command. And how did you know to use the -al option? In a GUI, you can discover the setting by clicking various toolabar icons, etc... or even resort to the help window In the CLI, you have to use a man page, or similar.

      Then you make more unfair comparisons assuming that you're already at a command prompt for a CLI wheras every GUI user I know of keeps a file manager up and runnign and does a lot of there work through it.

      YOu don't have to resort to such lengths. Just click the STart button, click RUn, type "CMD", click OK and then you're got youre command prompt. When you need to attach the three requirements document for project FooBar to the e-mail you're sending, enjoy fiddlig with your command line to select those three documents from the hundred or so in the 'requirements' folder that you didn't have mapped but did have a GUI shortcut to until you gave up on GUIs. Meanwhile, I'll use a GUI file manager (Which I already had running) ro pick that folder, select the three documents with the CTRL-key and drop them into the e-mail window where I'm composing.

    8. Re:Command line is more consistent by LarsWestergren · · Score: 1

      Ah,thanks.

      --

      Being bitter is drinking poison and hoping someone else will die

    9. Re:Command line is more consistent by RustyTaco · · Score: 1

      Uh, that's why all modern (and probably old too) unix print systems have filters that know how to print stuff. "lp bar" should be more than sufficient.

      - RustyTaco

  18. Helps if you can type by Anonymous Coward · · Score: 0

    I'd hate to see what this guys commandline looks like given his typing ability : "This essay describes some of the observations I made when giving some of the more advanced members tow brief session with a Linux session over SSH. "

    1. Re:Helps if you can type by REBloomfield · · Score: 1

      Probably looks like this: -bash: This: command not found

  19. Interesting by sniggly · · Score: 4, Interesting
    When I installed a linux desktop for my mother about a year ago the trouble she really had was with the concept of the mouse and clicking. That the motion of the mouse in horizontal space translates into motion of an icon in vertical space, that a click OR double click means activation... She had to learn all those things and it took a while. The whole idea of icon and menu based computing was new to her and still isn't demystified.

    When she worked she worked with DOS based programs. I guess now these are so much easier to understand because you actually "talk" to the computer albeit through a keyboard and with a very limited command set. Maybe the mouse driven GUI is a bad inbetween step from the keyboard-only days to a time when computers understand conversation.

    One of the things I really miss when I sit behind a windows computer is a bash shell, tab completion, gcc, vi... and you usually arent allowed to install cygwin on people's systems :)

    --
    Of those to whom much is given, much is required.
    1. Re:Interesting by Libraryman · · Score: 1
      One of the things I really miss when I sit behind a windows computer is a bash shell, tab completion . . .

      Ahh, tab-completion. How many times while typing away in a word-processor and do I just hit [tab] and then wonder for a second why 'Wed' didn't just become 'Wednesday'!

      Everything should have tab-completion!
    2. Re:Interesting by cocotoni · · Score: 1
      Tab completion is available on Windows 2000, XP and 2003 (in 2003 by default, in 2000 and XP through TweakUI) if only for file / directory names.

      For a nice set of command line utilities for windows (no cygwin needed) check unxutils.sourceforge.net.

    3. Re:Interesting by SmilingBoy · · Score: 1

      OpenOffice.org Writer does exactly that for all words! Some people think it is annoying, but I think it is fanntastic.

    4. Re:Interesting by Trinition · · Score: 1

      Actually, its been available since at least NT4, and you don't need a tweak tool. Use regedit to locate the "HKCU\Software\Microsoft\Command Processor", and set the "CompletionChar" value to whatever keycode you want (9=TAB, for example).

    5. Re:Interesting by Chris+Burke · · Score: 1

      One of the things I really miss when I sit behind a windows computer is a bash shell, tab completion, gcc, vi... and you usually arent allowed to install cygwin on people's systems :)

      Yeah, I'm considering getting a USB flash stick and putting cygwin and other stuff on it for when I'm stuck at a windows machine. And hey, I can put my config files on it for when I'm at a new unix machine as well.

      --

      The enemies of Democracy are
  20. Shhh don't let the secret out.... by filesiteguy · · Score: 1

    I tend to agree that either CL or panel-driven apps tend to be easier for newbies. I often work with those who have only used mainframe panels and they are VERY comfortable. I give them a Windows-based system with the "Start" button and they're lost. I then show them how to enter the command line world for directory lookups and editors and things are happy again.

  21. Microsoft demonized the command prompt... by Xpilot · · Score: 5, Insightful

    ...as part of its Win95 hype machine. Microsoft likes to point out that pointy-clicky is sooo much easier than the "arcane" and "cryptic" command prompt, and tried as hard as possible to hide it. Microsoft certainly didn't try to improve its command prompt much, and even in modern version of Windows it still retains a lot of its retardedness inherited from the early days of DOS.

    The question is, why? Sure, newbies hate it, but it's really useful to have a powerful command prompt, so it wouldn't hurt to include it. Even Macs have them now. Windows would be much more tolerable if it had a Unix-style command shell out of the box. Yet Microsoft feels the command prompt should die and it seems (at least from my point of view) that it's included only grudgingly in the OS.

    --
    "Backups are for wimps. Real men upload their data to an FTP site and have everyone else mirror it." -- Linus Torvalds
    1. Re:Microsoft demonized the command prompt... by TheDigitalRaven · · Score: 0
      Microsoft likes to point out that pointy-clicky is sooo much easier than the "arcane" and "cryptic" command prompt
      "Microsoft likes to point out that cave-paintings are sooo much easier than the arcane and cryptic idea of language"
    2. Re:Microsoft demonized the command prompt... by nickos · · Score: 3, Interesting

      look here http://slashdot.org/articles/02/12/29/1349230.shtm l?tid=109

      An anonymous reader writes "I found this while searching for Perl Jobs in India:
      "The Microsoft Next Generation Shell Team is designing and developing a new command line scripting environment from the ground up. The new shell and utilities, based on the .NET Frameworks, will provide a very rich object-based mechanism for managing system properties. To be delivered in the next release of Windows, it will include the attributes of competitors' shells (e.g. aliases, job control, command substitution, pipelines, regular expressions, transparent remote execution) plus rich features based on Windows and .NET (e.g. command discovery via .NET reflection API's, object-based properties/methods, 1:many server scripting, pervasive auto-complete)."

    3. Re:Microsoft demonized the command prompt... by Big+Nemo+'60 · · Score: 3, Informative

      ...and oddly enough, (a) Microsoft added some sixty (!) command-line functions in Windows Server 2003 and (b) "Longhorn" (ETA most likely 2006 by now) is due to have a *NIX-grade Command Shell (IIRC the codename for development is "monad")

      These tools seem mostly geared towards system and network administrators and such. However, looks like they have changed their mind a bit on the matter...

      --
      In the long run we are all dead. - John Maynard Keynes (1883 - 1946)
    4. Re:Microsoft demonized the command prompt... by dave420 · · Score: 1
      What are you on about? :-P If it's so demonized, why do they still have it? Why are they constantly giving it more functionality?

      Please, I'm all for highlighting people resting on their laurels, but this isn't one of those times.

      Wander onto MSDN, and see just how much information they have for people using the command-line. They have lots of tools and documentation for system admins to use it. It's not included "grudgingly", but rather kept out of the way for novice users, who really have no need to use it.

      Still, if you want the real deal, cygwin is only one click away.

    5. Re:Microsoft demonized the command prompt... by Chris+Burke · · Score: 2, Funny

      A friend of mine once said something along the lines of: "Eventually Windows will have everything UNIX does because developers will demand it."

      Well, looks like he was right. Good call, dtowne!

      --

      The enemies of Democracy are
    6. Re:Microsoft demonized the command prompt... by Apathetic1 · · Score: 1

      I was ecstatic when I discovered that the TweakUI control panel lets you turn on tab completion under Win2K and XP. It makes the Windows command prompt much more usable. I also recall reading an article some time ago that Microsoft is supposedly putting a powerful CLI into Longhorn. If they ever finish it, I guess.

      One of the comments I saw attached to the article was something along the lines of "Given enough time and money, Microsoft will eventually invent Unix".

      --

      My username does not make me Apathetic. It's irony, get it?

    7. Re:Microsoft demonized the command prompt... by mcwop · · Score: 1

      The real problem is the lack of a right mouse button in the CLI. Add that, and Windows users will feel right at home.

      --

      "I don't think it's selfish, to eat defenseless shellfish." -NOFX

    8. Re:Microsoft demonized the command prompt... by zhenlin · · Score: 1

      Windows Server 2003 (or Longhorn) purportedly has a command-line and shell-scripting system that comes close to the power of bash.

      Mostly because the admins demand batch jobs that can do more. (And, being a batch job, means that none of the programs should require interactive use... Unfortunately, even most system programs require interactive use)

    9. Re:Microsoft demonized the command prompt... by Kaboom13 · · Score: 1

      Hello Trolly McTroll.
      Windows 95 did not demonize the command line, it demonized DOS. Microsoft desperatly wanted everyone to ditch the mess that is DOS and develop Windows GUI programs. If you remember Windows 3.1, a lot of programs still switched to DOS to run. That said, Windows 2k and XP have very powerful command lines. Almost every aspect of windows can be manipulated and scripted through the command line. Microsoft's Active Directory relies heavily on these capabilities. If Microsoft wanted it to die, why would the keep improving it in every version of Windows? Why teach people to use it as part of their MSCE training?

    10. Re:Microsoft demonized the command prompt... by Xpilot · · Score: 1

      Windows 95 did not demonize the command line, it demonized DOS. Microsoft desperatly wanted everyone to ditch the mess that is DOS and develop Windows GUI programs.

      Whatever their intent, they seem to have indoctrinated the "commands are hard" philosophy into every computer user. They also like to point out that Linux relies on command lines, therefore it is "hard" in their FUD-fests.

      That said, Windows 2k and XP have very powerful command lines. Almost every aspect of windows can be manipulated and scripted through the command line. Microsoft's Active Directory relies heavily on these capabilities. If Microsoft wanted it to die, why would the keep improving it in every version of Windows?

      Sure, it gets better, but they don't really seem to be trying. Unix command shells are far more flexible, and some are older than NT, and with all the kajillions in the bank you'd think they'd have one that rivals *nix by now. Why teach people to use it as part of their MSCE training? They teach many things during MSCE training, but that's irrelevant. They target their marketing to the majority of computer users who aren't MCSE trainees, and they push the pointy-clicky paradigm onto them.

      This has one unfortunate effect : newer generation of kids who enrol in computer science courses know only GUI's and get shit scared of consoles. They freak out, irrationally, at the mere sight of a command prompt. You can teach them C++ and Java and whatnot, and they actually remember the syntax, and yet command prompts are still described at "arcane".

      --
      "Backups are for wimps. Real men upload their data to an FTP site and have everyone else mirror it." -- Linus Torvalds
    11. Re:Microsoft demonized the command prompt... by Anonymous Coward · · Score: 0
      The real problem is the lack of a right mouse button in the CLI.

      When cmd.exe's QuickEdit mode is on, the right mouse button is used for pasting in text.

    12. Re:Microsoft demonized the command prompt... by allan_q · · Score: 1
      Yet Microsoft feels the command prompt should die and it seems (at least from my point of view) that it's included only grudgingly in the OS.

      That's starting to change with Windows Server 2003. They have included a whole bunch of tools to help admins administer their box. Check out this knowledgebase article on the new tools for Active Directory alone. Here's another one for printing. There's even a howto on managing users, groups, and computers using only these tools. You may not be able to do everything on the CLI, but adding a dozen users won't be as painful.

      CLI and GUI have their place. I like the speed of CLI and I can add an hour to my laptop's battery life by not starting X. But most of the time, I like the eye candy. Debating between CLI and GUI is the same as VI and Emacs. There's no clear winner. To each their own. And why not have both?

    13. Re:Microsoft demonized the command prompt... by Kaboom13 · · Score: 1

      Bullshit, I'm part of that newer generation. When you first start learning programming the first thing you learn to do is fun with the console. I've never seen anyonr "freak out" at the sight of a command prompt. Usually those that never made use of the console before are intrigued to learn something new. Have you ever actually been to a classroom of the "newer generation" you like to make sweeping generalizations about, od must they freak out just cause they aren't an old-timer like you.

    14. Re:Microsoft demonized the command prompt... by Xpilot · · Score: 1

      Have you ever actually been to a classroom of the "newer generation" you like to make sweeping generalizations about

      I've taught quite a few classes, thank you. And I've even done surveys on the matter. The conclusion is always overwhelmingly "students like pointy-clicky, consoles suck".

      --
      "Backups are for wimps. Real men upload their data to an FTP site and have everyone else mirror it." -- Linus Torvalds
  22. Old Timers Favourite?? by ashwinds · · Score: 2, Interesting

    My dad is all of 64 yrs. When he started on computers a year ago - he started with Linux (the man does not know the "windows-way". One of his early observations was that it was easier for him to learn the command line and keyboard shortcuts. He could list these on a peice of paper and run thro' whenever he ran into trouble/forgot. Of course now he is on KDE 3.2 and seems fine with the GUI...

  23. Are you a Mac zealot? by Anonymous Coward · · Score: 0

    "I really look forward to the day when the concept of the PC disappears."

    Does this mean that you want everyone by this point to be using Apple Macintosh microcomputers intead pf PC's? Did you lift this line from a Steve Jobs speech?

  24. True Story by ellem · · Score: 3, Interesting

    Had a Fujitsu laptop, like a P133, in 1998(?) and I loaded Redhat 6.0 and could NOT get the Xserver to work. I spent about 6 mos (now and again) at the command line putzing around on tryng to get the Xserver working. In that time I learned more about Linux AND Windows than I ever knew even existed. Suddenly alot of Windows oddities made sense... in the sense that I got what they were _trying_ to do. And it left me with a hollow feeling whenever I used Command... Why doesn't Windows have...

    --
    This .sig is fake but accurate.
    1. Re:True Story by OwlWhacker · · Score: 1

      Had a Fujitsu laptop, like a P133

      For a minute there I thought 'plee' was some new script kiddie word, then I figured out what you meant.

  25. more memory intensive though by jago25_98 · · Score: 2, Interesting

    It may be more logical,

    but it's more memory intensive - visuals are easier to remember. Well, I find it easier to remember visuals rather than words.

    1. Re:more memory intensive though by Anonymous Coward · · Score: 0
      visuals are easier to remember. Well, I find it easier to remember visuals rather than words.

      True, but menus are not easy to remember when it's just a bunch of text. It helps when there are icons next to each of the menu items. MS Word does this, and Firefox can be made to do this with the CuteMenus extension.

  26. Like the VMS shell by garompa · · Score: 0

    you can do anything you want with the HELP command.

    --
    Is it absolutely necessary to have a sig. ?
    1. Re:Like the VMS shell by Anonymous Coward · · Score: 0, Funny

      Yeah but learning the syntax to the HELP command was a hurdle.

      Relax! It's a joke!

  27. Push The Power Of Combining Commands & Scripti by pandrijeczko · · Score: 3, Interesting
    I developed an training course at work to introduce Windows-orientated users to Linux.

    From the word go I had them "cat"-ing, "sort"-ing, "grep"-ing and "cut"-ing files, showed them how to combine commands on the command line and how to turn them into shell-scripts.

    The guys I taught were, like me, support engineers on Linux-based telephony products and were keen on learning how to strip relevant info from log & text files.

    Within a couple of weeks they were churning out pretty good shell-scripts that were extracting info from files all across the system, "gzip"-ing them up and mailing them off automatically in cron jobs. Many of the commands they used in the scripts I'd never even mentioned in the training but had showed them about man pages and "find"-ing files on the system.

    The moral behind the story is that if you give people enough of the basics, they'll soon go find problems they need to solve and work out their own ways of doing it.

    --
    Gentoo Linux - another day, another USE flag.
  28. Bandwidth by paranerd · · Score: 1

    I've never been able to understand the love afair with the mouse and the pretty icon. 10 fingers + 101 keys VERSUS three fingers and some pretty pictures. You do the math.

  29. M$ copied this from Apple by Anonymous Coward · · Score: 0

    Like with other aspects of the GUI world, Microsoft was only following Apple's lead in "demonizing the command line"

    1. Re:M$ copied this from Apple by mentokthemindtaker · · Score: 1
      Like with other aspects of the GUI world, Microsoft was only following Apple's lead in "demonizing the command line"


      Now they should follow Apple's lead again and revive the command line.
    2. Re:M$ copied this from Apple by wayward_son · · Score: 1
      Now they should follow Apple's lead again

      Microsoft following Apple's lead? What else is new?

  30. Full screen editors rock by MagerValp · · Score: 5, Funny

    **** COMMODORE 64 BASIC V2 ****

    64K RAM SYSTEM 38911 BASIC BYTES FREE

    READY.
    #


    Now that's newbie friendly.
    --

    READY.
    #
    1. Re:Full screen editors rock by garompa · · Score: 0

      BASIC sucks, but still is a nice programming language for newbbies :) my first "computer" was a Sinclair 1500, and I know what you mean.

      --
      Is it absolutely necessary to have a sig. ?
    2. Re:Full screen editors rock by AMD-lover · · Score: 1

      And the famous: LOAD "*",8,1 followed by RUN. Simple and fast.

    3. Re:Full screen editors rock by Anonymous Coward · · Score: 0

      10 PRINT "HELLO WORLD!"
      20 GOTO 10
      RUN

      ^C ESC exit^Mdie ^Mreboot^Mquit^Mdamn^M

    4. Re:Full screen editors rock by ampersandTHORN · · Score: 1
      You may jest, but on the ZX Spectrum all the commands were printed on the keyboard which made exploration a bit easier.

      Wouldn't it be a good idea for standard shortcut keys to be labelled on the keyboard.

    5. Re:Full screen editors rock by Anonymous Coward · · Score: 0

      Hey, XP is already copying the color scheme for their startup/shutdown screens.

    6. Re:Full screen editors rock by hInstance · · Score: 1

      Good ole C64.
      Still the fastest boot time of any computer I've owned.

  31. MS-DOS by MalaclypseTheYounger · · Score: 2, Interesting

    All I can say is that I am an old school MS-DOS guy, and it constantly drives me nuts when I see people using Windows Explorer to find a file, select it, go to the menubar, select Edit, Copy, and then navigate to a different directory in Windows Explorer, menubar, Edit, Paste.

    Maybe it's because I type 80wpm (at least when doing sysadmin work in MS-DOS I do), but things I do in MS-DOS seem to take 50-75% less time than to do similar tasks using a mouse & windows only.

    --
    Check out the best P2P sharing website: MEDIACHEST.COM
    1. Re:MS-DOS by CoolGuySteve · · Score: 1

      Now what if you want to copy some mp3s from a directory but not all of them and there's not much of a consistent pattern in their names. It's way faster just to hold down Control and click the ones you want instead of hitting tab 50 times while trying to autocomplete the names.

      When playing mp3s from the linux commandline, mc is preinstalled on most systems and far easier because it allows you to say "That one there" instead of "mpg321 Elliot\ Smith\ -\ Roman\ Candle\ -\ Last\ Call.mp3". Just a week or two ago, I was trying to explain this concept to a unix guy who was far more hardcore than I and he freaked out. mc is the devil apparently, it ruins the zen-like sanctity of the command line!

  32. Other Newbie Terms by Digitus1337 · · Score: 2, Funny

    Name Called By:
    -Noob -Ghost Recon/Console Gamers
    -Newp -RPGers
    -Nub -CSers
    -Nubby -''
    -Nubzy -''
    -Pub -''
    -Pubber -''
    -CS -Gamer

  33. Well, by DavidBartlett · · Score: 1

    I was a newbie 2 years ago, and was often infuriated by poorly written GUI tools that crashed all the time. I found that the command line just simply worked.

    --

    -DB-
    E-mail is like a prison: a prison with no walls... and no toilet. -Strong Bad
  34. Not to nit pick too much, by Anonymous Coward · · Score: 0

    But the command shell on Windows XP has tab completion, and gcc and vi are in fact available for Windows with cygwin or not.

    1. Re:Not to nit pick too much, by sniggly · · Score: 1
      I didn't know it had tab completion, thanks!

      It is mostly behind other people's computers that I miss these tools. For quick fixes i still carry around Turbo C++ 2.0 for dos - loads like a flash! hmmm talking about flashes maybe i should get one of those USB flash disks and park some of these goodies on it ;)

      --
      Of those to whom much is given, much is required.
    2. Re:Not to nit pick too much, by yuri+benjamin · · Score: 1

      But the command shell on Windows XP has tab completion

      I'm using windows 2000 at work, and tab completion doesn't work.
      Any way to enable it without admin privilige?

      --
      You make the mistake of thinking you can educate the fundamental stupidity out of people. You can't.
    3. Re:Not to nit pick too much, by Anonymous Coward · · Score: 0
      Type the following two commands at a cmd.exe prompt:
      reg add "hkcu\software\microsoft\command processor" /t REG_DWORD /v PathCompletionChar /d 0x09

      reg add "hkcu\software\microsoft\command processor" /t REG_DWORD /v CompletionChar /d 0x09
      If you don't have reg.exe (it's in the Win2000 Support Tools), here's a small javascript. Save it into a .js file and double click it.
      var shell = WScript.CreateObject( "WScript.Shell" );
      shell.RegWrite( "HKCU\\Software\\Microsoft\\Command Processor\\CompletionChar", 0x09, "REG_DWORD" );
      shell.RegWrite( "HKCU\\Software\\Microsoft\\Command Processor\\PathCompletionChar", 0x09, "REG_DWORD" );
  35. For example of ease of commandline usage. by Anonymous Coward · · Score: 4, Insightful

    Configure the DNS server address staticly:

    In windows:

    Goto start --> start --> control panel --> networking --> select the correct device --> options (or whatever I don't f-ing remember) --> select TCP/IP --> select options --> hit the DNS tab --> Select "I want to specify dns addresses bullet --> type in ip address in the boxes.

    Networking specifications are spread throught 100's of dialogs and wizards. Some can set conflicting settings, some can override the settings of others. Some are grayed out to prevent these conflicts and you need to figure out why. All system wide configs are stored in the same place as program specific configs and user configs. If any program or installer corrupts this one binary file it will render the entire OS unusable.

    In Linux (if the dns server is 192.168.1.1:

    echo "nameserver 192.168.1.1" >> /etc/resolv.conf

    Remember resolv.conf because DNS is to resolv the URL names into ip addresses. System wide configs are stored in plain text files in /etc/ directory. If any of these configs get corrupted you can edit them manually to fix them, or copy originals from packages, or copy them from another source and edi them to fit your needs.

    1. Re:For example of ease of commandline usage. by dave420 · · Score: 1
      And changing the DNS server via any Linux GUI is any quicker, I suppose? I know your eyes won't be bleeding out of your head when you finish doing it on Windows, though ;)

      Seriously, though, the vulnerabilities you talk about in Windows are pretty unfounded. If you've used windows, you'll know it takes serious steps to make sure no-one monkeys with files that might cause the system to become unstable. If any of those files are touched, windows will ask you if you want to replace them. One click, and it's all back to normal. And that's not even included system restore points, which can roll back drivers and registry changes automatically, while protecting any other vital (system/user) files that might have been affected.

    2. Re:For example of ease of commandline usage. by rjstanford · · Score: 1

      The difference is discoverability, which for something that you change very rarely can be a very good thing.

      For example, we got a co-loc Windows server using a PPTP VPN for security. I needed to set it up as a router for access to a customer site who only wanted one point of contact. It took me something like 15 minutes to do outbound VPN on demand, and set up the necessary static routes, and its worked ever since. Got walked through the whole process.

      And not once did I have to read a newsgroup, or dig through cryptic commands, or anything, to try to set it up.

      Now, I have no doubt that I could have made it work on Linux too. I've admin'd networks of FreeBSD and AIX machines (years ago). I'm familiar with routing. But you know what? I'm rusty at it. I know the concepts, but not the specific commands. And I don't want to know them. I just want it to work.

      Now, a lot of times I prefer UNIX servers. In this case though, the Windows server was much more useful for me.

      Your example is the same. The Linux way is much easier - if and only if you know what resolv.conf does. If you don't, its much easier to clicky-clicky through the Windows dialog than it is to try to figure it out. I mean, where do you start? What do you "man"? Or are you googling for the answer (by which point the Windows way is faster).

      For newbies, the GUI is easier. For experts, both systems provide command line equivs. For that matter, Linux provides a GUI equiv. Many of them. But they're not as consistent or intuitive. And since they're aimed at newbies (or possibly experts who are just newbies at a particular task), consistency is important.

      --
      You're special forces then? That's great! I just love your olympics!
    3. Re:For example of ease of commandline usage. by 91degrees · · Score: 1

      It's certainly faster, but a single mistake could result in you overwriting resolve.conf, or creating a new file called /etc/resvole.conf and being very confused about why your DNS is broken.

    4. Re:For example of ease of commandline usage. by Anonymous Coward · · Score: 0
      In Windows, this works:

      netsh interface ip set dns "Local Area Connection" static 192.168.1.1

      The netsh command is very powerful in Windows. Type it alone to get the interactive mode (type help to get help) or type netsh help to get information about one-shot command structures.

      The rest of your message is just FUD. Shame on you.

    5. Re:For example of ease of commandline usage. by vhold · · Score: 1

      Mod parent up, too many people underestimate window's CLI abilities. The original poster's solution to the problem is a straw man and a false dilema. Not only is it not the only means possible, the gui method still has the advantage that its discoverable strictly through the interface, and this is a discussion strictly about interface.

      I'm an avid linux user, but I'd only recommend it on it's strengths, not try to advocate it by exposing a weakness.

    6. Re:For example of ease of commandline usage. by KJKHyperion · · Score: 2, Insightful

      OK, I'll bite.

      First, news flash: Windows comes with sensible defaults. Dialogs are meant to be a one-time annoyance, and they are long and winding because you need to get it right the one first time and then forget it. Things go wrong? doesn't happen so often, so you should be able to orient yourself without needing to have taken notes months ago, when you set it up.

      Second, configuring networks by hand is an obsolete concept, so it's nothing that should be toted around so proudly. Part of the sensible defaults in Windows is DHCP support, and there's really no reason not to use it (is there? sucks to be you. You'd have to do extra work anyway). But I digress.

      Third, Windows isn't a free ticket for one-sided ignorance and lazyness. It may be so around your circles, it isn't if I'm nearby (who am I? I'm your worst nightmare come true. I know what's the difference between %ENVVAR% and !ENVVAR! in the Windows command prompt and I can quote the XSI standard by heart and install bootsectors by hand with dd, complete with setting disk parameters. I'm the two-headed computer guy, and I'm your nemesis, my dear monochromatic Linux wimp). Do you consider yourself a person open to exploration and self-education? you aren't if you moved away from Windows because you just didn't get it. You may like repeatedly submitting yourself to the masochistic practice of routinely wading through configuration dialogs, it's not my business. Different strokes for different people. We who use Windows not only as a dubious source of sordid personal pleasure, instead, prefer to sort out networking matters with the "netsh" command, in the rare event that something isn't taken care of by DHCP. Free hint: try "netsh interface ip add dns", and please resist soiling your underwear.

      Fourth: I use Windows exclusively and I still understand UNIX better than you (add "nyah nyah nyah"s at will). What makes text files great is that you can put them under version control, the rest is just "ain't it cool". And I won't even begin commenting on your utter lack of understanding of the Windows registry (whooops! hope this doesn't count as a comment), because I have an unfair advantage.

      --

      Make a difference - use Windows! (open source clone of Windows NT)

  36. Only for English speaking newbies by poszi · · Score: 4, Interesting

    I did some teaching of command line for non-English-speaking students and the biggest obstacle was the language barrier. They couldn't remember the command and they didn't understand the output of the command. Even if they knew some English, there were always some technical terms they couldn't understand and they felt intimidated. This way they were much more efficient in a localized GUI.

    --

    Save the bandwidth. Don't use sigs!

    1. Re:Only for English speaking newbies by SoTuA · · Score: 2, Informative
      This way they were much more efficient in a localized GUI.

      And how is it different from a localized CLI? Ever hear of a little term called "i18n"?

      user@server:~/> cd /root

      /root: Permiso denegado.

      As for technical terms, that's going to scare somebody who doesn't know it, wether it's in his language or not. ("procesos" is as scary to my mother as "processes").

    2. Re:Only for English speaking newbies by poszi · · Score: 4, Insightful
      user@server:~/> cd /root

      /root: Permiso denegado.

      Yes. But the command itself is not localized ("cd = change directory"). There is no localized command "zk = zmien katalog".

      --

      Save the bandwidth. Don't use sigs!

    3. Re:Only for English speaking newbies by KGBear · · Score: 1
      I've spent most of my professional life in Brazil, where people speak Portuguese. My feelings about localization are similar to my feelings about GUIS. It seems to be done just because it's possible and wanted just because it's there.


      In the 80's, when I started, secretaries and clerks who didn't know 2 words in English were happily and productively using WordStar and Lotus 1-2-3, despite the fact that there was no Portuguese version. Both were extremely easy to teach because they only needed to memorize sequences of oft-used commands.


      In the early 90's Portuguese language support was available on Windows, including accented characters. Now everybody wanted to have Windows not because they could write correct Portuguese but because their friend/correspondent/competitor was writing papers with correct Portuguese. However I still had the same problems as ever supporting users and it was definitely harder for them to remember a sequence of point and click gestures that depends on the location of the dialog box than a simple sequence of keystrokes that always work.


      In 96 the company would only allow us to install software that supported the Portuguese language, but take e-mail as an example: to use an e-mail client you basically need to understand 3 English words: "Send", "Compose" and "Inbox". A "power user" would learn "Reply", "Forward" and "Outbox" quick enough. As it turns out, having it all translated didn't stop people from misunderstanding e-mail and, ie, "replying to all" instead of just the original sender.


      Language is also used as an excuse for not getting things done. For instante, many times I heard the complaint "My job description doesn't include knowing English. Now there's some error message in English in my screen and I'm not working until you fix it - and I'll tell my boss it's your fault". Some of this people would refuse to read the English message back to me because English is not in their job descriptions - no matter if I said that I didn't care about pronunciation, I just needed to understand the error itself. No, these people would want me to go down and sit at their computers, the language barrier was just an excellent excuse to get me to do that.


      OTOH, these exact same persons had absolutely no problem with a game written (and even spoken) completely in English. They also didn't have any problem at all with an American CD full of porn. They would happily use these things without the need for me to come down and "translate the error message for them", mostly because they knew what they were doing was against company policy - but the point is that when a user really wants to make something work, they will. If language is not a barrier for gaming or porn, why should it be for email?

    4. Re:Only for English speaking newbies by SoTuA · · Score: 1
      Yes. But the command itself is not localized ("cd = change directory"). There is no localized command "zk = zmien katalog".

      Ah, but it is "cd" = "cambiar directorio". ;)

      But seriously, it is a good point you raise.

    5. Re:Only for English speaking newbies by dabadab · · Score: 1

      Now, let's input the following commands into the brain of an average speaker of English:
      'cat', 'grep', 'sed', 'pine', 'mc', 'cd'.

      The output is:

      Kitten!
      WtF?...
      WtF?...
      A tree.
      Yo, brada!
      Shiny disc.

      Oh, that helped.

      I guess most people never realizes what does 'cd' stand for (much less 'cat') and most people do not have any problem learning them no matter what language they speak.

      --
      Real life is overrated.
    6. Re:Only for English speaking newbies by Prowl · · Score: 1

      True, but an english newbie will only have to be told once what cd, mkdir, mv and cp stand for and they'll be able to remember it. zk? don't think so.

      admittedly, a lot of unix standard command line tools are poorly named, but the article would indicate that the act of typing into a prompt (having a conversation) is much more familiar to newbies than using a gui.

      if someone was to take the time to set up some intuitive aliases and compspecs in bash...

      --
      That man tried to kill mah Daddy
  37. I am office suite, hear me roar by Uggy · · Score: 4, Insightful

    from my web log, I think it's appropriate and strangely enough, quasi-religious...

    We all strive to be big monolithic programs, with fancy buttons, big memory footprints, environments where people, if they want to do anything, must go through us. We strive to be pre-eminent on the desktop, world stage. We crave fame. Look at me we say. Look how important I have become. I am an Office Suite, hear me roar. Look how much I can do. If you want to do any work, you must come through me.

    [snip]

    We must teach our brethren the ways of the Unix shell, for if we don't we will forever be trapped handcuffed in that big shiny plastic bubble of modern life, where we see but we can't interact. We must go back, back to the beginning and learn the first lessons.

    --
    Toddlers are the stormtroopers of the Lord of Entropy.
  38. ObOldJoke by Ethelred+Unraed · · Score: 3, Insightful
    Who is this General Protection Fault, and what's he doing reading my hard drive?

    That said, it would be rather helpful if command-line tools would actually communicate more in plain English. Most of the commands and responses were meant to save keystrokes and be brief, and were written by geeks for geeks (so to speak).

    Why write "Segmentation fault: core dumped", rather than, say, "Sorry, this program has unexpectedly quit because of a programming error"? In other words, worry less about technical accuracy in error messages and concentrate more on making the computer and OS more understandable to non-technical people.

    I'm not saying bash or the other shells should be re-written that way, but it would be nice if a more newbie-friendly CLI was around.

    Cheers,

    Ethelred

    --
    Everyone wants to be Ethelred. Even I want to be Ethelred.
    1. Re:ObOldJoke by gertsenl · · Score: 1

      Right, because programmers get confused every time they get a seg fault... That *is* mostly the audience that sees that message. I'm with you in general, that's just an unfortunate example. :)

      --
      --Leo
    2. Re:ObOldJoke by Ethelred+Unraed · · Score: 1
      Right, because programmers get confused every time they get a seg fault... That *is* mostly the audience that sees that message.

      Not really -- programmers should be the only ones to see that message, but hey, sometimes end users get stuck with shoddy software that segfaults too, ya know. ;-)

      Cheers,

      Ethelred

      --
      Everyone wants to be Ethelred. Even I want to be Ethelred.
    3. Re:ObOldJoke by Anonymous Coward · · Score: 0

      Don't the messages get chosen from your locale? It would be the perfect way to do it, LOCALE=en_NEWBIE.

    4. Re:ObOldJoke by Apathetic1 · · Score: 1

      General Projection Fault doesn't read hard drives; You must be thinking of General Failure.

      --

      My username does not make me Apathetic. It's irony, get it?

    5. Re:ObOldJoke by zhenlin · · Score: 1

      "Sorry, this program has unexpectedly quit because of a programming error"

      Maps to, among other things:

      SIGSEGV "Segmentation fault"
      ENOMEM "Out of memory"
      ENOSYS "No such system call"

      As far as I am concerned, working programs are more important to the user than knowledge that the program has failed, and to have more working programs, the error messages have to be more informative.

      Though, it would be more convenient to have a Mozilla TrackBack or GNOME Bug Buddy type program to collect this debugging information...

      # ./buggy-program
      SIGSEGV (Segmentation fault) recieved.
      The program has been terminated.
      File a bug report? (Y/n) _

    6. Re:ObOldJoke by cdyson37 · · Score: 1

      Who is this General Protection Fault, and what's he doing reading my hard drive?

      And who the hell is this kernel everyone talks about??? :-)

    7. Re:ObOldJoke by frause · · Score: 1

      You mean Col. Panic? Trust me, you wouldn't want anything to do with him.

      Or do you perhaps mean Col. TwoPointSix? He's a nice guy. I'll introduce you to him if you'll like.

    8. Re:ObOldJoke by Anonymous Coward · · Score: 0

      i agree with what you say about error messages. especially when error messages have codes which can be retranslated using something akin to localization into plain english or jargon depending on ones preferences. distros might then be able to set error messages to plain english and power-users change them to jargon etc etc

    9. Re:ObOldJoke by Anonymous Coward · · Score: 1, Interesting

      Does anyone else here remember the "why" command from AmigaDOS. After a CLI command failed, you could type "why" and it would give you a long 'human-readable' explaination of what happened.

  39. Building a better shell by arevos · · Score: 5, Interesting
    Interestingly enough, I'm designing a shell for my final project at Uni. This is a pretty useful article, all considering. I was originally designing the system to be more easy to use for powerusers, but perhaps there's a niche for newbies too.

    Before, I was concentrating on the syntax of control structures. Like having:
    if ($value == 1) { echo hello }
    for $i (1:10) { echo $i green bottles }
    Rather than:
    if [ $value -eq 1 ]; do echo hello; fi
    for i in `seq 1 10`; do echo $i green bottles; done
    I could think about adding in a better help system as well. I've got a few months left of design work.

    And I need to fix the lexer, too. In a recent presentation, I found a rather embarrassing bug. The concatenation operator in my shell is the same as perl's, the full stop, or period, ".". Cleverly, the shell can also treat numbers as strings and strings as numbers.

    Unfortunately, it was all a bit too clever.

    The expression 3.0 + 2.0 was parsed as (("3" . "0") + 2) . "0"). Giving 320. Oops!

    But given a little more work, maybe I could get it to solve some of the problems mentioned in the article above. Could be an interesting thing to do.
    1. Re:Building a better shell by argent · · Score: 1

      I don't think that "C" style syntax is really ideal for a human interface, anyway. The expression syntax is complex, and the control structures aren't well suited to the shell. Have a look at languages like icon, where control flow is largely handled by generators.

      If you make generators your basic operation, and make the syntax compatible with pipes and commands, you should be able to both simplify it and make it more expressive.

      As for concatenation, I'd suggest using adjacency or "+". makes the lexer simpler.

    2. Re:Building a better shell by hey! · · Score: 2, Interesting
      The historical problem with the Unix shell has been inconsistencies in the way commands specify options.

      What newbies need are not a better shell, but more standarization in the grammar and option specifications and better access to help. Over time the way Unix commands specify options has improved greatly, but for newbies (and some not so newbies) it would be better if this process were taken even further. For example, there are already some commonly used options like "-f" for choosing a file or "-o", but these are not very consistently used, and utiltity writers are pretty much free to define them to do something other than choose a different file for processing or output destination. In other words, utilties need a common grammar and lexicon.

      Additionally, a GUI editor to build command strings would be helpful. You could build your line, but float your cursor over a command to bring up the command's help information in a separate pane, with options to browse to linked pages etc. You could enter a longish option at the insertion point by double clicking on it in the help pane, or select/drag to the desired point. When you'd finished your command, you'd hit an "Enter" GUI button, or reset focus on the command pane and hit "Enter". If you never needed help, you'd just never take you hands off the keyboard and it would flow like a normal terminal window. Maybe F1 would toggle the help pane.

      If I were to extend the shell for newbies, I'd extend it by creating something like a clipboard -- an area to which intermediate results can be sent or retrieved. This would mean they wouldn't have to think out an entire pipeline in advance. Naturally, you can use temporary files for this purpose, but this would be something session specific so you wouldn't end up cluttering up your directories, and it could be accounted for separately from disk quotas. This will also tend to reduce accidental overwriting of real files. Add undo and redo, and users can recover from individual missteps.

      For example, suppose we reserved the upper case letter C for our clipboard, we'd support something like this:

      $cat f1 > C
      Clipboard updated.
      $grep bar C | wc -l
      0
      $sed s/foo/bar/g <C >C
      Clipboard updated.
      $grep bar C
      candybars are my favorite bard.
      $undo C
      Clipboard rolled back
      $grep foo C
      candyfoos are my favorite food.

      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
    3. Re:Building a better shell by arevos · · Score: 1
      I don't think that "C" style syntax is really ideal for a human interface, anyway. The expression syntax is complex, and the control structures aren't well suited to the shell. Have a look at languages like icon, where control flow is largely handled by generators.

      Bear in mind the original goal of this shell was to be faster for power-users, who'd probably know a "C" style syntax. Certainly it's more consistant than Bash usually is.

      However, I will look into icon :) - my shell's pretty modular, so it shouldn't be hard to change the syntax if needs be. I've rewritten the parser's BNFs several times over.

      As for concatenation, I'd suggest using adjacency or "+". makes the lexer simpler.

      I thought of that, but there is method to my madness. In effect, one of the main problems is that I wanted to maintain compatability with environmental variables, which are stored as strings.

      In my shell, scalars are stored internally as a number or a string, but because I wanted to maintain backwards compatability, all the environmental variables will initially be stored only as strings.

      So, what I wanted is something like:
      bash$ export foo=10
      bash$ export bar=5
      bash$ ./myshell
      myshell$ echo $foo
      10
      myshell$ echo (10 + $foo)
      20
      myshell$ echo ($bar . " bottles")
      5 bottles
      So far so good, right? The "." operator could be replaced with a "+", as you can overload the operator based on the type of the other argument.

      But what about:
      myshell$ echo ($foo + $bar)
      15
      myshell$ echo ($foo . $bar)
      105
      Because no numerical information can be carried across to environmental variables, you either have to accept loss of information, or use a separate concatenation operator. Or try and guess the type of the variable. And I've never been too fond of letting computers guess what I want :)
    4. Re:Building a better shell by arevos · · Score: 1

      Well, as it stands a GUI editor would be outside the aims of the project. Hard to use a GUI over a SSH session :)

      The clipboard idea is interesting though. Once I've got the major things polished off (there are a few rushed bits I need to replace), that could be possible to do. I don't see any problems with having something like that, at least.

    5. Re:Building a better shell by argent · · Score: 1

      1. Have you looked at 'rc'?

      2. I think you're trying to put in too much syntax. I used to do a lot of stuff in DCL, and after a while I got really tired of having the syntax get in the way when I just wanted to run programs.

      myshell$ echo $foo
      10
      myshell$ echo (10 + $foo)
      20
      myshell$ echo (10 $foo)
      1010

      Have a look at awk, it uses adjacency for concatenation this way.

      myshell$ echo ($foo + $bar)
      15
      myshell$ echo ("$foo" + "$bar")
      105

      Alternatively, use quotes to force stringification.

    6. Re:Building a better shell by argent · · Score: 1

      Anyway, I was thinking more of this:

      myshell$ (1 .. 10)
      1 2 3 4 5 6 7 8 9 10
      myshell$ for(i in 1..10) { echo $i }
      1
      2 ...

      myshell$ for(i in {grep '^ma' /usr/dict/words}) { ... }
      myshell$ grep '^ma' /usr/dict/words | for (i) { something $i }

      Less syntax! More flexibility!

    7. Re:Building a better shell by argent · · Score: 1

      Ooh, yu could use something that SPSS used to do. It saved *all* outputs, and you could use any old output. This has the advantage that you often want to go back and redo stuff, and you shouldn't need to consciously choose what to clip:

      1 $ cat f1 ...
      2 $ grep bar %1 | wc -l
      0
      3 $ sed s/foo/bar/g %1 >% # >% suppresses output, clip would be written anyway.
      4 $ grep bar #3
      candybars are my favorite bard
      5 $ grep foo #1
      candyfoos are my favorite food
      6 $ foo=#5
      7 $ echo $foo
      candyfoos are my favorite food

      This frees the user from having to keep track of what's a command and what's not. There are obvious implementation issues, but they're not that hard... the shell would need to run the programs under a pty, and turn off the logging if the pty changed the terminal mode, and...

      8 $ sleep 30 ; echo foo &
      [1] sleep...
      9 $ echo %8
      10 $ wait
      [1] sleep... terminated
      11 $ echo %8
      foo
      12 $

    8. Re:Building a better shell by argent · · Score: 1

      Oh, and if the shell is runing programs under a pty, it could implement global universal command line editing without having to have every damn program linked with incompatible readline variants.

    9. Re:Building a better shell by arevos · · Score: 1
      myshell$ (1 .. 10)
      1 2 3 4 5 6 7 8 9 10
      myshell$ for(i in 1..10) { echo $i }
      1
      2 ...


      My shell isn't too different. Only because I was pressed for time to make the presentation, it was easier to make ":" the operator, instead of "..". It doesn't use the "in" operator though.
      myshell$ echo (1:10)
      1 2 3 4 5 6 7 8 9 10
      myshell$ for $i (1:10) { echo $i }
      1
      2 ...
      The "i in" part I don't like. If you're referring to a scalar, you should really refer to it with a $ on the front, to keep the syntax constant. The "in" was dropped to give the user less to write. I am aiming for powerusers, after all :)

      myshell$ for(i in {grep '^ma' /usr/dict/words}) { ... }
      myshell$ grep '^ma' /usr/dict/words | for (i) { something $i }


      These two examples are interesting...

      The {} in your example act in the opposite way to the () in my shell. Essencially:
      myshell$ ls | head -1
      firstfile.txt
      myshell$ echo 2 - 1
      2 - 1
      myshell$ echo (2 - 1)
      1
      But the {} are a good idea... I'll have to draft up a better formal grammar though, to avoid getting all tangled.
    10. Re:Building a better shell by arevos · · Score: 1

      1. Have you looked at 'rc'?

      Ummmm... No?

      2. I think you're trying to put in too much syntax. I used to do a lot of stuff in DCL, and after a while I got really tired of having the syntax get in the way when I just wanted to run programs.

      myshell$ echo $foo
      10
      myshell$ echo (10 + $foo)
      20
      myshell$ echo (10 $foo)
      1010


      Hmm... Looks good... Might use that :)

      Only I replace the ugly hack that is my lexer with a nice, simple, finite state automata model, then I can fiddle about with the language all I want.

      Happily, the parser just builds up a parse tree out of a set of objects inheriting from Parser::Node. Each node has a set of children, and a run() method, so the actual scripting code is separate from the syntax. So any syntax changes are more or less trivial :)

    11. Re:Building a better shell by argent · · Score: 1

      If you're referring to a scalar, you should really refer to it with a $ on the front, to keep the syntax constant.

      In shell syntax, $ is an operator rather than almost-but-not-quite part of the name as it is in Perl. It means "replace this with its value". When you're operating on the symbol rather than its value, you're using it as an indirect reference.

      Perl 6 is changing the way it handles scalars and arrays and things, by the way.

      I think I may have mislead you the way I was using {}. The {} operator is a block, inside it is a list of shell commands, that way you get "C" nesting for free, and you get to replace the `backquote` syntax for command substitution for something syntactically cleaner.

      The "in" makes it easier to read, but it's not important. You could take the next step and get rid of control structure keywords altogether, and make them modifiers on blocks:

      i=(1:10) {
      echo $i
      }

      ($i==10) {
      echo "i is 10"
      }

      That is:

      [var=](generator) { block }

      And make boolean expressions generate either an empty list or a list of "true". Kind of lispish.

    12. Re:Building a better shell by argent · · Score: 1

      "rc" is the shell that Kernighan, Pike, Ritchie, and the rest developed for Plan 9. It's like a cleaned up and simplified descendent of Bourne with a piquant hint of smalltalk.

      Ah, I see why you're making it smell a bit like Perl, you're implementing it in Perl. You probably want to look at the languages Perl was intended to replace, like awk.

      As for the syntax, I think that if the syntax is too complex for a simple recursive descent parser it's probably too complex. Doesn't mean you have to implement it in one, but it's worthwhile keeping in mind.

      (don't mind me, I've just been hacking on cleaning languages down to the pure skeletons for 25 years)

    13. Re:Building a better shell by argent · · Score: 1

      AUGH. OK, I started writing that with # as the character, decided tat was a stupid conflict with comments, switched to %, but didn't catch all the #. read #1, #2, #3 as %1, %2, %3...

      The % is an operator, by the way, means 'replace with copy of clipboard with this name'.

      One thing that UNIX shell syntax doesn't handle well is the equivalent of

      rename *.cpp *.c++

      which would rename the corresponding files. One way to do this in UNIX would require a bit of cooperation from the application *and* an extra clipboard that means "the last wildcard":

      rename *.cpp %*.c++

      What this would pass to the application is

      rename this.cpp that.cpp - &.c++

      The '' options are almost certainly unused by any app, and & is unlikely to be in a real filename, so should produce an error from apps that can't handle it. Plus, actually typing it in deliberately in the shell would rquire heavy quoting... so new apps can handle the new metasyntax without worry that someone will enter it accidentally or sneak it through taint checking.

    14. Re:Building a better shell by arevos · · Score: 1

      "rc" is the shell that Kernighan, Pike, Ritchie, and the rest developed for Plan 9. It's like a cleaned up and simplified descendent of Bourne with a piquant hint of smalltalk.

      Oh! That sounds certainly very interesting. From what I've read, Plan 9 has done a lot of things right, at least from a structural point of view.

      Ah, I see why you're making it smell a bit like Perl, you're implementing it in Perl. You probably want to look at the languages Perl was intended to replace, like awk.

      Nice guess, but incorrect. Whilst Perl would have possibly been a more sensible solution, I'm constructing it in C++. Largely to show that I can; after all, this is a project where I'm meant to be showing off technical skill. I use readline for input, Bison to parse, and make heavy use of the STL. Documentation comes from doxygen. Unit testing is handled by CppUnit, a JUnit clone.

      In this case, I'm making use of C++ namespaces to make things neat and tidy. All the classes that build the parse tree are in the namespace "Parser".

      As for the syntax, I think that if the syntax is too complex for a simple recursive descent parser it's probably too complex. Doesn't mean you have to implement it in one, but it's worthwhile keeping in mind.

      (don't mind me, I've just been hacking on cleaning languages down to the pure skeletons for 25 years)


      I'll try to keep that in mind :). I'm a big fan of KISS and the virtue of Laziness in programming, so I'm inclined to agree.

    15. Re:Building a better shell by arevos · · Score: 1

      i=(1:10) {
      echo $i
      }

      ($i==10) {
      echo "i is 10"
      }

      That is:

      [var=](generator) { block }


      Hmm... That sounds pretty interesting too. I still prefer putting a $ in front of all my scalars, though. Call it personal preference, I guess.

      How would one distinguish between an "if" and a "while"? Or would while-loops not be in the language?

    16. Re:Building a better shell by argent · · Score: 1

      While loops are produced by appropriate generators. For example, instead of the common "program | while read i; do" you'd have this:

      $i=program { ... }

      I hadn't thought of the indeterminate case. An infinite generator and a test would do the trick:

      (1:) { test || break }

      Naeh, that gets mucky, and besides we already have "&&" and "||" for conditionals. So make the boolean an "infinite generator".

      ($i == 0) && { echo "i is zero" } # This is just a block, no generator

      ($i == 0) { some program; $i=something } # This is a generator

      (true) { echo "I'm forever blowing bubbles" } # So is this

      And you could have a "?? ::" operator:

      (i == 0) ?? echo zero :: echo nonzero

      Since it's a "??::" operator, there's there's always a "::" part... otherwise you'd use "&&", insert an implied ($?).

      (i == 0)
      ?? { echo "True!" } :: { echo "False!" }

      And this would be generalised:

      program args ...
      || fail

      program args ...
      ?? worked :: failed...

      program args ... ?? worked :: failed...

      Those last two are really the same result.

      And so, for the "while this program succeeds" loop:

      # Should the parens be needed here?
      (true) { program || break }

      And for your read loop:

      # Should this need to be $i=({program}) ?
      $i=program { something $i }

      Or:

      $i=({pipeline}) { something $i }

      Or:

      pipeline | $i=(read) { something $i }

      One language I implemented for control systems, back around '84, had no unlimited loop construct... if you needed to do something an indeterminate number of times you scheduled it on an event or timer. That way every function was guaranteed to terminate in a bounded time.

    17. Re:Building a better shell by arevos · · Score: 1
      (i == 0) ?? echo zero :: echo nonzero

      That could get ugly. What if one wanted to have an if-elseif-elseif-elseif-elseif-else?
      (i == 1) ??
      echo Option One ::
      (i == 2) ??
      echo Option Two ::
      (i == 3) &&
      echo Option Three
      Hm. Well, not too bad, I suppose...

      As for referencing executables, it would be nice if they could be refered to in a scalar context (which would output the return value) or a list context.
      myshell$ true && echo hello
      hello
      myshell$ $v = {true}
      myshell$ $v && echo hello
      hello
      myshell$ ($f = {ls}) {echo $f}
      file1
      file2
      file3
      However, I'm unure how best to modify the syntax to make this possible.

      Maybe I'll just go with:
      ls | ($i = read) {echo $i}
      Though I wonder if it's possible to make this any neater/smaller/easier to use.

      Maybe:
      ($i = stdin(ls)) {echo $i}
      That's a possibility.
    18. Re:Building a better shell by argent · · Score: 1

      I don't think there's a problem there, once you separate generators from conditionals:

      myshell$ $v = {true} # This assigns the null string to $v, the status of the expression is success

      myshell$ $v = {false} # This assigns the null string to $v, the status of the expression is failure

      myshell$ true
      myshell$ $v = $? # This assigns success (true in a conditional context, 0 in a text context) to $v

      myshell$ $v && echo hello
      hello

      With typed values, you could also do this:

      myshell$ program1 | program2 > /dev/null
      myshell$ $v=$?
      mysehll$ $v && echo true
      myshell$ echo $v
      1 0
      myshell$ $v[0] && echo true
      true

      The first program exited success, the second program exited failure: you can also check the individual steps in the pipeline.

      Also, collections would work as generators:

      myshell$ $i=($v) { $i && echo "Step $# passed" }
      Step 0 passed

      ($# is the 'line' number from the current stream)

    19. Re:Building a better shell by argent · · Score: 1

      Another possibility for generator syntax would be to use an anonymous variable as the current generator value if you don't provide one:

      ($v) { ($_) && echo "Step $# passed" }

      You still don't have a syntax problem distinguising status from value... the value of a program is what it sends to stdout, the status is the return value.

      ls && { echo "ls failed!" }

      ls { echo "file $# is $_" }

    20. Re:Building a better shell by argent · · Score: 1

      Correcting meself:

      ($v) && echo true # without the parens it's a string substitution.

      ($v[0]) && echo true # ditto

      $i=($v) { ($i) && echo "Step $# passed" } # ditto

    21. Re:Building a better shell by arevos · · Score: 1
      Hmm...

      Under such a syntax one wouldn't be able to use Awk-like concatenation.
      $foo = "Hello ";
      $i = $foo { echo World };
      Instead...
      $foo = "Hello ";
      $i = $foo . { echo World };
      At the moment it seems as if the syntax for assignment is uncomfortably similar to the syntax for generators.

      Whilst the idea of a keywordless syntax is interesting, it may be disadvantageous. Especially if the syntax gets confusing... I think.

      On the other hand, it might be doable.
    22. Re:Building a better shell by argent · · Score: 1

      Yah, seem to be going down the wrong path. How about this?

      { block } # just a block for grouping

      ${ block } # substitution

      stuff... >{ block } # generator, each line or value is in $_

      # example...
      $v=${grep blah blah} && {
      something
      ($v) >{
      -f /home/fraggle/$_ && echo $_
      } | something
      }

  40. Aunt Tillie? by nickos · · Score: 1

    ESR - Is that you?

    from http://slashdot.org/articles/03/06/08/1534249.shtm l?tid=99

    don.g writes "As reported by NTK, ESR appears to have embarked apon the process of recasting the Jargon File in his own image, adding terms like "Aunt Tillie" and "GhandiCon" that he dreamt up and seemingly no-one else uses, and various terms from (of all places) the warblogging community, where he is active. He's also updated the "Hacker Politics" page to be more closely aligned with his own views."

  41. Command line in the classroom by WerewolfOfVulcan · · Score: 1

    I teach C++ (and other goodies) at the local community college. The first night of class, I have the students ssh into a FreeBSD server and introduce them to the command line. They have cheat sheets for common commands both at the command line and in Jed. By the end of that first class, they've learned enough about FreeBSD to be able to write and compile code. I also give them instructions for using PuTTY to connect to the server from home, so they're working in the exact same environment that we were using in the classroom. I'm going to do the same thing for PHP and MySQL in the fall.

  42. True by FraggedSquid · · Score: 0

    At a previous employer we used to use CVS, when we moved to WinCVS, we found a number of problems as people thought they were doing x, but were not. WIth the command line you knew what you were asking the system to do, with the GUI it was not always obvious. Pencil and paper were, and still are, the best interface.

    --
    You don't need a lab to make mud.
  43. man has needed an index for years by Moderation+abuser · · Score: 1

    Unfortunately the FSF created info which does this but is otherwise utterly horrible, thereby making a sane solution more complex.

    There's no need for anything other than an HTML index to all of the manual pages with a summary of each command which is grabbed out of the first description paragraph of each page. help could be aliased to lynx on the command line or netscape if your DISPLAY is set.

    --
    Government of the people, by corporate executives, for corporate profits.
    1. Re:man has needed an index for years by minus9 · · Score: 1
      Try pinfo.

      It's a kind of lynx like interface to info, someone mentioned it recently and it made info usable for me (being a user of the other editor). It may already be installed, it was for me.

    2. Re:man has needed an index for years by Ashtead · · Score: 1
      Back in the day, there was this "permuted index" which appeared in the back of each of the volumes of the Reference manuals, in the paper version at least.

      I've got some old hp-ux ones here that are like that, and to some extent the information in them still applies for the most part; the difference tends to be that the same utilities under Linux have more parameters and options, but at least these books point in the right direction.

      Then again, even then there is the underlying assumption that you know what you are doing. Like knowing why you'd want to access the terminfo database or whatever...

      --
      SIGBUS @ NO-07.308
  44. Ease of Use by 16977 · · Score: 2, Interesting
    When I was a kid, my parents had a DOS-based computer with an early version of Quicken and a text editor that they used to write letters. Now they have a newer computer that runs Windows XP, but they still prefer to use the older programs.


    If I was to teach someone Linux, I would definitely teach the command line first. When there are just a few programs you use, it's easier to memorize their commands or keyboard shortcuts than it is to hunt through a menu each time. E.G., if all you want to do is play Pac-Man, you can either a) Hunt through the menus to launch gRustibus, wait for it to load, scroll through the gamelist until you find the right version of Pac-Man, and double-click the name, or b) type "xmame pacman" at the command promt.

    1. Re:Ease of Use by rjstanford · · Score: 1

      Of course, there's another side to that as well. Even ignoring the point that they could have made a shortcut.

      Let's say that they want to play the other version of pacman (you said that they had to look for the right one, after all). In the GUI, its exactly the same. With the command line, its:

      $xmame pacman2
      error: no such game
      $xmame pac-man
      error: no such game
      $xmame pm2
      error: no such game
      [muttering: "Screw it, I'll play the old one."]
      $xmame pacman

      So the command line can be good for people who don't know what they're doing - if they always want to do what they've done before. It doesn't encourage exploration - without progressing beyond the "newbie friendliness" you talk about.

      --
      You're special forces then? That's great! I just love your olympics!
  45. Perfect Example - ImageMagick by Gothmolly · · Score: 3, Informative

    bash$> for tif in `ls *.tif` ; do convert $tif -border 50 -bordercolor \#FFFFFF -quality 100 -scale 25% -resolution 96 `cat $tif | cut -f1 -d"."`.jpg ; done

    Put THAT in your GUI.

    --
    I want to delete my account but Slashdot doesn't allow it.
    1. Re:Perfect Example - ImageMagick by Anonymous Coward · · Score: 0
      Put THAT in your GUI.

      /me opens up GIMP

    2. Re:Perfect Example - ImageMagick by JRIsidore · · Score: 1

      `cat $tif | cut -f1 -d"."`.jpg

      I'd prefer echo instead of cat here, but maybe you like complicated filenames... ;)

      --
      :w!q
    3. Re:Perfect Example - ImageMagick by Yosho · · Score: 1

      Ok.

      Here's a Windows program called IrfanView. No Linux version, but I can verify that it runs very well in Wine. While it can't add borders around an image, it does have a graphical Batch Conversion/rename tool that can do everything else you've described.

      --
      Karma: Terrifying (mostly affected by atrocities you've committed)
    4. Re:Perfect Example - ImageMagick by ScRoNdO · · Score: 4, Informative

      Well, that would be better:

      for image in *.tif; do convert $image -border 50 -bordercolor \#FFFFFF -quality 100 -scale 25% -resolution 96 ${image%.tif}.jpg; done

      no need to do `ls *.tif`, and the bash specific construct ${image%.tif} removes a trailing occurence of the word '.tif' from the string $image

    5. Re:Perfect Example - ImageMagick by JKR · · Score: 2, Informative
      OK. Open Adobe ImageReady and create a history script of the actions that you want to perform, using a sample image. Note that because it's a GUI application you have immediate visual feedback, and will thus get it right. Now export that script as what Adobe call a "Droplet", setting default options for output file naming, directories etc. Now, using your file explorer, drag and drop the files you want to convert onto the droplet.

      Your point, caller?

      Jon.

    6. Re:Perfect Example - ImageMagick by Carthag · · Score: 2, Funny

      Something like this (v. quickly done, so might not be exactly what you're doing)

    7. Re:Perfect Example - ImageMagick by SalsaDoom · · Score: 0, Insightful

      pbbt, that doesn't even come close to comparing. It took him two lines, and you a paragraph to describe what he did. Lets see, he types in a few commands (on a single line yet) and its done.

      Now, I've never used ImageReady.. so if I'm off a bit forgive me.

      You..
      * create a history script ... this doesn't require the keyboard does it?
      * need to use a sample image... seems like a kludge.
      * Export the script to something called a droplet.. instead of use it directly like imagemagick.
      * Set default options for file naming.
      * Now, you switch from ImageReady to explorer, drag the files into the droplet.

      and all of this seems easier then just giving imagemagick a handful of commands? I bet the original poster could of done what he did fifty times in the space of time that you did what he did once.

      I'm at all convinced.

      --SD

      --
      "Computers will never truly be free until the last windows user is strangled with the entrails of the last mac user."
    8. Re:Perfect Example - ImageMagick by Jisakiel · · Score: 1

      Select all the files (maybe order by type) -> right click (to "do-things") -> Resize pictures.

      Hey, the powertoys are not actually that bad. At least you dont have to remember syntax for three or four commands...

    9. Re:Perfect Example - ImageMagick by dr00g911 · · Score: 1

      K, now I've got a droplet on my desktop that does it courtesy of Photoshop, which I created with visual feedback, assuring me that I got it right?

      Oh, and I can drag an entire folder of images on top of it with a single click.

      (Aside: does Gimp do droplets yet?)

      So...

      a) What was your point, exactly? I can make a droplet for the shell script as well (Mac guy here) -- but the Photoshop route is, well, more intuitive for people who have to, well, process graphics and stuff.

      b) In the GUI I wouldn't have to worry about typing it correctly the first time, I'd just *do* the stuff in Photoshop and save the recorded action as a droplet.

      Not a slag on Imagemagick. IM on shared web hosts has helped me do some crazy shit. But to say that a CLI app or shell script is superior to editing graphics visually with feedback is just plain nuts.

    10. Re:Perfect Example - ImageMagick by filmsmith · · Score: 1

      You fail to see the long term benefits. What will take bash$> for tif in `ls *.tif` ; do convert $tif -border 50 -bordercolor \#FFFFFF -quality 100 -scale 25% -resolution 96 `cat $tif | cut -f1 -d"."`.jpg for every conversion job will, on the GUI side, now require only

      1) Select file(s)
      2) Drag
      3) Drop

      That's not to say that there aren't still advantages to doing it through bash.

      I like droplets. I've got a shitload. I can drop 60 image files on a droplet of my choice, get to work in another program and pick up the finished files, properly named, when they're done and I'm ready.

      I'd say they both have their pluses and minuses.

      fs

      p.s. As a plus, my droplets can do stuff like add drop-shadows, add text to each one, gaussean blur, text effects, bevel and emboss, etc., etc.

    11. Re:Perfect Example - ImageMagick by JCholewa · · Score: 1

      > You fail to see the long term benefits. What will take bash$> for tif in
      > `ls *.tif` ; do convert $tif -border 50 -bordercolor \#FFFFFF -quality 100
      > -scale 25% -resolution 96 `cat $tif | cut -f1 -d"."`.jpg for every conversion job will,
      > on the GUI side, now require only
      > 1) Select file(s)
      > 2) Drag
      > 3) Drop

      I should point out that you could have the same basic functionality on the command line, by taking the command line from before and pasting an alias for it into the user's startup file. And you could then type ' ' whenever you want to do the conversion.

      But yeah, there are advantages to using the gui sometimes. :)

      --
      -JC
      coder (even gui stuff!)
      http://www.jc-news.com/parse.cgi?coding/main

  46. Ack! by Anonymous Coward · · Score: 0

    I have used the command line. I like it for various tasks, but I hate the implication that it is a better interface for newbies. With a GUI, I can see all the options laid out in a manner that someone thought was intuitive. With a command line, I have to read through several pages of documentation before I get the answer I need.

    For example, I want to set a static IP address without a GUI and with a GUI. On the GUI machine, I start looking in the control panel, it makes sense. I see something with a name that makes sense, network configuration or something. I look through each menu until I find an option that might be what I want. I finally find a panel that might be what I want and I try it.

    With the command line... where do I start? I have to do a search in the man pages for 'static IP' and weed out all the hits that are irrelavant, like looking through a bad search engine.

    GUI interfaces allow self-discovery and trial and error much easier and quicker than command-line interfaces.

    'Course, I might have the advantage of understanding how computers work in general, and just need to navigate the particulars of a several OSes. These newbies may not even understand what I mean by IP address or DHCP in a general sense.

    1. Re:Ack! by Anonymous Coward · · Score: 0

      i think that's the whole point here. they can't be compared, it's 2 different things.
      someone who had never seen a command prompt before and never used a computer before would not know where to start - how could they? that's a given.

      i started in a unix environment not knowing anything at all (although i had dos/win experience). i had to research how to connect to the box to start with (first unix box ever used was remote) and then i had to read up how to do anything once i got there.

      people are only going to take the time to learn something if they want to or have some other reason for doing it.

  47. different strokes for different folks by Anonymous Coward · · Score: 0

    i think really there will always be people that find it easier to learn and use a computer via a gui and don't want to know anything else about it if they don't have to, and others who will want to know more and learn commands and find it easier to learn and more interesting that way.

    what you *want* to learn and are attracted to will be the easiest for you.

  48. Aunt Tille needs a different appliance by defwu · · Score: 1

    Is it because of cost effectiveness that all computers are general purpose?
    Seriously, all my parents really need is a (fairly) dumb terminal to do three things : E-Mail, Web, Word processing. Everything else is extraneous. As they have gotten more comfortable, more input devices have been handy (scanner, camera), but only to support one of the three main apps (Email and word processing). They never had a use for a command line. What they have a need for is three large buttons : Email, web, Word Processing.
    And maybe a big shiny red "dont push" button just for fun.

    --
    If at first you don't succeed, redefine 'success'
  49. Good UI vs. bad UI, not GUI vs CLI... by dpbsmith · · Score: 5, Insightful

    The pity is that GUI usability peaked sometime in the late eighties and has declined since then, as the rise of "computer literacy" has created an expectation that users will master complex UI's, and the rise in computing power has removed any barriers to marketing-driven featuritis.

    The most telling point was the discussion of "discoverability." "Discoverable: The interface must, from first switch on, provide a clear direction for a new user to go. At each stage it should encourage experimentation while providing adequate notice of important or key features."

    In the 1980s, GUIs were intentionally designed to facilitate discoverability were far more "discoverable" than CLIs of the day. They were also intended to be forgiving. The user was supposed to feel empowered to try things, confident that there was always an "undo" to bring them back. On the Mac in the 1980s, "Undo" was far more prevalent and worked far more consistently than in today's software, in which many operations commit you to something whose effects you may not understand.

    As for "dialog," UI designers understood that well. Why do you suppose that what are now called "screens" were once called "dialog boxes?"

    What the article is really saying is not that CLIs are better than GUIs, but that a) modern UIs are not catering to the needs of the average user, and that b) modern UIs have gotten so badly designed, cluttered, and complex that they have become less usable to beginners than CLIsbecause GUIs have deteriorated, while CLIs have benefitted from benign neglect.

    1. Re:Good UI vs. bad UI, not GUI vs CLI... by booch · · Score: 1

      I don't find any point in trying to claim that the CLI or the GUI is better than the other. They both have their uses and their strong points. Some things are better done with a GUI, some with a CLI. Some people are more comfortable with the CLI, some people just don't think that way.

      One of the best things about Linux (and Mac OS X, and AmigaOS back in the day) is that it comes with both. You can choose which you want to use for a given purpose. Really, if you think about computer programs as tools, it's good to have as wide a variety of tools as possible. In fact, I think we'll eventually end up with CLI, GUI, voice-command, gesture, touch-screen, some sort of hand-held input device, and maybe even brainwave-based biofeedback.

      I find the GUI easier for simple tasks that don't need to be repeated very often. But try doing something 1000 times in a typical GUI application. For repetitive tasks, a CLI script is your best bet. It's hard to script or automate most GUI apps. GUIs are also better at spatial tasks, such as paint programs and CAD. Text based applications are best for descriptive tasks, where the quickest way to get things done is by describing it. (I suppose this could be thought of as a programming task, although the language may be field-specific.)

      I like many Windows applications. But one of my biggest complaints about Windows is that if it can't be done in the GUI, it can't be done. On Linux, I can just drop back to the CLI, or some text configuration file, or some scripting language, and do it "by hand".

      --
      Software sucks. Open Source sucks less.
    2. Re:Good UI vs. bad UI, not GUI vs CLI... by Blakey+Rat · · Score: 1

      Two points:

      1) Contrary to popular (on this site, at least) belief, the command prompt in Windows 2000 and XP is just as powerful and scriptable as Bash. (Remember, batch files still work just fine and Microsoft adds new commands to it every revision.)

      2) MacOS is highly scriptable without leaving the GUI using AppleScript. AppleScript can 'record' the actions taken by applications like a macro and produce a script automatically. (Of course, you can also write a script manually, or edit a recorded script to make it more useful.) Given, AppleScript *is* slow, but it works.

    3. Re:Good UI vs. bad UI, not GUI vs CLI... by booch · · Score: 1

      I'm going to have to dispute your first point. I have an MCSE (NT 4) and I don't recall having been taught anything about using the CLI in Windows. Just turning on filename completion is a nearly undocumented registry hack. There is not the wide variety of control statements in DOS BAT files as in Borne shell or bash. There is not a wide variety of text processing filters to manipulate the output. If BAT files were sufficient, why would Microsoft have bothered to come out with KiXtart?

      I do have to admit that I was impressed with the number of commands that were added in Windows Server 2003. It made it look like Microsoft was starting to realize that scripting is necessary. And it sure is a heck of a lot easier to SSH into a box than pull up a Windows Terminal session.

      As for AppleScript, it sounds like Apple has its act together. I've been investigating GUI scriptability on Linux recently. The only decent thing I found was DCOP, which is enabled on most KDE applications. There's Qt Scripting, but it's a new thing and not widely deployed yet. The Amiga used to have ARexx, which allowed you to create scripts to manipulate running GUI apps. Very handy.

      --
      Software sucks. Open Source sucks less.
    4. Re:Good UI vs. bad UI, not GUI vs CLI... by wfberg · · Score: 1

      Just turning on filename completion is a nearly undocumented registry hack.

      In NT4, but not in 2k/xp :
      start|run cmd
      click on the icon (or rightclick on cmd.exe's icon in the taskbar) defaults, options, autocomplete is right there, along with quick edit (xterm like copy+pasting).

      Installing cygwin+bash is never a bad idea though.

      --
      SCO employee? Check out the bounty
  50. My 88 year old mother in law and OS X by seven+of+five · · Score: 1

    My mother in law bought a green imac when they came out. She doesn't have much time to use it as she's very active socially, does housework etc. It had OS9 when she got it. She had trouble with learning it, learning to use the mouse, the few programs she was interested in. I eventually convinced her to dump AOL - too much extra baggage to deal with. Then someone else in the family had her upgrade to OSX. She had to learn almost everything from scratch again. She's thinking very seriously about getting rid of the iMac. A very frustrating experience... I feel embarassed that the so-called hi tech industry couldn't deliver something better. Too bad those little email appliances didn't catch on.... did they?

    1. Re:My 88 year old mother in law and OS X by dave420 · · Score: 1

      Check out this Amstrad emailer thing. Amstrad are making a profit on them over here (UK). Small, really cheap, really simple computers built for text messaging, web, email, address book, Spectrum emulator (WOO!), faxing, answerphone, etc. Perfect for people who don't want a PC, for whatever reason.

  51. tasks by Anonymous Coward · · Score: 1, Insightful

    A command line is easier for some tasks. It really depends what you want the newbie to do.

    If you ask her to copy all .mcx files from /mnt/cdrom to /scr/bea/tomes then the command line will be much easier.

    If instead you ask the newbie to check her email then write a letter to the head office then a gui will be much better.

    Matching the interface to the task is important, and most new users go for tasks that are easier with a gui.

    Of course, the article is a bunch of nonsense where an EE PhD student attempts to prove based on theories that he made up that a command line is the most natural interface. His total disconnect from reality is obvious. Even though he's talking about something outside of his field, at least his academic tendencies should have caused him to look at related work and realize that he's spouting nonsense. Instead he (to put it academically) formed a nonsensical hypothesis based on complete ignorance of the field, logically extended it to encompass a lot more stuff. He created an experiment to prove his correctness; a key point included introducing computer newbies to a gui using only a keyboard for input.

    This is academically dishonest; I might as well note that I've never crashed a car while drinking and extend that to say drinking doesn't change the likelihood of car crashes. Then I could put a car on a road and get a drunk person to turn it on and drive thirty feet straight forward. Seeing them complete that without crashing, I could declare that drunk driving is not dangerous. Based on his piece here, Dick Wareham would buy it.

  52. This is a joke, right? by marvin_pa · · Score: 2, Funny

    I see a sysadmin speaking. Nobody else in their right mind would dare to call the command line a user interface.

  53. There usually are examples... Right at the bottom by Moderation+abuser · · Score: 0

    Where you would never think to look.

    --
    Government of the people, by corporate executives, for corporate profits.
  54. "now bloddy likely"? by Anonymous Coward · · Score: 0

    Has something changed that has increased the likelyhood of this happening?

  55. Bah! Poor article... by tilleyrw · · Score: 1

    "To master modern GUIs, one must recall the operation, layout and relation
    to each other of hundreds,if not thousands, of such panels. The hardest skill
    being recalling or discovering the correct sequence of operations on one
    control panel to access a control panel relating to a desired operation."

    That is the purpose of Human Interface Guidelines!

    Human Interface Guidelines exist to remove the need to know anything about a GUI.
    The Apple Macintosh is a prime example of this and is the inspiration for Windows, Gnome, KDE, etc.

    HIG allow a user to simply learn how a system works instead of learning what to click.

    Visiting the site AskTog will help any reader learn about the correct construction of a GUI.
    Yes, it is a science and metrics can be created for ease-of-use.

    Pardon the rant, but claiming that the command line is unequivably the best interface for users
    is on par with claiming that the horse-and-buggy is the safest and most reliable form of
    transportation. It can be for some (Mennonites, Amish, etc.) but not for all.

    No, I did not read the entire article -- after reading that sentence above about the difficulty
    of GUIs, I jumped to the conclusion that the author was a moron. I shall now revisit the article
    and possibly form a new opinion.

    --
    This post encoded with ROT26. If you can read it, you've violated the DMCA. Handcuffs please, sergeant.
  56. CLI vs. Which GUI? by JBMcB · · Score: 1

    What GUI is he comparing the CLI to? Windoze? MacOS? BeOS? OS/2? IRIX? GNOME/KDE/Motif/enlightenment/CDE/XFCE?

    I find I use the CLI along with the GUI about evenly. Looking at huge lists of heterogenous files is much nicer in a GUI, where icons give meta-information about what type of file it is, and you can scan lots of long filenames quickly. If I'm moving loads of files around, or doing quirky sorts then I fire up Cygwin, or a bash terminal in MacOS X.

    I dare anyone to say page layout is better in text-mode than in a nice WYSIWIG pacakge. Unless you're a TeX freak, doing very complex formatting is fantastically easy in Quark or PageMaker.

    I also haven't seen a really powerful CLI photo editor. Maybe an aalib frontend for the gimp? :)

    --
    My Other Computer Is A Data General Nova III.
  57. MH instead of mail by six809 · · Score: 1
    Their familiarity with pico lead me to attempt to use pine as their email client. This went well although users complained that they had lost some of the discussion ability. They asked if there was some program that could read mail "by discussion". Time constraints meant I avoided attempting to teach them old-school Unix mail but I suggested they read the man page.

    The author might have found the 'MH' suite (or nmh, its modern successor) filled this role amply. I love it myself because I don't have to dedicate an xterm to running a mail client. If xbiff beeps at me, I can just 'inc' as the next thing I do in whichever terminal I happen to be using at the time.

  58. Interesting range of responses by bryan1945 · · Score: 1

    I've seen "make 'help foobar' a link to 'man foobar'" to "(paraphrase) all these digital devices I know use NEED a GUI rather than CLI".

    Of course I'm biased, I grew up on an Apple 2, then Macs till '94, but then worked on an Amiga from '94 until '96, and then got totally confused by Win95 when I first saw it. Yeah, somehow I missed the start of MS dominance.

    Getting back to the point, I love using the CLI, execpt when I need to do something but can't figure out how to do it. I know "man" and "/?" but what happens if my question isn't covered by these options? I have found Windows help GUI usefull many times, basically because the weird question I have is covered somewhere but buried somewhere else, but I could back and forth till I found it. Yes, you could also do this with the CLI, but you lose the graphical references, which people seem to like since we are generally visually oriented.

    There is also a point for the GUI, also. It tends to allow "newbies" the freedom to explore stuff more easily than the CLI. Left click this, right click this, double click that, see what happens; usually this will not destroy anything without a prompt. This is also true with a good CLI, but if I do rm -r *.* on some systems.... poof!

    Now, why can't importing your digicam be as easy as typing "import movies from digicam" or "download from cam" or "whatever the heck ya want ta call it, yo"? Because on the CLI you need specificity, for the good or the bad. You could give options, but for the most part that would reduce the simplicity of the CLI, and at that point you might as well just have a GUI.

    Whew! Giving all that, I am not a GUI designer or a CLI expert, just giving my (probably limited in this group's experiences) views, and should be taken with 12-15 grains of salt.

    --
    Vote monkeys into Congress. They are cheaper and more trustworthy.
  59. Obligatory IBM Model M link by oneiros27 · · Score: 5, Informative
    The Model M is still being made, under a different name, but you can now get them with a 'windows' key, or even in black.
    http://www.pckeyboard.com/customizer.html
    --
    Build it, and they will come^Hplain.
    1. Re:Obligatory IBM Model M link by chazwurth · · Score: 1

      For $49 bucks, I say: not worth it. I can go to ebay, type in 'clicky keyboard', and take my pick of dozens of $20-ish real Model M's. Who cares if they're used, it's almost impossible to distroy the things. That's the whole point of 'em. Well, that and the fact that when you type fast enough your house-mates think you're firing off automatic weapons in your room...

      --
      The plural of 'anecdote' is not 'data'. --Dan Kaminsky
    2. Re:Obligatory IBM Model M link by wastaz · · Score: 1

      Sometimes I wish that I had modpoints.

      I've been screaming and shouting my throat off for a keyboard that's like the old good ones. The new ones just won't cut it.

    3. Re:Obligatory IBM Model M link by mvdw · · Score: 1

      I call "bullshit" on your indestructability of the Model M keyboard. I have broken one. Luckily I have a stash of about half a dozen for just such an eventuality.

      Admittedly I had to bash it pretty hard to break it, but broke it I did. Stuck some keys down; I haven't yet investigated whether it is repairable.

    4. Re:Obligatory IBM Model M link by chazwurth · · Score: 1

      Well, I did say it's almost impossible to destroy them. The plastic will crack, and will surely melt at high enough temperatures. But under conditions keyboards are used in? What'd you do, drop a safe on the thing? :)

      --
      The plural of 'anecdote' is not 'data'. --Dan Kaminsky
    5. Re:Obligatory IBM Model M link by mvdw · · Score: 1

      Just bashed the keys - really hard. I was pissed off at something or other and vented my frustration at the keyboard.

      (Slightly) back on topic - I did the same with a mouse when I couldn't get outlook to do what I wanted. Now *there* is an example of an application that is convoluted in the extreme; I can't believe how hard it is to use!

  60. I tried RTFA, but... by Anonymous Coward · · Score: 0

    All these people felt that they were being left behind by IT and that there was some percieved

    ...it's i before e EXCEPT after c, dumbass!

    Stuff like that makes me want to stop reading the f****** article and I did. Learn to write or use the f****** spell check.

  61. So, which was it? by Anonymous Coward · · Score: 0

    Were you introducing Windows-Oriented users to Linux, or were you teaching support engineers on Linux-based telephony products? Color me suprised that you were teaching guys how to write scripts to handle log files, and they went ahead and wrote scripts to handle log files.

    1. Re:So, which was it? by pandrijeczko · · Score: 1
      They are support guys who have Windows 2000 laptops and are used to working on those.

      They have little or no UNIX experience but are expected to support a telephony application that has been migrated to Linux server platforms.

      Prior to the migration, they worked purely within the telephony application but now have to find their way around Linux including checking system logs, configuring TCP/IP and interfaces, apply patches, etc. They also need to pull off information from multiple files to mail off to software developers etc.

      My course didn't teach them to shell-script. I taught them where files were and gave them a lot of commands for text manipulation, about as much as you can expect to deliver in a 2-day Linux introduction.

      I was trying to illustrate that these guys are not even knowledgeable with scripting, even at the DOS shell prompt, but given particular things they needed to achieve, they were able to use the commands and rules I gave them to create their own quite powerful programs.

      For example, I'd never even mentioned about arguments to scripts ($1, $2, etc.) but they'd worked those out for themselves within a couple of weeks and wrote scripts to manipulate those also along with some simple error checking.

      The point of my post, which you seem to have missed, was that the command line is a powerful tool for automation that is not difficult to start using to great effect if you have a particular problem to solve and know a few commands.

      --
      Gentoo Linux - another day, another USE flag.
    2. Re:So, which was it? by Anonymous Coward · · Score: 0

      It's a little offtopic, but cmd.exe's for /f command is quite useful for extracting fields from records, just like awk. Unix is no longer special in that area.

  62. Interesting, but untrue? by Lewisham · · Score: 3, Insightful

    This is certainly a very interesting idea, and has good points to it. I would hazard, however, that the CLI is most definitely not the way to go to get new users up and running with computers. The author is almost there in his article, but doesn't seem to make the leap...

    Using the example that the author used, he says Tilly multitasks, but doesn't do more than one thing at once. When she wants to leave something for later, she puts it to one side. This is an almost exact description of minimizing windows. It isn't suspending programs, or moving them into the background, like UNIX. It's just putting what you're doing out of the way for the moment.

    Tilly goes to the grocers and tells him what she wants. Why not point at what you want? I want my mail, click the big envelope. I want to type something, click the Word icon.

    It's arguable that some of the easiest programs that run in a terminal are those that are like GUIs, just without the mouse. Pine is a perfect example. It has labelled buttons at the bottom, except you interact with them using your keyboard instead.

    GUIs are still the best way of getting general users interacting with computers, it's just certain elements of GUI design that scares them witless. Working on a helpdesk for my University residential network, I reguarly hear what could almost be called fear in a voice when a dialog box or something pops up that I didn't expect, and warn the user was going to happen. GUI design is very imperitive. Boxes appear saying "DEAL WITH ME NOW" and giving themselves the utmost importance. This is what scares people. They think that because something took the time to alarm them in such a massive way, something amazingly bad must be happening. These windows often pop-up from applications that aren't being worked with. By preventing these, everyone would be a lot happier. The Mozilla new mail notification is an absolutely excellent way of telling the user something is happening, it pops up in the corner, says there's some mail, and disappears. It doesn't ding. It doesn't grab focus. It doesn't appear in the middle. It just gives you a quiet hint.

    GUIs are also far too ready to boot up programs of their own accord. When users get notifications from something they didn't run explicitly, they get the fear. CLI doesn't do that, it only shows you output from things you've done.

    The author says that users are scared to click buttons, in case of something going wrong. But they feel that a CLI can't do any harm. Users *do* want to point and click their way around buttons, and GUIs do complain of something wrong in essentially the same way as CLIs. Maybe it's because they have no visual feedback when they type sudo rm -rf / ? I think it's just a residual fear from the constant shouting that current GUIs do.

    GUIs are currently too noisy, and the essential quietness are what these users are responding to. I would hazard that as soon as the users want to do something more difficult (that would need a pipe), they'll be desparate for a GUI interface instead.

  63. NOT about GUI vs CLI by Karem+Lore · · Score: 1
    I read people who like GUI's, people who like CLI. They both have their place in this world. I like GUI for things that require GUIs, such as Photo editing, Word Processing (even Wordperfect 5.1 has a GUI) etc. However, when it comes to Admin I'll use the CLI any day of the week. Why? Because it is direct. I don't need to go Start-Control-Panel-Administrative Tools-Computer Management-Domain Users...Right click, change password...No, all I need to do is passwd user as root.

    Now, why do people not like CLI, especially newbies? Because it isn't tolerant. If I do something wrong in Windows, I'll get an error message (usually cryptic) and the chance to try again with a click or two. On a CLI, when I have spent 5 minutes writing out a command to find that I get one character wrong, I get an error (usually with a little helpful advice) and have to re-type (or use bash and edit) the line. Windows is a little more tolerant than CLI, but CLI is the powerhorse...Once you learn to use it correctly, you never go back

    Another poster suggested having a little paper-clip on the command line...If I EVER see that I will hurl my monitor from the top of a really tall building, followed by a deletion of the OS in question (in the meantime I have bought a new LCD screen to replace my broken one, good excuse) that does not have an in-yer-face help that is about as helpful as a plane is to a bird.

    --
    When all is said and done, nothing changes...
  64. more bullshit by Anonymous Coward · · Score: 0

    totally stupid article, as if people are going to start carrying a unix handbook to remember what god damn flags they need to put on a command.

    what about the varying flavors and differences that exist there?

    give it up, GUI is way easier for normal people.

    1. Re:more bullshit by pandrijeczko · · Score: 1
      If those people are using UNIX commands, they're on a UNIX system.

      If they're on a Unix system, they can type "man [command]" and get all the flags they need.

      The man pages for a "flavour" will give appropriate switches for that flavour.

      I fail to see why there's a need to carry round a UNIX handbook...

      --
      Gentoo Linux - another day, another USE flag.
    2. Re:more bullshit by Anonymous Coward · · Score: 0

      give it up, GUI is way easier for normal people.

      no argument there!

      if you're happy being normal then great! i'm happy running linux.

      problem solved ;-)

  65. CLI vs GUI Ease of Use by G4from128k · · Score: 4, Interesting

    Having done everything from assembly language programing for embedded systems to UNIX CLI (Command Line Interface) to Macintosh, I find that CLI is distinctly inferior to GUI (Graphical User Interface) for all but a few tasks. I challenge CLI users to do any form of word processing from a shell prompt. Even the most hard-core of them will resort to vi or emacs which use a primitive pseudo-GUI (and yes you can create and I have used a pure CLI text editor, but it is extremely painful). I don't want to even think about trying to replicate Photoshop with a CLI.

    CLI = Dialog? The article mentions the notion of CLI as a dialog. But this is a misleading metaphor because so many CLI commands create invisible effects. You tell the computer to do something and all that returns (in most cases) is a command prompt. At best its like teaching someone to to do a job while speaking through a door. You give a command to do something (e.g., move a file from directory to another) and then you have to give a command to see the results (ls).

    Discoverability: GUIs also provides visibility on to the set of available commands and functions. By browsing through the menus (which are usually nicely organized), you can learn the functions of an application. In contrast, a CLI-only machines provides no obvious way to learn about commands that you did not know existed -- at best you can access an alphabet soup of cryptic vowelless cmmnd names and then access the man page on each command. Therefore, GUI applications tend to be self-documenting, CLI commands require that you first know of the existence of the command and then you must read the man pages (grepping the man pages sometimes works if you know the jargon for what you are looking for).

    Undo command: Most well-behaved GUI applications further support user learning via experimentation by having an undo command (and a revert command). CLIs tend to be irrevocable with no possibility for undoing inadvertent damage by a novice user (short of reloading the entire machine from a backup). Its no wonder *nix people get upset at the thought of novices on computers. But this lack of an "undo" is the fault of *nix CLI (it could easily be remedied with automatic file version tracking and journalling).

    GUI is the superset of a CLI: Some people complain that GUIs take too long and I agree with them. CLI does offer a faster interface for experienced users. Yet a good GUI offers keyboard shortcuts that let experienced users invoke commands from the keyboard. While it is easy to have a keyboard shortcut available and shown in a mouse-oriented graphical GUI menu, it is hard to have a graphical menu shortcut in a keyboard-oriented CLI. With a GUI that shows the shortcuts in the menus, the user can learn shortcuts as they use the machine. Thus, I would argue, a GUI is the superset of a CLI.

    Direct Manipulation: And CLI's inferiority is not just a matter of the learning curve (although that is a big disadvantage of CLI). For some tasks, a direct-manipulation WYSIWYG GUI is vastly superior. I challenge *nix people to build a CLI-only version of Photoshop. This is more that a matter of ease-of-use it is a matter of creating a coordinated interface between a person and a machine. While CLI forces the user to preform a completely defined action (e.g., type in a command that turns pixel 100,103 in file x to RGB value 128,128,200), a GUI lets the user try something (select a paint brush tool from the toolbox, test it somewhere, undo, use the tool somewhere else, etc.)

    Control Panels vs. Config Files: The article claims that modern GUI-driven OS have too many control panels ("To master modern GUIs, one must recall the operation, layout and relation to each other of hundreds, if not thousands, of such panels." Yet how is this same functionality attained in a CLI machine? Config files are the absolute worst because they offer no form of input checking or potential for embedded help. Most config f

    --
    Two wrongs don't make a right, but three lefts do.
    1. Re:CLI vs GUI Ease of Use by Lussarn · · Score: 3, Informative

      Your pathnames argument is just wrong. Ever heard of tab completion? GUIs mostly suck because they don't have it. Of course the much critisized GTK+ file selector is one of those that do have it. Learn it and use it, never click again.

    2. Re:CLI vs GUI Ease of Use by Jorrit · · Score: 2, Informative

      Never heard of tab completion? All good CLI's that I know allow you to complete a path or filename with a single key (usually tab). That saves a lot of typing. If there are multiple choices for the same set of start tokens then you can get a list of all matches with one key too.

      The reason I like CLI's a lot more is that you can use wildcards in them. For example, I often want to move all files that match a certain pattern to some other dir (just an example). This is a lot more clumsy to do in a GUI.

      Greetings,

      --
      Project Manager of Crystal Space (http://www.crystalspace3d.org). Support CS at http://tinyurl.com/cb3x4
    3. Re:CLI vs GUI Ease of Use by Otter · · Score: 1
      Even so, a long CLI path is still type, type, tab, *beep*, type, tab, *beep*, type, tab, type, *beep*...

      It's faster when it's a short path that you know and which has few name matches. Otherwise, I find paned file managers much faster, especially when you don't know the path offhand. Plus, no beeps. (Yes, I know you can turn it off.)

    4. Re:CLI vs GUI Ease of Use by CoolToddHunter · · Score: 3, Informative

      Your whole argument does a poor job telling me why a GUI is better than a CLI. What is does an excellent job at is telling me the differences between the two and the situations in which I would use one or the other, and I really think that is the key.

      There are huge differences between the GUI and CLI and they do entirely different things. You use the example of Photoshop or other "applications" that don't really translate well to the CLI. You need the GUI for that. In the CLI, we use "programs" that take care of a specific task and no more. As you say, "fully specified." Great for automation or batch jobs.

      I think this is why most people who use *NIX on a personal machine have some sort of desktop on which they can run "applications" and will drop into a shell when they need to run a "program".

      Now, which is easier for newbies is obviously up for debate. It's been a long time for me, so I'm really poorly qualified to comment on that.

    5. Re:CLI vs GUI Ease of Use by thelexx · · Score: 3, Insightful

      You're harping on a 'CLI Photoshop' is pretty retarded. Even before OS based GUI's were common, there were these things called 'drawing programs' that provided their own. Nobody I know of has EVER claimed a program like that, meaning one that explicitly deals with friggin graphics, would be better off as a command-line app.

      Also, as far as config files go, ninety-five percent of the time there's no or little help available in settings dialogs. Not to mention multiple tabs, trees, checkboxes that can be overlooked, etc. With a config file you generally have one big list of settings that you can SEARCH, instead of clicking on shit for five minutes wondering where the hell that setting was.

      File navigation is hit and miss on both sides of the argument IMO. I tend to work with the same paths enough to remember them, and I can guarantee I'm faster using the command line when I'm dealing with known paths. OTOH, when I'm not sure where something is or am kind of browsing, a GUI is better. Or 'pseudo-gui' as I think you called it - Midnight Commander. It utterly annihilates any and every gui file manager I've ever used. It has the best of both worlds, an extremely effective 'pseudo-gui' and a command line.

      Finally, GUI as a _superset_ of the command line? Now I know you're high. Maybe on Windows. Under Linux it's a distant and pale subset. End of story.

      Overall, it really just sounds like you have an axe to grind.

      "The bottom line is I want to "use" my computer, not "learn" my computer."

      And there it is.

      --
      "Gold still represents the ultimate form of payment in the world." - Alan Greenspan, 1999
    6. Re:CLI vs GUI Ease of Use by ajs318 · · Score: 3, Informative
      Precisely. Try doing the equivalent of this in a GUI;
      for i in *wav; do lame -h $i && rm $i; done
      You can spend more time fart-arsing around with a drag-and-drool interface than it would have taken you to do it on the command line. That was what I loved about AutoCAD R12 ..... you could type in exact co-ordinates instead of trying to get a pixel-perfect click, and it cared not which method you chose. Ah, happy days. I seem to remember there may have been an AutoCAD for Unix. Anyone ever get it to compile on Linux?
      --
      Je fume. Tu fumes. Nous fûmes!
    7. Re:CLI vs GUI Ease of Use by Sigma+7 · · Score: 1
      Pathnames: Typing in a path and filename is the worst waste of time and another major reason why CLI sucks. Consider this problem from an information theory standpoint. I usually have between 4 and 16 subdirectories in each directory. In theory it should only take between 2 bits and 4 bits of information to select a subdirectory. At the same time, I have between 5 and 20 characters in the names of most directories. So instead of picking among a few easy to distinguish items in a GUI, I am forced to type in 5 to 20 characters (that's 40 to 160 bits of information) per level in a CLI. And with a CLI, if I make one tiny spelling error then the entire command fails and I have to retype it. That Sucks.
      I wouldn't say that GUI systems are better for this instance.

      I've been using Windows a lot, and noticed several major problems with the GUI interface when it comes to pathnames and filesystems. Nine times out of ten, it selects your default "My Documents" folder, your Desktop, the current working directory (i.e. the directory where the program was launched.), or the last used directory.

      You also have to do a bit of hunting to find the folder you want, depending on the quantity of files as well.

      The only good GUI interface for filemanagement that I've seen would be similar to XTreeGold 2.51, and I haven't seen it reproduced recently.
    8. Re:CLI vs GUI Ease of Use by dolphinling · · Score: 1
      You give a command to do something (e.g., move a file from directory to another) and then you have to give a command to see the results (ls).

      This has to be done for a GUI, too, it's just that the gui normally does it for you. It would be easy enough to add a little thing on to the end of the mv command so ls got done right afterwards, it's just that most people trust their computers enough that it would be more of an annoyance than a help.

      Direct Manipulation: ...

      This whole comparison is stupid. You simply don't use a CLI to do graphical manipulation, in the same way you don't use words to make a painting. You find the right tool for the job.

      Pathnames:

      With a GUI, I have to take the time to stop, read the whole screen to find which icon I need, move the mouse to it, and double click. If I know where I'm going, it's much quicker on a CLI, if I don't, it's still faster to just hit an extra ls.

      (would be more, but class is starting)

      --
      There are 11 types of people in the world: those who can count in binary, and those who can't.
    9. Re:CLI vs GUI Ease of Use by Anonymous Coward · · Score: 0
      Nobody I know of has EVER claimed a program like that, meaning one that explicitly deals with friggin graphics, would be better off as a command-line app.


      Well um. um. I submit to you Image Magick's convert utility. It's a graphics tool that works best from the friggin command line. But maybe it's just the exception that proves the rule ;-)
    10. Re:CLI vs GUI Ease of Use by frog51 · · Score: 5, Insightful

      At risk of just sounding argumentative, I actually disagree on almost every point you have just made. My background has led me through assembly and machine code in the days of 6809, 68000, Z80 and 6502, through Pascal, Forth, VB, C++ etc etc so I have had a fair amount of experience of various platforms, and the one thing I have learned above all others is how inferior a GUI usually is.

      I agree that word processing is generally easier with a WYSIWYG word processor, but there are damn few of them. If it comes down to needing a specific layout, I know LaTex will work where MS Office often fails. And any graphical manipulation should be easier using graphical tools.

      But your other points:
      CLI = Dialog? The article mentions the notion of CLI as a dialog. But this is a misleading metaphor because so many CLI commands create invisible effects. A GUI has far more invisible effects, as you can't even tell what commands it runsYou tell the computer to do something and all that returns (in most cases) is a command prompt. A Unix command which returns a prompt implies it completed. Error codes are output from almost everything, and if you want to see them you can.At best its like teaching someone to to do a job while speaking through a door. You give a command to do something (e.g., move a file from directory to another) and then you have to give a command to see the results (ls).Or alternatively, you give the command and trust the agent to perform its duties and only return an issue when there is a problem

      Discoverability: GUIs also provides visibility on to the set of available commands and functions. By browsing through the menus (which are usually nicely organized)Some are nicely organised, and to be fair, this is an area where there is great improvement, but in general I find it a nightmare to have to drop down through menu after submenu, sometimes in unintuitive places, to carry out a simple command., you can learn the functions of an application. In contrast, a CLI-only machines provides no obvious way to learn about commands that you did not know existed -- at best you can access an alphabet soup of cryptic vowelless cmmnd names and then access the man page on each command. Therefore, GUI applications tend to be self-documenting, CLI commands require that you first know of the existence of the command and then you must read the man pages (grepping the man pages sometimes works if you know the jargon for what you are looking for).There is an argument for simpler documentation than 'man' pages, but in reality, all that I think would be required is some indexing system.

      Undo command: Most well-behaved GUI applications further support user learning via experimentation by having an undo command (and a revert command). CLIs tend to be irrevocable with no possibility for undoing inadvertent damage by a novice user (short of reloading the entire machine from a backup). Erm...novice user...should not have access to anything other than their own files, so should not cause irreversible damage. If they do have root, well, that's kind of the same as letting newbies have administrator access on Windows machines...a very bad idea. There should be no need. Its no wonder *nix people get upset at the thought of novices on computers. But this lack of an "undo" is the fault of *nix CLI (it could easily be remedied with automatic file version tracking and journalling). What do you mean by undo anyway? An undelete? Easy. A 'revert back to before I overwrote that file with this one' option? Does your GUI give you that?

      GUI is the superset of a CLI: Some people complain that GUIs take too long and I agree with them. CLI does offer a faster interface for experienced users. Yet a good GUI offers keyboard shortcuts that let experienced users invoke commands from the keyboard. While it is easy to have a keyboard shortcut available and shown in a mouse-oriented graphical GUI menu, it is hard to have a graphical menu shortcut in a keyboard-or

    11. Re:CLI vs GUI Ease of Use by FePe · · Score: 2, Insightful
      For a more philosophical discussion on the subject, try "In the Beginning Was the Command Line" by Neal Stephenson. Here is the original page, here is a nicely formatted HTML version, and here is a more printer-friendly version.

      Especially your last paragraph: 'Granted CLI is nice and powerful. When I used a UNIX machine more intensively, I liked CLI. But when I stopped using UNIX intensively (dropped below 5 hrs per week of Unix use), I found that I quickly forgot all the commands and spent most of my time grepping man pages. CLI is mega keen and faster if you're doing batch file transfer, but for single file transfer, I can drag and drop faster than I can try and remember and then type the correct command, path, and file name.

      The bottom line is I want to "use" my computer, not "learn" my computer. Although *nix requires you learn before using, some OSes don't have such a steep learning curve. What I like is Bill Joy's statement in a recent wired article about Linux vs. Mac -- he chooses the Mac because it "just works."'

      is what Stephenson concludes too, and basicly what the whole essay is about.

      --
      "Until you do what you believe in, how do you know whether you believe in it or not?" -- Leo Tolstoy
    12. Re:CLI vs GUI Ease of Use by plumby · · Score: 2, Informative

      With the explorer in WinXP, as you type into the address bar, or Run window, both of which you can launch via keyboard shortcuts, you get a selectable list of available files/directories matching the letters that you've entered.

    13. Re:CLI vs GUI Ease of Use by Christianfreak · · Score: 3, Insightful

      Nice troll. Looks like the mods went for it too.

      All systems have a learning curve, if they didn't I wouldn't have the same Windows user calling me everyday because she forgot how to get her email.

      CLI = Dialog? it depends on the command, and no one said some commands couldn't be rewritten to be more userfriendly. Besides it wouldn't take long for people to know which commands aren't going to return anything if they fail and come to expect that. In fact some of us with a bit more experience like these commands as they can be chained together to do even more useful and exciting things.

      Undo command: Actual commands to the OS can't be undone in any environment. Once you click 'OK' in some dialog (commanding the OS to do something) That's it, there is no resetting from that point. The CLI is closer to the OS in most cases. So the fact that it has no undo isn't really all that surprising. Many (usable) command interfaces have a command history however so undoing something usually isn't all that hard. Many commands such as cp and rm have confirmation dialogs turned on by default so you are less likely to make a mistake in the first place.

      GUI is the superset of a CLI: Can you operate the machine using Ctrl+This and Ctrl+That without the GUI?

      Direct Manipulation: What a pointless argument. The CLI has nothing to do with the applications you are using. I think most people talk about using a CLI to get around their systems. No one is advocating making graphical image applications, web browsers or games go away! As for your challenge such a thing does exist, its called ImageMagick (the convert command) you can manipulate pictures from the CLI and you can do a lot with it. Of course its a command designed to filter things and program with (ImageMagick itself is an API) just like lots of other commands on the system.

      Control Panels vs. Config Files: I'll keep my config files thanks. Very few widely used config files aren't littered with all kinds of comments telling you exactly what to enter. And of course there is input validation. Many programs have a 'check the config file mode', and even if they don't its probably not going to run with an invalid config file. Editors such as VIM help here too. When the syntax is supposed to be highlighted a certain way and suddenly its not, there's probably a problem.

      Pathnames: Tab-completion?

      Your argument about single files goes away with tab-completion too. Really I wish there were better ways to select groups of files (by type maybe) in a CLI for batch transfers.

      Personally I want to "use" my computer without pretty pictures getting in the way. Bill Joy probably made those statements because he isn't familiar with Linux. I've set down in front of Mac OSX and whenever I have I end up looking for the Terminal.app so I can use the comptuer.

    14. Re:CLI vs GUI Ease of Use by ichimunki · · Score: 1

      Side-effects make it not a dialog? You give one example where a GUI might be better, but that's it. And how is that different from dragging a file from one "folder" to another and then having to open up the target folder to see what's in it? If you want to watch mv in action use the -v flag.

      Discoverability? You're kidding right? All those menus and submenus. That's not any better than tab completion in my book. And running most CLI commands with the -h or -? or --help flags gets you summarized help on a specific command. Plus, man pages for many commands include helpful "See also" sections.

      Undo command? Is there an "undo" command for "Empty trash"? How about an undo command for moving files around? Or renaming? No? I didn't think so. Some applications might have useful undo commands, but the GUI shell does not.

      GUI super-what? This whole paragraph doesn't even make sense.

      Learning curve? Did you RTFA? He said total newbies felt their learning curve was quite acceptable. CLI version of Photoshop is a total red herring, although I do found it interesting that it is almost as easy (for me) to do 3D modelling by scripting scenes rather than by using a GUI. The point is: no one expects to do graphics-intensive work from a command line. Although it sure is easy to do things like create thumbnails of entire galleries of JPGs and set up a web gallery from a command line. That would take all day to open each picture in Photoshop, crop it, resize it, and resave the thumbnail with a tn_*.jpg naming convention.

      Config files don't have embedded help? Almost every config file I've seen uses # to mark comments and uses this to embed notes and likely non-default options.

      Pathnames are a waste of time? Even with tab completion? I'd much rather have a tab-complete pathname entry field (think BASH or emacs) than any open/save dialog you can name. The only time I find GUI file browsers valuable is when I'm viewing directories full of images and the files are shown as thumbnails. But I don't think I've really seen this used well outside of GQView and some shareware apps. Most GUI file dialogs are "one at a time" in this respect. Not very helpful.

      CLI is faster is you use CLI? So is GUI. Obviously whatever you use the most is what you're going to be good at and when you step away from something for a while you're going to need to readjust.

      Bill Joy chose the Mac because it "just works"? Tell that to my friend-- a complete newbie-- who found himself being told by tech support to reinstall his entire Mac OS X system because he couldn't get the modem to work! Then ask him how frustrating it was to get the printer to work. He had no idea which of the wierd little files on the CD that came with his printer he was supposed to use. Bill Joy is a computing genius. His idea of what "just works" hardly applies to the discussion at hand.

      --
      I do not have a signature
    15. Re:CLI vs GUI Ease of Use by rRaminrodt · · Score: 2, Insightful

      You make some good points about the Unix CLI, but the more I think about it a good portion of your points don't have to apply to an idealized CLI.

      I think the strongest point of this article is that a "conversational interface" which works synchonously is easier to get a handle on than something that is throwing asynchonous events at you all the time.

      CLI = Dialog
      This might be true, but I don't like your example much. cd simply does its job and tells you if there is an error. should it report the directory it changed to? I don't think it would be the end of the world if it did, but it would be a little more verbose that needed.

      Discoverability
      I mostly agree here. But even with windows or mac dialog box menus, you've got to navigate these often poorly sorted categories looking for... a cryptic command name. I think well written error messages and 3 stage documentation would help a long way here.* Also, an advanced CLI could present common commands or frequently used commands in a hint zone or upon request.

      Undo
      There is no technical reason why you can't have undo in a CLI. You even hint at this yourself. It would be a feature of the program or shell you are working with.

      GUI is the superset of a CLI
      I don't see the point of this. Sure, the G stands for Graphical, but by no means does that mean an advanced CLI can't incorporate graphics. Think driving ImageMagick from the CLI. Or curses, but going back to the point of the article, was that "conversation mode" was what his users liked. You lose that when you start glueing on menus.

      Direct Manipulation
      This is where I disagree the most. I've got pretty good motor control, but I still click on the wrong stuff all the time. Imagine a CLI-photoshop which fills the upper half of your CLI with the working image and and the bottom half with the input & command history. You can execute any arbitrary command on any region of the image and still see the changes in front of you. Here all the mouse becomes and extra selection tool. Stroking, filling, rotating, can now be driven by commands... which can work synchonously. I imagine the same can go for Word Processing, document layout, etc.

      Control Panels vs. Config Files
      no form of ... embedded help Yah, those "#blah does this" lines really don't exist huh. But I digress, if we're talking about a conversational CLI we'd want a config tool to so you can tell it, "I want X, Y, and Z options set. " That would provide your input checking. Manually hacking the file would be for advanced users (just like today).

      Pathnames
      Urgh. The other replys handled this pretty well. (BTW, typing pathnames on OSX is damn annoying. Why did they feel the need to start them off with caps? grr.)
      And with a CLI, if I make one tiny spelling error then the entire command fails and I have to retype it Press the up arrow.

      The bottom line is: this article was about introducing people to the computer. The most important thing that I saw was that the CLI lets a new computer user focus on ONE TASK at a time. To me this makes a lot of sense. This isn't to say either our GUIs or CLIs are rubbish, but that we have preconcived notions that GUIs make things Easy(tm) and that might not be always true, sometimes, but not always.

      I spent way to much time writing this, and if I want to continue I ought to just to a full fleged essay :)

      --------
      * I don't know if this is a real term but i mean:
      Stage 1: appname -h, provides a quick explanation of the app plus the most useful options and maybe an example
      Stage 2: man appname: more through documentation, but still short and to the point. As others mentioned EXAMPLES are very useful. All the options can be enumerated here
      Stage 3: info or some other hypertext documentation: the full manual that can be as verbose as it needs to be, but crosslinked for deeper investigation into the app

      --
      They'll think I've lost control again and leave it all to evolution. -- Supreme Being, Time Bandits
    16. Re:CLI vs GUI Ease of Use by TioHoltzman · · Score: 2, Informative

      You've apparently not used Win2k (this may also apply to Win98 and/or WInXP).
      If you use the common open or save dialogs (note that MS Office may or may not use these, I don't recall, but just about every other app out there *does*), you can type the first couple of letters of a file/directory name, and if it's in the directory, a dropdown box will appear, with a list of possible matches that you can use the Up or Down arrows keys to select. Just about as easy as using the tab completion in bash, and you *don't* need to use a mouse at all.

    17. Re:CLI vs GUI Ease of Use by poot_rootbeer · · Score: 1

      You tell the computer to do something and all that returns (in most cases) is a command prompt.

      Part of the Unix philosophy is that getting no visible response from a command is in of itself a response. If you run a properly-written command line program and get no message, you can assume that the program executed correctly.

      Though, none of that applies to, say, DOS, or immediate-mode BASIC interpreters, which show the user an OK message after every event.

      But this lack of an "undo" is the fault of *nix CLI (it could easily be remedied with automatic file version tracking and journalling).

      And indeed, several filesystems for Unix exist that do just this. Probably not as many as the number of GUI applications that DON'T provide clean undo capabilities (I didn't mean to hit the red X! How do I get my window back?), so neither side is perfect here.

      I challenge *nix people to build a CLI-only version of Photoshop.

      ImageMagick?

      At the company where I work, we have to process hundreds of images in a proscribed manner, every single day. We're not going to hire a team of Photoshop jockeys to slave over them all day, when a cronjob that invokes a command-line utility will work better. Perhaps the GUI is superior for interactive use, but it loses handily at scriptability.

      So instead of picking among a few easy to distinguish items in a GUI,

      "Hmm, do I need to click on the folder icon, the folder icon, or the folder icon?"

      I am forced to type in 5 to 20 characters (that's 40 to 160 bits of information) per level in a CLI.

      If you name your directories logically (meaningful abbreviations, no spaces or other characters that Unices have to treat specially) and use tab-completion, this isn't even an issue. I can get to virtually any known destination on my filesystem with 20 keystrokes or less. That's 2-3 seconds of typing -- I challenge you to match that kind of speed with a GUI's "double click, wait for window to refresh, double click, wait for window to refresh, double click" behavior.

      Most of your points are entirely valid. GUIs excel in some areas, CLUIs in others. If you've found that GUI works best for you, great; myself, I'll continue to use a combination of the two.

    18. Re:CLI vs GUI Ease of Use by Anonymous Coward · · Score: 0

      make a file in your home directory called .inputrc

      It should contain the line:

      set bell-style visible

      Now, you won't go beep. You'll flash instead.

      I bet you didn't know how to turn it off.

    19. Re:CLI vs GUI Ease of Use by radish · · Score: 1

      Actual commands to the OS can't be undone in any environment. Once you click 'OK' in some dialog (commanding the OS to do something) That's it, there is no resetting from that point.

      Wrong. In windows (as an example, there are many others) I can drag some files from one window to another to move them. When I release the mouse, they are moved. That is an OS command. If however I realise I moved the wrong files, I can quickly hit ctrl-Z (or click Undo) and it moves them back where they were. Now you might argue the semantics and say that "doing the reverse" is not the same as "undo", but what's important is the end effect. I _can_ undo file manipulations.

      Personally I want to "use" my computer without pretty pictures getting in the way. Bill Joy probably made those statements because he isn't familiar with Linux. I've set down in front of Mac OSX and whenever I have I end up looking for the Terminal.app so I can use the comptuer.


      So you prefer a CLI. Great, I'm happy for you. I use the CLI too for a bunch of things, but there are some things which a GUI is better for. Example - I am currently checking a bunch of code into CVS, using the regular CLI CVS client on Solaris. I always like to diff my changes before committing, to be sure of what's going in. So I do a "cvs -nq update" to get the change list, then "cvs diff filename" for each file I'm thinking about checking in (note - there are some files I know I don't want to commit), and then a "cvs commit" for the various related file groups (so the comments make sense for each discreet change). That's a lot of typing, even with tab completion. Using something like WinCVS or even the GUI CVS built into IntelliJ is so much faster and nicer to use (I just wish I had them installed where I am right now...).

      --

      ---- Den ene knappen er powerknapp, den andre er Bender voice knapp "Bite My Shiny Metal Ass"

    20. Re:CLI vs GUI Ease of Use by Tassach · · Score: 2, Insightful
      I can think of numerous graphics manipulation programs that would work just fine with no graphical interface. Pretty much any kind of batch operation you'd want to do to an image file could be done more efficiently with a CLI. Imagine I have 500 TIFF files in a directory. For each of these images, I want to overlay a logo file to the lower-right hand corner, create a thumbnail, and convert the original files to jpeg format. You don't need to see the image to do any of these things. This could be done in under a minute with a command line tool; it might take hours to do by hand in a GUI environment.

      Plus, having a command line tool makes it a whole lot easier to tell someone how to do something. For example if someone asks "how do I get the HR department shared files directory to show up as my S: drive every time I log on?" It's a lot easier to tell them "Hit start, run, and type '

      net use S: \\fileserver\public\hr /persistent
      '" than it is to walk them through the steps needed to do the same thing via the gui.
      --
      Why is it that the proponents of "one nation under God" are so eager to get rid of "liberty and justice for all"?
    21. Re:CLI vs GUI Ease of Use by cicho · · Score: 1

      Poor example. First, the time it takes to start the process means extremely little compared to the time lame will take to do its work.

      Second, if you're performing a command like this, especially one involving 'rm', you want to make damn sure there is no mistake. With GUI it's easier to have such a certainty.

      Third, I can do all this easily in a GUI. In Total Commander for example, I can hit one keyboard shortcut to sort files by extension, then easily select them with keyboard or mouse - or I can hit a different shortcut that will filter the display to *wav files only, which makes selecting them much easier (one keypress). I can then start a GUI front-end to lame and drag-drop the selected files onto it. When done, I can re-select the files (one keypress) and delete them (one keypress, with optional confirmation dialog). The least efficient part of the process is starting a front-end for lame (if I have to burrow into the Start menu), but I can use TC's commandline to start a program and feed the selected files to it if I want to.

      Throughout the whole operation I have full visual feedback (e.g. what if the current directory is not the one I thought it was?) and most importantly, every beginner can gradually figure out how to perform this operation.

      A well-designed GUI can be operated *fast*. I'll grant that some operations are easier with a CLI, but they are getting fewer and fewer.

      --
      "Only the small secrets need to be protected. The big ones are kept secret by public incredulity." - Marshall McLuhan
    22. Re:CLI vs GUI Ease of Use by Anonymous Coward · · Score: 0

      The arrow keys, how convenient! You don't even need to take your hands off the keyboard!

      Oh, wait...

    23. Re:CLI vs GUI Ease of Use by Necronian · · Score: 1

      "How about an undo command for moving files around? Or renaming? No? I didn't think so." Well actually, if you want to talk about using windows with explorer. If you rename or move a file a simple right click undo or ctrl-z will undo it.

    24. Re:CLI vs GUI Ease of Use by ichimunki · · Score: 1

      I stand corrected. Not that I think undo is a bad idea or anything. I could see it being very cool to have some sort of undo command in BASH that would track the effects of the commands in .bash_history and allow for the same kinds of "oops" recoveries. I'd also be happy to see rm move files to a "recycle bin" where they would sit until you ran a `cleanrb` command or ran out of space or they had been in the bin for x amount of time.

      --
      I do not have a signature
    25. Re:CLI vs GUI Ease of Use by mwood · · Score: 1

      Anyway, there *are* CLI graphic composition programs. Take a look at POV-Ray. There *are* CLI programs for composing beautiful text, such as TeX. Whether you use these, or WYSIWYG products, depends on how you choose to think about the problem.

    26. Re:CLI vs GUI Ease of Use by mwood · · Score: 2, Interesting

      Oh, yeah, on MS Windows the GUI *is* a superset of the commandline, and I curse that fact every single time I need to script some simple sysadmin. function so that it can become a regularly scheduled batch job and handed off to the computer instead of me continuing to do boring repetitive manual labor.

      Any GUIfied product with no commandline equivalent is only half implemented.

    27. Re:CLI vs GUI Ease of Use by cynyr · · Score: 1

      there is also nothing like
      "# find . -type d *foo* -print"
      in windows or any of the other types the find supports
      -type c
      File is of type c:
      b block (buffered) special
      c character (unbuffered) special
      d directory
      p named pipe (FIFO)
      f regular file
      l symbolic link
      s socket
      D door (Solaris)

      --
      All of the above was encrypted with a Quad ROT-13 method. Unauthorized decryption is in violation of the DMCA.
    28. Re:CLI vs GUI Ease of Use by ichimunki · · Score: 1

      Bill Joy probably made those statements because he isn't familiar with Linux.

      Well, except that grandparent post misquoted Bill Joy, I think. The Wired article quote is: "Re-implementing what I designed in 1979 is not interesting to me personally. For kids who are 20 years younger than me, Linux is a great way to cut your teeth. It's a cultural phenomenon and a business phenomenon. Mac OS X is a rock-solid system that's beautifully designed. I much prefer it to Linux."

      I don't see anything there as any ringing endorsement of GUI over CLI. The fact that Mac OS X has a terminal just makes it a whole system, in my view. Just like I wouldn't run GNOME without having a terminal window open, neither would I want to be confined to just a BASH shell.

      --
      I do not have a signature
    29. Re:CLI vs GUI Ease of Use by No+Such+Agency · · Score: 1

      Erm...novice user...should not have access to anything other than their own files, so should not cause irreversible damage. If they do have root, well, that's kind of the same as letting newbies have administrator access on Windows machines...a very bad idea.

      So if a new user buys a computer, they shouldn't have admin access to it? Who's going to be their admin? What if they want to install software, should they have to pay somebody else to do that? Your attitude would be justifiable if people didn't own personal computers, but um... yeah.

      --
      Freedom: "I won't!"
    30. Re:CLI vs GUI Ease of Use by Hotsphink · · Score: 1

      And I find your comment to be a brilliant description of why so many people erroneously believe that slapping a GUI on something magically makes it easy to use. There is a common mythology about both CLIs and GUIs that ends up doing a disservice to both. The problem is that each of your points is accurate, but in many cases they miss the point.

      The perception of the CLI partly suffers from its strengths -- speed and power for advanced users. This makes everyone assume that it is only useful for those users for whom speed and power are important, namely advanced users, and not for newbies. A consequence of that viewpoint is that development of CLI features has long ignored the newbie issues -- the original article's use of a 'man commands' is a great example of a simple necessity that is sorely lacking. People put a lot of effort into pruning down GUIs for newbies or specific tasks, but something like 'man commands' will always get rejected for a CLI because it is not comprehensive, or because it "dumbs down" the interface. Is a pocketknife without a chainsaw and ice cream making attachment any "dumber" than one with? No, it's just more tuned to a set of tasks.

      In fact, the CLI has a completely different set of advantages for newbies. I have a fair amount of experience in teaching newbies to use computers for the first time, and there just is no contest -- they have *always* preferred the CLI for those tasks that it is appropriate. A large reason for that is Post-Its: if they can jot something down on a Post-It, they will be able to remember and comfortably incorporate it into their daily tasks. GUI tasks are just not very Post-It compatible. (Note that I am only talking about newbies here; personally, I think that the easiest path for people is to start with the CLI, migrate to the GUI, then go back to the CLI.)

      The primary advantage of GUIs that I see is the display of the available options, and most CLIs are sorely lacking here. Except that it ends up not helping newbies much, because all those "intuitive" associations between icons/menus and commands are lost on the newbie. Geeks really have no idea how foreign many of the basic computer concepts are to inexperienced people. Icons, for example, are horrible -- even if the user can recognize what an icon is supposed to represent, that doesn't mean they will understand the difference between a mail program and a particular mail message. "Why should I click on the little picture of the envelope? I've already done that and read the message that came up; I want to read the new ones! Where are they?" The whole desktop metaphor is a large stretch for people -- a real desktop starts out empty, with perhaps some little bits of furniture intended for various purposes. The user chooses where to put things and how to arrange stuff. Compare that to a computer desktop which is more akin to the control panel of a nuclear reactor, all laid out and ready for... who? Well, clearly for whoever set it up that way, not the naive user! The mixture of documents and applications and tools (wastebasket etc.) means that even if the user began with a mental model of a desktop, it will be quickly violated when they put something in the trash can and a big window pops up and yells at them.

      Today's GUIs are not created with the mindset of a space in which a user can perform whatever tasks he/she cares about. Instead, they try to instruct the user in the "proper" way of doing things. Wizards and dialog boxes are great, but they are also saying that you have to do things in a particular order and enter a bunch of information that you don't really care about (at least not yet). "Are you sure you meant to do that?" -- why, is there something wrong with doing that?

      Anyway, to respond to specific points:

      CLI=dialog? Yes, it is imperfect. But understandable -- if you ask somebody to do something, they may or may not tell you that they've done it, or show you what it looks like having done it.

      Discoverability This is a weakness in CLI

    31. Re:CLI vs GUI Ease of Use by baxissimo · · Score: 2, Insightful

      Good points. I agree it's useless to debate which is better, GUI or CLI. Each has distinct advantages. What I'd like to see is more exploration of how to take advantage of the best of both with GUI/CLI hybrids.

      Matlab and Maple offer pretty interesting examples of hybrid GUI/CLI interfaces. For instance, you type some graphing command, and then the graphical output appears right there inline in the console. Overall their UI is more slanted to the CLI end than GUI.

      AutoCAD was another one, but with a more GUI slant than CLI. Actually several modern modeling packages, (e.g. Maya) have a sort of command line interface that lets you type in a scripting command, but it's basically just a way to run one-line scripts than a command line interface to the entire application. I think in AutoCAD it was more like a full interface. I could be wrong, though, not having used either extensively.

      Anyway, there's no reason why the CLI type of interface can't be intermixed more cohesively with GUI. Think of the CLI as an interface for textual interaction of any sort. It doesn't just have to be a set of 'command ' syntax. It could incorporate much more than we think of as 'CLI' today in terms of natural language processing and especially pattern matching and searching.

      Think about the best interface we've got for managing the complexity of the web: Gooogle. There's a similar problem with managing complexity in many application programs. What if in photoshop you could type "gaussian filter" and just click on the "I'm feeling lucky" button, and it would perform the gaussian filter. For many operations you do infrequently, that could be a big improvement over the frustrations of searching through all the menus to try to find the right thing. If the command needs parameters, the parameter sliders could even appear right there in-line in the app's console. If you need to tweak those same parameters again a few minutes later, the sliders would still be there in the console history.

      Applications that have good searchable help give you some of the ability. But it's all set up to be really slow. With help searches, you have to open the help, search for the command you want, say "oh of course! it's under the format menu", close the help, then go open the "format" menu and click on the right menu choice. Instead, I'm talking about a CLI where the command/search area is always shown and is used to launch the commands directly (or present you a list of options if there's ambiguity).

      Actually the Microsoft Office team seems to be trying to go in that direction. But their implementation in the form of Clippy is horrible. And it's still tied into 'help', which to me is basically like "exception handling" for application flow, rather than being a normal part of usage. It's too heavy handed. I _know_ what "kerning" is -- I don't need a whole window to pop up with a description of typsetting terms just to kern some text -- I just want it to execute the darn command.

    32. Re:CLI vs GUI Ease of Use by cowbutt · · Score: 2, Informative
      Poor example. First, the time it takes to start the process means extremely little compared to the time lame will take to do its work.

      Yes, but a computer should save me, the user time and effort. In many examples (including this one), once the user has got the basic command line vocabulary and syntax, the command line will be more efficient for the user if they're performing a task at all regularly.

      IMHO, about the only times a GUI wins are when you're performing some infrequent operation (such that you need to teach or remind yourself of syntax and options each time) and when you need to perform an operation on a bunch of files for which you can't easily come up with a regular expression. Even then, as your experience of regular expressions grows, it becomes easier to compose more elaborate regular expressions such that the CLI starts to win again in the latter scenario.

      Second, if you're performing a command like this, especially one involving 'rm', you want to make damn sure there is no mistake. With GUI it's easier to have such a certainty.

      It sounds as though you don't understand the '&&' operator - by using that, the OP has ensured that each file will only be removed if lame indicates (using its return code) that it completed successfully. Lame may lie, of course, but if you're concerned about that, then you won't want to automate this job at all. My experience indicates that it's extremely rare for a UNIX tool to lie in its return code value.

      --

    33. Re:CLI vs GUI Ease of Use by Anonymous Coward · · Score: 0
      Surely this is not a failing of the system - more an issue with your memory:-)

      Come on, it is obviously a flaw for a system to require massive memorization of non-obvious information. For expert users it may represent a worthwhile tradeoff, but surely if an alternative method permits achieving the same results with no memorization and no significant loss of speed, this is an improvement --- especially for novice users.

      Even for experts there is a point where the tradeoff is not worth it. E.g. imagine renaming every standard command in unix to a random 1 or 2-letter string --- less typing, but so much harder to remember. Sendmail comes to mind as well --- is it really worth having such an insanely complex configuration system just for a mail server?

    34. Re:CLI vs GUI Ease of Use by miles_thatsme · · Score: 1

      Excellent post. It's remarkable that we're still having ease-of-use discussion relating to the same topic after decades of UI research. I'm an OSX user who rarely uses the command line, though I have used CLIs for applications such as SPSS and been blown away by their power. To address the arguments of your detractors:

      1) If you *ever* have to type 'man' or call on help, there is a deficiency in the system. 'Man' is not an element of the operation.

      2) It is unsurprising that CLI commands can be 'described' with greater simplicity here than GUI commands--you're using words, not pictures.

      3) The point of the GUI file-browsing metaphor is that it is a *metaphor*. One command may be more difficult to grasp, but once you 'get' the metaphor, the logic of *every* command becomes apparent. CLI command names and syntaxes do not possess this benefit (see point 1).

      4) If your 'man' needs to spell out examples and you need to extrapolate from them, your system may be very logical. But not intuitive.

      5) It's strange that the posters only associate the file manipulation system (Finder/Windows Explorer/etc.) with GUIs. Problems may be with those specific applications, not the GUI concept.

      6) The single greatest complication to face the GUI, in my view, has been multiple users. As has been pointed out, feedback is critical, and a visible chronological sequence of commands is important. But 'desktop' metaphors breakdown entirely in multi-user environments. What if your office was rearranged every time you used it? I want to let someone else use a resource (application, document, etc.), so now I have to have two copies of it?

      (I had never really thought about the chronological ordering of commands before. Admittedly, the desktop-metaphor sometimes has an 'undo', but rarely shows you precisely what you have done. But why not have a "visual undo", like the rewind button on a VCR/DVD?)

    35. Re:CLI vs GUI Ease of Use by frostman · · Score: 1

      I don't want to even think about trying to replicate Photoshop with a CLI.

      perl -e 'use Image::Magick; etc();'

      oh wait, that's GIMP...

      / ducks

      --

      This Like That - fun with words!

    36. Re:CLI vs GUI Ease of Use by toiletmonster · · Score: 1

      i agree.

      except for "Really I wish there were better ways to select groups of files (by type maybe) in a CLI for batch transfers."

      how about um $ scp *.jpg username@host:foo/

    37. Re:CLI vs GUI Ease of Use by nightfire-unique · · Score: 1

      Well put.

      --
      A government is a body of people notably ungoverned - AC
    38. Re:CLI vs GUI Ease of Use by BillyBlaze · · Score: 1

      There's a distinction between having admin access and using it. I (obviously) know my Linux computer's root password, but I don't do anything as root when I can avoid it. Windows lets you do that too - but it isn't default, so the very people who would benefit most from it never do. Typing the password can get annoying, but if that bothers you, just have an empty password. It's less secure, but at least you will know when you're using root.

    39. Re:CLI vs GUI Ease of Use by sjames · · Score: 1

      I disagree with most of that.

      However, I'll start with an agreement. WYSIWYG text editing does work better in a GUI. That's just a matter of the right tool for the right job.

      I challenge *nix people to build a CLI-only version of Photoshop.

      Just as soon as you build a GUI only sound editor (no cheating and using a sound card, that would be an Audio User Interface).

      However, I will note that the best Image editing and processing system DO include scripting and/or command line filters in addition to GUI.

      Note on vi and pico, MOST people wouldn't consider those to be at all GUI. Just try to pass off a curses interface as GUI some time. If we want to get really pedantic, most CLI are GUI since the characters are rendered as a raster of pixels, but that's not helpful. Besides, if you claim that, I claim it's not GUI unless you use the mouse to click on a graphical display of a keyboard to type :-)

      Discoverability: There is nothing easier about mousing around several levels of GUI menus than ls /usr/bin, apropos (whatever), or just tab completion.

      PATHS: Tab completion is your friend. I find GUI file selectors to be a big pain. cd is faster than clicking through a bunch of folders, and pushd and popd speed CLI navigation even more.

      I think you took control panel too literally. A control panel in that context is any GUI app's presentation. Think control panel as in the panel with the controls for something.

      A BIG downside to GUI is the nearly complete lack of automation. Many people waste hours repeating the same clicks over and over when a 30 second script could have done it all for them in a CLI.

      The bottom line is I want to "use" my computer, not "learn" my computer. Although *nix requires you learn before using, some OSes don't have such a steep learning curve. What I like is Bill Joy's statement in a recent wired article about Linux vs. Mac -- he chooses the Mac because it "just works."

      Only because he already knew how to use a mouse and keyboard. Everything requires some degree of learning. That's why hammer novices spend 15 minutes tapping away on a nail and their thumb while a 'power user' can just use a tap and a good whack for the same nail and they don't end up dancing around holding their thumb anymore.

    40. Re:CLI vs GUI Ease of Use by swv3752 · · Score: 1

      They should not be setup as running admin as default. In *nix terms they should not be set root.

      The problems malware can cause with a limited user account compared to a admin account are orders of magnatude less.

      Basically they should be given a user account for day to day stuff and an admin account for admin tasks such as installing or removing software.

      --
      Just a Tuna in the Sea of Life
    41. Re:CLI vs GUI Ease of Use by Anonymous Coward · · Score: 0

      Any system of reasonable complexity will have things you need to remember. In a GUI, it's not always obvious where you go to configure any particular item.

      Both the GUI and CLI offer a reasonably standard way to find out the things you don't know or don't remember. It's not a flaw of the CLI if someone can't remember the commands - it would be if there was no way to correct the lapse in memory.

    42. Re:CLI vs GUI Ease of Use by ajs318 · · Score: 1

      You have made my point for me. All that clicking and dragging is a bigger ball-ache than typing a command! The computer should be doing the hard work for me. If I have to fart-arse about selecting filtering methods through a GUI, dragging a box around my selections and what not, opening windows and dragging things in, then it's less convenient.

      --
      Je fume. Tu fumes. Nous fûmes!
    43. Re:CLI vs GUI Ease of Use by sjames · · Score: 1

      There's a reason the sendmail book has a bat on it. Once you configure your sendmail, he'll move into your bellfry.

      Fortunatly, there's a much simpler sendmailconfig to generate the configurations for you.

      Most unix commands are short abbreviations. That comes from the days of the 110 baud modem where every keystroke counted.

    44. Re:CLI vs GUI Ease of Use by sjames · · Score: 1

      The && means only do rm if lame succeeds. For extra safety, I usually do mv $i deleteme instead. Then when -t's all done and verified, rm -rf deleteme.

      Of course, the part you left out with the drag-n-drool is that you have to wait for the encoding to complete before you can command the files to be deleted at all.

      Further, that same CLI interface makes it quite easy to set up a 'drop' directory. Any .wav stuck there will get encoded overnight. Try scripting that in a GUI.

    45. Re:CLI vs GUI Ease of Use by takev · · Score: 2, Informative

      a CAD program has both.

      It shows the drawing you can do most things with the mouse.

      But on the bottom of the screen there is a command line interface where you can tell them where to draw the circle and be exact. It is very difficult to position objects on exact positions using the mouse. And filling in dialogue boxes is just slower then typing a command.

    46. Re:CLI vs GUI Ease of Use by sjames · · Score: 2, Insightful

      Another good thing about config files instead of dialogs is that the file can be copied from someone else's successful setup. Kinda hard to do with a GUI.

    47. Re:CLI vs GUI Ease of Use by sjames · · Score: 1

      That sort of undo is not a question of GUI vs. CLI at all. One COULD modify the various file utilities to log their actions and have an undo command that would reverse the operations. That's all the Windows GUI is doing anyway.

      You could even keep a long history of commands and have undo able to go all the way back to last year if you like.

      You could even have a fully versioned filesystem that could reverse anything at all. That would work as well in CLI as GUI.

      To find the limits of that, put something in the 'recycle bin'. Now, empty it and confirm. Shut down. restart. Now get your document back!

      I could do the equivilant of the above in Apple DOS on the ][ using CLI only.

    48. Re:CLI vs GUI Ease of Use by Lord+of+Ironhand · · Score: 1
      Wrong. In windows (as an example, there are many others) I can drag some files from one window to another to move them. When I release the mouse, they are moved. That is an OS command. If however I realise I moved the wrong files, I can quickly hit ctrl-Z (or click Undo) and it moves them back where they were. Now you might argue the semantics and say that "doing the reverse" is not the same as "undo", but what's important is the end effect. I _can_ undo file manipulations.

      What exactly does this have to do with GUI vs. CLI? An "undo" function can be just as easily built into both. The fact that most CLI's do not have one has more to do with the preferences of the average user; it's not related to the method of giving commands.

    49. Re:CLI vs GUI Ease of Use by The+Raven · · Score: 1
      Finally, GUI as a _superset_ of the command line? Now I know you're high. Maybe on Windows. Under Linux it's a distant and pale subset.
      I completely agree... and I agree with the parent poster too. See, I think X sucks holy goat balls. At some future point, X may meet or exceed the usability of Windows 95. When it does, I may start using X.

      Until then, I have >=2 boxes... Linux, and Windows, and never the twain shall meet. Services don't run on Windows, and I don't do GUI on Linux. This uneasy truce will remain until X because usable.*

      * I define 'usable' as being handicap accessible out of the box... ie, you can use almost all X apps with the keyboard alone, and not lose any functionality, and without using a keyboard-mouse-pointer-mover.
      --
      "I will trust Google to 'do no evil' until the founders no longer run it." Hello Alphabet.
    50. Re:CLI vs GUI Ease of Use by Nebu · · Score: 1

      My experience indicates that it's extremely rare for a UNIX tool to lie in its return code value.

      I don't think programmers intentionally make their command line programs lie via return codes; rather, it's not always clear what value you should return. The general guideline is that 0 means some sort of success occured, and anything else means some sort of failure.

      If the program expects command line arguments, and you provide it none, the tradition is to display a short blurb about the program's usage. Is this considered a successful run, or a failure? You could argue that it failed in that it didn't do what the program was intended to do (e.g. encode mp3s), but you could also argue that the expected behaviour of the program, when provided zero parameters, is to display usage info, and it successfully did that.

      What if, using whatever the proper syntax of the shell is, the user requests something like "encode all wave files in this directory" and there are zero wave files, and so the program encodes zero mp3s. Was that a success or a failure? It's a success in that nothing in the program broke, but it seems like perhaps something happened that the user isn't aware of, and perhaps the user should be informed.

      What about if the user passes a "-h" parameter, asking for help, and the program displays the help. Was this a successful run of the program or a failure? It did exactly what the user asked, but it didn't fufill its main purpose, encoding mp3s in this example.

      What if the user thinks "-h" means "highquality", but in fact the program interprets it as "display help"? The help blurb may be displayed, a success returned, and the files deleted.

      I'm not advocating GUIs vs CLI or vice versa (I alternate between the two, depending on what I'm trying to get done), but I have a distate for Unix's return code system.

    51. Re:CLI vs GUI Ease of Use by Trinition · · Score: 1

      Ever heard of tab completion? GUIs mostly suck because they don't have it.



      I'll give you that to some extent, with stress on the "mostly".



      First of all, tab completion in a command line, as I've used it, refers to filenames. I've never sen it applied to command line parameters such that when you type -he and hit TAB it completes the -help you were looking for.



      That said, the best the typical GUI has to offer is either jumping in a list/tree to the item whose names starts with the letter you pressed (relative to your lest focus), or a full-blown "search for files on my hard disk" function, which is a bit more involved and does more than search the current directoty level unless configured otherwise.



      That said, I've seen GUIs that as you start typing, they jump down the list more than based on the first character matching the letter you typed. They do a "starts-with" comparison. Thus, if I type "B", it brings be to the first "B" file. If I type "A", it brings me to the first file starting with "BA". In no time at all, it brings be to the file I wanted, "BAR", skipping everything before it (BAF, BAM and BAP, naturally).



      Still, the only reason command line completion usually matters for me is because I'm trying to give the computer the name of the file I want to operate on. In a GUI, I'm presented with a visual display of files (similar to a CLI directory listing) and I can PICK the file I want, with the aid of handy icons, and then operate on the file (copy, delete, move, drop-on-program, etc.). I Don't need to GIVE the exact name to the computer, I just need to READ the exact name.



      It's simpler for small sets of files, but a CLI with auto-completion works better when there are a great numbero f files and the pathetic auto-assistance (I wouldn't call it auto-completion) only jumps to the first of 500 files starting with a B (the last of which, naturally, is "BZZZZZ").

    52. Re:CLI vs GUI Ease of Use by Trinition · · Score: 1

      Hold on there, speedy...

      Also, as far as config files go, ninety-five percent of the time there's no or little help available in settings dialogs.

      95%? Where are you looking? Almost every dialog I use has explicit help. [ANTAGONIST:ON] Maybe you're used to linux-freeakzoid GUIs that feel they're above a help system because any good admin would instictively know what to do. [ANTAGONIST:OFF]

      Further more, there is implicit help. THe mere fact that there is a check box implies something canbe true/false. In a config file, you have to examine the existing word to try and infer other possible settings. Hoepfully, if it says 'true' now, 'false' is a legal setting. Or was it 'untrue'? COnsider also, combo boxes, select lists, radio buttons, input-limited text boxes (i.e. numerics only), etc.

      TIP: You can argue back that GOOD config files have comments in them describing the settings underneath the comments, along with the allowable values -- but that is only akin to onlin help in a dialog.

      Not to mention multiple tabs, trees, checkboxes that can be overlooked, etc. With a config file you generally have one big list of settings that you can SEARCH, instead of clicking on shit for five minutes wondering where the hell that setting was.

      Config files often have multiple levels, other config files, mutliple sections, etc. That is the config-file way of having tabs, trees, etc. Checkboxes I covered above. These sections can also be overlooked if you just do a SEARCH as you suggest above, and skip over other relavent sections.

      I agree with rest of your comments, but I'll add one thing. There are several tools out their for explorer which let you right-click ona file/folder in Explorer and copy its path to clipboard. Variations let you copy a group of selected files as a carriange-return-separated list, copy 8.3 names, copy path names with backslashes escaped with another backslash (remember, Windows uses backslashes folks!), etc. I prefer NinoTech PathCopy 4.0 because it's very functional and free (as in beer). Why Microsoft hasn't built this functionality into Explorer is beyond me. It makes switching between command line and GUI a breeze, programming with temporarily hard-coded pathes quick, and allows you to enter exactly what file you want to attach in your e-mail without having to re-browse from the root of your fifsystem again in the stupid file-open dialog.

    53. Re:CLI vs GUI Ease of Use by Anonymous Coward · · Score: 0

      CLI = Dialog?: Of course, they are different paradigms, CLI is better for some, Dialog/GUI/whatever-in-that-paradigm is better for others, for example I would call Midnight Commander a D/GUI/w program. One of my favourite features of MC is that it includes a CLI, although it's nowhere as useful as a regular CLI (tab completion doesn't work, and a few other quirks).
      Discoverability: Yes, the CLI is one of the worst systems in that respect, but one gets extended functionality for it. CLI favours power over friendliness (or as the usual phrase goes "the CLI is very user friendly, it's just picky about who its users are").
      Undo command: Undo != delete or version tracking, hardly ever do I need to undelete or undo changes in a file when working with the CLI (vi and text-GUI programs have undo), this point doesn't make much sense at all.
      GUI is the superset of CLI: No, it's not, it's a different paradigm.
      Direct Manipulation: "And CLI's inferiority is not just a matter of the learning curve", this goes to show that all these comments are in fact one, or are you going to tell me Autocad is inferior because it has a steep learning curve (btw, Autocad has a CLI of sorts)? The CLI photoshop is so stupid even MS wouldn't propose it. On top of it, you're obviously confused, CLI is used to call all kinds of programs, some of them have a TUI/GUI/whatever that works with another paradigm, guess why? Because it just makes sense to have different paradigms for such wildly different tasks.
      Control Panels vs. Config Files: CPs are usually a lot more unintuitive than CFs. And what's that of no embedded help in CFs?? You must have opened a binary file... CFs have comments, and not only are they usually a lot more descriptive than the 'tooltips' of CPs (if there are any at all), you can add your own comments (I often do, when I change a setting for a quick hack), and of course comments include the possible values.
      Pathnames: This is the main reason I work a lot with the CLI, navigating with the CLI is a lot easier with tab completion than any stupid GUI (my favourite feature in Nautilus is pathname completion, actually!).
      CLI is Faster Sometimes: For batch jobs, the CLI can't be beat, and for picking files, I switch to MC. Drag and drop? I hardly ever use it and mostly when I'm limited by the crappy GUI (read: Windows), it's slower than MC's method, unsafe (it's too easy to release the button before reaching the destination) and generally a bad idea.
      You seem to have particular tastes and a nazi attitude, I use multiple paradigms and I understand why some of my friends avoid CLI and others ?UI, they simply have a preference, but they don't try to impose it.

    54. Re:CLI vs GUI Ease of Use by AnotherFreakboy · · Score: 1

      Erm...novice user...should not have access to anything other than their own files, so should not cause irreversible damage. If they do have root, well, that's kind of the same as letting newbies have administrator access on Windows machines...a very bad idea. There should be no need.
      While it may not break the system, I wager that to most 'novice' (and other) users, deleting all their files would rate as damage.

      Otherwise good post, I mostly agree with it, though I wouldn't fault anyone for getting out of practise with something they don't use very often.

      --
      Why not get the real ultimate power?
    55. Re:CLI vs GUI Ease of Use by Christianfreak · · Score: 1

      Opps, that didn't come out very clearly. For example I have about 200 files in my home directory at the moment (excluding 'hidden' files etc.) There is no way to select all the image files regardless of their actual image type. Say I do what you suggested above but I needed some gif files too. So it becomes
      $ scp *.jpg *.gif me@host:foo/

      Oh but I also needed a .tif or a .xcf ... It would be cool if I could do something like
      $ scp type:image/* me@host:foo/

      Especially if I didn't know exactly what files I had. It can be done but it would make for a pretty long command :)

    56. Re:CLI vs GUI Ease of Use by Artifakt · · Score: 1


      "And indeed, several filesystems for Unix exist that do just this. Probably not as many as the number of GUI applications that DON'T provide clean undo capabilities (...) so neither side is perfect here."

      There's a freeware graphics tool for windows 9x series called "STile99". By default, it can back up through the last 18 filters and tweaks you've applied (that's not exactly what clean undo capabilities means, but it's pretty close - a really clean system would always be able to go back at least to the start of the current session, and would let you undo one step without having to undo the others applied after it - but by that standard, there are really few programs that qualify).
      Just offhand, there are at least half a dozen other freeware graphic programs that allow 8 or 10 or more undos in a row. Why does the default Microsoft 'free' application (Paintbrush) only allow 3 sequential undos?
      As you put it, neither side is perfect here. But, why are some of the Microsoft Applets so especially far from perfect? Is MS Paintbrush illustrative of some limit of GUI based designs, or is it that way for some completely different reason?
      I don't know the answer. I know that some pretty expensive commercial graphics programs have bragged about undo depth as one of their superior features. It would be speculating to claim that MS has deliberately crippled Paintbrush to encourage semi-pro graphic artist types to pay bigger bucks for trading up to a semi-pro or better package such as MS's own, or Photoshop or the full version of Adobe illustrator. It seems equally speculative to claim that the humble Paintbrush interface is simply limited by the nature of GUIs. Unless someone here is an industry insider who knows for sure why MS shipped the versions of Paintbrush they did, you may well be making a very good point, but I don't see how you can really, rigorously prove it.
      Of course if Windows was open source...

      --
      Who is John Cabal?
    57. Re:CLI vs GUI Ease of Use by cowbutt · · Score: 1
      If the program expects command line arguments, and you provide it none, the tradition is to display a short blurb about the program's usage. Is this considered a successful run, or a failure?

      I've always regarded that as a failure - the use didn't supply enough information for the program to do its job (hence a failure), but the program dumps some usage information as a convenience to the user. A quick test shows that GNU 'grep' returns 2 in such a case, so that's consistent.

      You could argue that it failed in that it didn't do what the program was intended to do (e.g. encode mp3s), but you could also argue that the expected behaviour of the program, when provided zero parameters, is to display usage info, and it successfully did that.

      I think you'd be in the minority with your latter argument.

      What if, using whatever the proper syntax of the shell is, the user requests something like "encode all wave files in this directory" and there are zero wave files, and so the program encodes zero mp3s. Was that a success or a failure? It's a success in that nothing in the program broke, but it seems like perhaps something happened that the user isn't aware of, and perhaps the user should be informed.

      My instinct is that that would depend on how the program is used. If the user needs to supply a list of files (e.g. *.wav before expansion by the shell), then if that list is null, the program should return an error. If, OTOH, the user needs to supply a path which is searched for files, then the program should exit(EXIT_SUCCESS) as long as that path exists and is readable.

      What about if the user passes a "-h" parameter, asking for help, and the program displays the help. Was this a successful run of the program or a failure? It did exactly what the user asked, but it didn't fufill its main purpose, encoding mp3s in this example.

      Again, convention indicates that a program displaying help if the user explicitly asks for it is successful operation. Some applications (e.g. GUI wrappers for command line applications) use '-h' and '--help' to find out what options are supported by the application they wrap in order to present appropriate controls in the GUI.

      What if the user thinks "-h" means "highquality", but in fact the program interprets it as "display help"? The help blurb may be displayed, a success returned, and the files deleted.

      OK, a potentially valid point, at last. But what if I think a GUI's "trashcan" icon actually represents a printer and I drag all my files to it hoping for them to be printed? There's a limit to how much you can do to protect the user from their own stupidity or ignorance.

      I'm not advocating GUIs vs CLI or vice versa (I alternate between the two, depending on what I'm trying to get done), but I have a distate for Unix's return code system.

      It's true that it's a shame that POSIX doesn't appear to define the commonly-accepted conventions I've described above, but this GNU libc manual page is a good start.

      I'm interested to hear what would you propose instead of exit codes!

      --

    58. Re:CLI vs GUI Ease of Use by wealthychef · · Score: 1

      Excellent points. It's amazing to me someone would try to claim a CLI is superior to a gui for beginners! There are lots of things that just can't be done from the GUI, e.g. Photoshop or Netscape or other inherently graphical, visual tasks. Regarding the control panel thing, it is much easier to remember the location of things in control panels, because the mind organizes information this way anyhow. The idea of placing information into spatial locations, e.g., leaving a bit of text on the desktop, is a familiar idea from the real world that maps directly onto everyday experience. A common memory enhancement trick is in fact to put items into an imaginary location in a building to remember them later. Monks used to use this trick to memorize the Bible.

      --
      Currently hooked on AMP
    59. Re:CLI vs GUI Ease of Use by toiletmonster · · Score: 1

      yeah i suppose. or you could CLEAN YOUR HOME DIRECTORY. =) holy cow. put all your images in a subdirectory named images.

      but yeah there are instances where this could be a useful feature.

    60. Re:CLI vs GUI Ease of Use by Doctor+O · · Score: 1

      > This could be done in under a minute with a
      > command line tool; it might take hours to do by
      > hand in a GUI environment.

      Or you do it once, recording it as an action and telling Photoshop to do it to this folder and wake me when it's ready. Best of both worlds, used heavily at my workplace to maximize surfing time while being able to say honestly "Yeah, I'm working on the super-duper Internet optimized versions of your images. I'm testing the varions settings for your special audience."

      --
      Who is General Failure and why is he reading my hard disk?
  66. Control panels by operagost · · Score: 1
    Human beings are simply not brought up to deal with the GUIs of modern day computing systems. Consider the level of training that used to be involved with teaching one worker how to correctly interpret and operate a single control panel on some machine. To master modern GUIs, one must recall the operation, layout and relation to each other of hundreds, if not thousands, of such panels. The hardest skill being recalling or discovering the correct sequence of operations on one control panel to access a control panel relating to a desired operation.

    Compare this to modern day life. Such nested control panels are rare and single ones at least are uncommon (one example being ATMs).
    TV remote controls, microwave ovens, telephones, audio systems, automobiles.

    I don't think single ones are 'uncommon'. His point is taken, however.

    --

    Gamingmuseum.com: Give your 3D accelerator a rest.
  67. Command line arrogance by onyxruby · · Score: 1

    Command line arrogance cost Novell the network market. They originaly had the market because their only competition was banyan vines. Then MS came along with a gui server that could be handled by someone who could stumble their way through with a mouse. Novell refused to add a gui to their server for reasons unknown and lost the multi-billion dollar server market for it. Novell was king back then, and MS had a product that while inferior, you could use without being a comp sci major. They eventually came out with some gui tools to administer the server like console one, but it was too little, too late.

    Now before you flame me, I learned on command line before windows ever came out, and am quite comfortable using it with Cisco routers or the like. I also think learning DOS should be a requirement for any technician or IT person outside of the *nix world. However a pretty good chunk of the server market is administered by people who are /not/ IT personel, and this is the portion of the market that simply won't be bothered to learn command line. It doesn't matter if the alternative is superior, all that matters is that they can "see".

    1. Re:Command line arrogance by Anonymous Coward · · Score: 0

      So these are the uninformed idiots causing all the havoc on the network with their badly configured servers. They are the ones to blame for the spam problem, who leave their mail relays open. They are the ones because of whom the entire network of an organization dies.

    2. Re:Command line arrogance by onyxruby · · Score: 1

      Yes, I've had to support a fair number of them. You see a lot of places like schools districts and libraries aren't going to hire a network admin. What they're going to do is put the teacher that has a computer at home and knows how to install a printer into the job of admin. In some cases I dealt with former typing teachers that were put in charge of computer labs. Tenured, with typewriters obsolete, they became defacto computer instructors.

      I recall one particular painful experience where I had someone that was so ignorant that I recommended the for dummies series on the nt server she had. I made sure not to be condescending, told her that the title was tongue in cheek. She responded by trying to get me fired after the fact since she had a masters degree and was unfallable for it. My boss let me know, but I didn't get in trouble for it.

      I walked into one business where the front desk secretary had configured everything. They had a network of some 40 computers all using netbui and the server had never been patched at all - not even service packs. The entire network was infested with spyware and the like, and I had to play the bad guy to get rid of bonzi buddy, remember him?

      Now the point you raise leads to a question. When these people don't bother to maintain their networks and cant be bothered to learn, should they be held legally responsible? These networks leak personal data all the time, get used as zombies and the like. Why not hold these places accountable when their failure to practice due diligance causes harm to others? They have to hire licensed and competent people for any number of occupations, so why not IT?

  68. Well, you see. by Moderation+abuser · · Score: 1

    When you are repeatedly typing lists of commands in at the command line it gradually dawns on you that you might be able to put the commands into a file and have the computer run through them for you. That's called programming. Making the leap from shell programming to lower level languages is simple.

    --
    Government of the people, by corporate executives, for corporate profits.
    1. Re:Well, you see. by Nevyn · · Score: 1
      Making the leap from shell programming to lower level languages is simple.

      *laughs*, I think not. One could argue that going from ksh to perl is relativly easy, but I wouldn't call perl "lower level" than ksh ... and I'm also not sure how easy it really is. sh scripts tend to be fairly small and self contained so indentation etc. doesn't become a factor.

      It also goes against the idea that for a good understanding you want to go "up" like... HW -> asm -> C -> perl

      --
      ustr: Managed string API with ave. 44% overhead over strdup(), for 0-20B
  69. What? Oil change? Gas? by autechre · · Score: 1

    I thought you said you didn't want to understand how your car worked. You should just be able to drive it forever without thinking about anything. Why do you have to fill it up with gas? What is gas and why do you need it? You shouldn't have to learn that cars need oil changes. You just want to get to work. Those warning lights on the dash are annoying too; ignore them. Strange noises? They probably all do that eventually.

    For that matter, why all that time spent learning how to be a good driver and having to pass a test before you're allowed on public roads? The car should be able to do all of that for you.

    Knowing that you need more space is understanding how your computer works. You understand the difference between disk space and RAM. You understand that more space can be added. You're not the woman on rinkworks.com claiming that she'd run out of pages in Word if she didn't send some through the recycle bin periodically.

    (By the way, most modern general-purpose operating systems have very good support for USB/firewire drives. Plug it in and use it.)

    Here's the crazy part: people have tried to make computers that are _really_ easy to use. They have a few buttons to do what you want, a MythTV-like interface for email/Web/word processing. But they haven't sold, even though they're cheaper than Dells, and even though people complain endlessly about Windows and viruses and popups and difficulties. You can give someone a computer at work that's a cinch to use, that Just Works simply and effectively, and they will probably still inflict themselves with a Windows machine at home (and then complain about it, and probably ask for help). I don't know why.

    --
    WMBC freeform/independent online radio.
  70. Reuse of learnt skills by EnglishTim · · Score: 1

    The advantage of a GUI over a command-line tool is that once you've got used to the GUI system you can reuse that knowlegde when using other GUI software that you may not have seen before.

    There is seldom much information I can reuse when moving from one CLI tool to another.

  71. He should have said "MY essay" by Anonymous Coward · · Score: 0

    n/t

    1. Re:He should have said "MY essay" by rjw57 · · Score: 1

      The poster? I wrote the essay but didn't post it to /. - wouldn't that have been a bit cheeky on the poster's part? :)

      --
      Rich
  72. Intuitive Interface? by mrFur · · Score: 1

    Over many beverages one Friday evening I got into a discussion about interfaces. This is in the early Windows / Mac era, and as a group of relaxed wannabe intellectual types, we came to the conclusion that there is only one intuitive interface... only one thing you are born knowing how to use. It's a nipple. After that, EVERYTHING is learned bahavior. As for CLI's, they appeal to a simple linear command / response mode of thought. I've known programmers to get confused with context and focus in event driven models, so how can we expect ordinary users to think it's intuitive?

    As for the 'Help' command, take a look at VMS. Properly built help files fit right into the system help like one, so HELP FOO looked just like HELP SHOW. Once you got used to the system, you could abbreviate, and HELP SHO SYS worked just as well as HELP SHOW SYSTEM.

    --
    My $0.05 (AUD - we don't have pennies any more)
  73. Lack of comparison by legenx · · Score: 2, Insightful

    By what does it mean "Best for Newbies?" The article doesn't even try to compare the user performance on a CLI to a GUI interface. The author made many subjective comments about what the users may think. A more objective experiment should be done with a control group that tries to accomplish the same thing using GUI. You then measure the task performance (like how long does it take to write an email or type a letter on either interface). Companies such as Microsoft and Apple spent a lot of money on research like this.

    User interface is a field of active research and study, using actual performance comparisons on actual users, not on people reading slashdot. I think the general Linux community needs to recognize that it's not doing as much as it should. As Linux is moving to the desktop, this is becoming more and more important.

  74. Good idea by Anonymous Coward · · Score: 0

    ...until a person who's spent months learning his own custom commands gets put in front of a new computer. Suddenly, they can't use the OS, no matter how much they trained with it.

    1. Re:Good idea by PRES_00 · · Score: 1

      Then, he just needs to either insert a floppy with his customization or either run the wizard again. The only standard command to remember is that wizard.

  75. how about in 50 years? by falkryn · · Score: 1

    As much as I've come to love using CLI since entering the Linux fold, one thing that's bothered me a bit is I wonder were the future lies in terms of computing and interfaces and such. I find that a lot of people, such as me, who like the CLI type stuff, also have a retro nostalgia for computing in the 80s and such, or earlier. But I have to ask myself, will this really be the direction that technology goes in the future, for me I find that doubtful. Stupid example I know, but I was struck by that part of the film 'Minority Report' where Cruise's character is tapping away at holographic windows on his system. Never mind the bit about the psychic trio and such, for some reason it did leave me wondering where heavily command line based systems will be in a while. Not that I think MS's domination is going to last forever, but realistically, I wonder what will replace it. Will we still be hand editing config file is /etc using vi in thirty years? Are we just re-inventing old technology (like Bill Joy seemed to think), or is this going to expand to something quite beyond itself? I don't know. Any thoughts?

  76. Big News! by Beardydog · · Score: 1

    People who receive training on a system become more comfortable with it!

    Does Aunt Trillie have an SMS pager on which she routinely drops her vowels?
    Could Joe User possibly put his Remember "box" on a GUI desktop where it's always visible?
    Would it maybe help exlporation if you told them anything they ruined in GUI would be replaceable as well?

  77. I must agree by maevius · · Score: 2, Insightful

    My computer experience started with ms-dos. I learned most of the commands while trying to scratch an itch (mostly trying to play games). I learned how to edit config.sys and autoexec.bat and by that the computer internal basics. It was simple and I learned many stuff.

    Now newbies start mostly with windows. In order to learn how to use a computer you have to know how a computer works in general, and how a computer will respond to an action you take. Microsoft tried hard so this stuff is invisible to the user. In order to play a game you just have to put the cd in and "next" your way through the installation process. If users don't gain experience from simple things as that how can someone expect from newbies to learn how to use a computer?

  78. Been there, done that by Wudbaer · · Score: 1

    Between '93 and '95 I supervised my University's PC lab for the medical faculty. One of my main jobs was to help the users around to were back then more or less computer illiterate. Certainly the Uni also offered PC courses. The result of that often were people who entered the lab and then painstakingly started to type letters written on a secret magic piece of paper where they had exactly written down from their course the magic keys they had to press to get to their Word 5 or Word Perfect 5.1 (it was still a Novell3/DOS based lab back then). Sooner or later they would forget a letter or something unexpected would pop up, and then they could be completely out of their league and utterly helpless but still to proud to ask anybody for help, even the guy with the big "Ask me I you have any questions, I won't eat you" sign at his desk.

    Moral of the story: CLI doesn't necessarily foster a deeper understanding of computers, it just improves sales of magic pieces of paper to write keys on.

  79. Only on Ask Slashdot by Pan+T.+Hose · · Score: 0, Flamebait

    The Command Line -- Best Newbie Interface?

    Windows -- Is It Worth $45?

    Gifted Youths -- Building Social Skills?

    Perl 6 -- Does It Have Simple Syntax?

    Slashdotters -- Do They Ever Get Laid?

    Earth -- Is It Flat?

    Stay tuned for more! Only on Ask Slashdot.

    --
    Sincerely,
    Pan Tarhei Hosé, PhD.
    "Homo sum et cogito ergo odi profanum vulgus et libido."
  80. Technophobes excel in complex technical jobs? by DerPflanz · · Score: 1

    Am I the only one that found the contradictio in terminis in the first paragraph?

    He starts out with this comment:

    Many of them had mastered complex technical jobs and excelled in their chosen field.

    Then, only a few sentences later I read this:

    These people are technophobic both in that they fear being left behind by the rapid advance of technology and that they fear the technology itself.

    This raises two questions for me:

    • How can someone excel in complex technical jobs and never even 'turned on a machine'?
    • How can a technophobe excel in a complex technical job in the first place?

    Am I missing something here, or is the definition of 'technology' been changed and broadened last night?

    --
    -- The Internet is a too slow way of doing things, you'd never do without it.
    1. Re:Technophobes excel in complex technical jobs? by rjw57 · · Score: 1

      A good printer has mastered the use of the printing press, can tell the humidity in the room by the droop of a piece of carbon paper and knows more about colour-spaces than I ever will. This printer has a good grasp of printing technology.

      This doesn't mean they don't fear that the (for them) easy to use printing press wont be replaced by a sealed box with a computer terminal on the front complete with a CompSci graduate who suddenly knows more about using the machine than they do.

      Technology is a superset of computers.

      --
      Rich
    2. Re:Technophobes excel in complex technical jobs? by DerPflanz · · Score: 1

      Technology is a superset of computers.

      Exactly, so calling these people 'techophobes' because they don't know how to use computers would be saying 'technophobe' is synonym to 'computerphobe'. Besides, I'd say (to stay in your example) that today printing is more and more done with the use of computers, and to keep being excellent in your field, you need to also know these things. The writer of the article perhaps should have stated that the people that went to his course were not in their business anymore.

      --
      -- The Internet is a too slow way of doing things, you'd never do without it.
  81. information theory? by Anonymous Coward · · Score: 0

    "information theory"? I like it...

    GrimRC

  82. The pros and cons of blackboxing by ControlFreal · · Score: 4, Insightful

    I understand your frustration, but also disagree with it. Allow me to explain.

    The concept you're bringing up is black boxing: a simple (or standardized) user-interface that hides a complex system.

    The pros of black-boxing are obvious: black boxing makes it possible for many people to operate complex equipment (think cars, phones, computers). There is also a psychological factor at play here: as many people seem to suffer from self-learned helplessness when dealing with technology, black-boxing (e.g. think nice-and shiny i-POD, or automatic-transmission lady-car) helps them to overcome their physological aversion and acutally use the device.

    Now, as already stated by another user, the main con of black-boxing is what happens when something goes wrong: black-boxing provides a very poor way of dealing with failure-conditions!. There is also another con, which is public perception: black-boxing makes people believe that the equipment they are operating is simple, while in reality it's very complex. But because they reason from their internal "simple make-believe model', they can make mistakes that they wouldn't have made, had they known a bit more about the equipment.

    To provide an example: Here in Europe, most cars are manual transmission (typically 5 forward and 1 reverse). When driving 80 kph in a flat country like holland, it really doesn't matter that much whether you drive in 3rd gear of 5th gear. However, when some Dutch people drive through Switzerland during the summer holidays (with a big trailer behind the car), they persist in driving in 5th gear up-hill, their argument being: "Hey, don't worry man, the car maintains speed uphill, so what's the problem". Of course, had they known a bit more about how an engine works, they would have switched back to 4th (or even 3rd) gears, to allow the engine to run at a higher specific torque, and to allow the cooling fluids to be pumped around more quickly to cool the engine better. Our black-boxing people usually end up overheating their engine (and blocking traffic and creating big jams in the Alps, grumble! ;) You see: it pays to know at least a bit about what's under the black cover of your black box!

    In the same way, your shiny XP thingy makes your computer seem a simple device. But of course, it is still a really complex device. We've all seen people do stupid things because they persisted in acting according to how they believed the computer works (their simple model), rather than basing their actions on how the computer actually works. Knowing a bit about the latter, however small, enables you to do better in times of failure, but also in general.

    On a personal account: I learned C after I learning assembly. I experienced this as a big bonus, because after using asm, you know what pointers actually are and how they work. I've seen people program Java and doing stupid memory allocation things, because they had no clue about what happens when you do "new bla" or "delete bla".

    To conclude: black boxing is ok, but you need to keep in mind that you are still operating a complex device!

    --
    Support a Europe-related section on Slashdot!
    1. Re:The pros and cons of blackboxing by Anonymous Coward · · Score: 0

      You are missing the point though. People dont care!

      That is why nowadays most popular cars are automatic.
      That is why, in an earlier slashdot article, a new car for women based on raserch came up that the hood should be sealed tight.
      That is why most people don't have a clue how the magic oven (aka microwave) works.
      That is why most people don't want to know how thier AC works.

      If it dosnt work and thier is a failure that is why you have:
      * A technitian
      * A mechanic
      * Help desk

      Computers should be an appliance like anything else. Let me comment on your only example which is actually relevant:


      In the same way, your shiny XP thingy makes your computer seem a simple device. But of course, it is still a really complex device. We've all seen people do stupid things because they persisted in acting according to how they believed the computer works (their simple model), rather than basing their actions on how the computer actually works. Knowing a bit about the latter, however small, enables you to do better in times of failure, but also in general.


      Well then, the only thing this means, is that WinXP should be 'fixed' to behave the way the user believe it should work. What is stopping it from being that way?
      That is why Apple and Microsoft spend ALOT of money (and GNOME and KDE spend alot of time and effort) on usability.

      Things like the new Spatial Mode in Nautilus mkaes the machine work more in the way the users precieve it should work.

    2. Re:The pros and cons of blackboxing by ArseneLupin · · Score: 1
      I've seen people program Java and doing stupid memory allocation things, because they had no clue about what happens when you do "new bla" or "delete bla".

      Java has a garbage collector, there is no delete bla (which doesn't mean that you don't need to worry about memory leaks, but that's another story...)

    3. Re:The pros and cons of blackboxing by joshmccormack · · Score: 1

      To provide an example: Here in Europe, most cars are manual transmission (typically 5 forward and 1 reverse). When driving 80 kph in a flat country like holland, it really doesn't matter that much whether you drive in 3rd gear of 5th gear. However, when some Dutch people drive through Switzerland during the summer holidays (with a big trailer behind the car), they persist in driving in 5th gear up-hill, their argument being: "Hey, don't worry man, the car maintains speed uphill, so what's the problem". Of course, had they known a bit more about how an engine works, they would have switched back to 4th (or even 3rd) gears, to allow the engine to run at a higher specific torque, and to allow the cooling fluids to be pumped around more quickly to cool the engine better.

      hmm.... maybe a stick shift on the computer... overclock, sleep, etc, all controlled.

    4. Re:The pros and cons of blackboxing by BillyBlaze · · Score: 1
      (which doesn't mean that you don't need to worry about memory leaks, but that's another story...)

      You just proved his point. You do need to worry about leaks somewhat: if you allocate objects in tight loops, your app will perform badly. If you keep references to objects you no longer need, you'll run out of memory after a while.

      You probably know these things, but a newbie wouldn't necessairily learn them. To use anything effectively, one needs to understand what's under the hood. So there's something to be said for not putting too many skeletons there.

    5. Re:The pros and cons of blackboxing by Anonymous Coward · · Score: 0

      I learned C before I learned assembly. That didn't matter a bit. I knew exactly what pointers were before that. You don't make it very far, usually past a few core dumps and memory leaks, before you begin to figure out what pointers are, or go back and read your book. One object of an OS for non computer geeks is to abstract the hardware/low level underpinnings so that the average person can use them without much wailing and gnashing of teeth. The OS, software, and hardware provides us geeks and designers a way to make a living; the end result gives the other 97.3 % of the population an easy interface.

    6. Re:The pros and cons of blackboxing by Trinition · · Score: 1

      Two things:

      First, one cannot assume that if GUIs were not an option, everbody using a GUI today would instead be using a CLI. That's the same fallacy the RIAA asserts when they assume if people couldn't download their music for free, they would instead be buying it. LIke those who simply would choose not to have the music, without GUIs, a great number of people woudl still be using calculators, typewriters, draftign tables, filing cabinets, etc. for the things they now accomplish on their PCs.

      Secondly, do *you* know how "new" works in Java? Do you know about generational garbage collection, edens, memory compaction, etc.? Not to mention there is no "delete blah" in Java. In Java, you don't have pointers. You have references. Pointers are memory addresses, references are not. I learned LOGO, BASIC, C, ASM, C++, Perl, Java in that order and I perfectly grasped the concept of pointers from my C experience BEFORE I picked up ASM. NOw, as you say, a great many people who learn Java don't know the true underpinnings of instantiating a new object, but the same could be said fo someone who is taught C++ from scratch (I've met these people!)

  83. -v switch by Anonymous Coward · · Score: 0

    and also: echo $?

  84. Misleading article title by YouHaveSnail · · Score: 1

    If you actually RTFA, you'll find that despite the title "The Best Newbie Interface?", the article actually does precious little to find the best. It has more to do with the author's observations while teaching a course to novice users with a particular CLI, and things that can be done to make the CLI more user-friendly.

    What's more, any references to a GUI are to some unspecified version of Windows. I'm sure it's mainly my own biases showing here, but I recently had to use Windows XP for the first time in a couple years, and I had a pretty tough time myself. Early versions of MacOS were particularly easy to learn to use because they weren't full of bells and whistles, and also because Mac's used to come with a little tutorial that taught you how to do basic stuff like use a mouse, use a menu, etc. It's pretty damn obvious that not all GUI's are created equal in terms of useability for new users, and the same is certainly true of CLI's.

    A final problem is with instructors. Most of us have probably taught someone to use a GUI at some point. Most of us also skip the basics and go right for the techniques that we use in everyday work, like double-clicking to launch apps or open files. But when you do that, you actually make the work more complicated. They have to learn to double-click (which can be difficult for very new users) and they have to learn *when* to double-click and when to single click. A lot of people just start double-clicking everything all the time. If you start with basics, you can give the new user just a few important rules that are very consistant.

    Example: When you want to do some operation on some object, first select the object and then choose the operation. Want to open a file? First select the file by clicking on it, and then choose Open from the File menu.

    The article lists features that are important for new users: dialogue, tasks, discoverability, location, appropriate notification. I suggest that these are all present in any decent user interface, whether graphical or command line driven. What's more, I think they're a lot easier to implement well in a GUI. GUI's also tend to be less modal, which IMO increases useability.

    I guess what I'm saying here is that I respect the author's opinion, but I think he's mostly wrong.

    1. Re:Misleading article title by Anonymous Coward · · Score: 0
      They have to learn to double-click (which can be difficult for very new users) and they have to learn *when* to double-click and when to single click.

      That is why double-click is so bad. When I installed Slackware with KDE, I couldn't get over how simple and intuitive it was to just hover over an icon and single-click. Unix innovation does have its merits. Now, I don't use Slackware and stick only to Windows XP now, but I have permanently stuck with the single-click behavior. Plus I don't have to worry about RSI from the finger-destroying double-click.

    2. Re:Misleading article title by YouHaveSnail · · Score: 1

      I don't know that double-clicking is "bad," but it should always be considered a shortcut, and never the only way to perform an operation, at least on the Mac. The same goes for contextual menus... they're often convenient, but you should be able to do the same operations without the contextual menu.

  85. MicroSoft late to GUIs by peter303 · · Score: 0, Redundant

    I find the comment "before MicroSoft" amusing. Apple had the first commercially successful GUI in 1984- nine years before MicroSofts wirst usable version of windows. The UNIX world was using XWindows six years earlier too. Everyone was making fun of MicroSoft's lowly MS-DOS interface well into the 1990s.

    1. Re:MicroSoft late to GUIs by Xpilot · · Score: 2, Informative

      I find the comment "before MicroSoft" amusing. Apple had the first commercially successful GUI in 1984- nine years before MicroSofts wirst usable version of windows. The UNIX world was using XWindows six years earlier too. Everyone was making fun of MicroSoft's lowly MS-DOS interface.

      No, no, Microsoft brought about the "dark times" by forcing its braindead "CLI sucks" philosophy on ever single damn computer user.

      --
      "Backups are for wimps. Real men upload their data to an FTP site and have everyone else mirror it." -- Linus Torvalds
  86. when can we expect to see it? by Anonymous Coward · · Score: 0

    doesn't even sound that hard...

    GrimRC

    1. Re:when can we expect to see it? by Vanders · · Score: 1

      Heres some simple Bash scripts to do almost exactly that They need a re-write to make them more robust and easier to maintain, but they work. I don't know how much work you'd need to do to adapt them to Linux or a more traditonal SysV style system though.

  87. Sums it up by rixstep · · Score: 1

    This essay describes the surprising results of a brief trial

    'Brief' sums it up. Optimism is good, but I think experience shows that a lot depends on your demographic, for there are clearly two distinct groups here: those that have an appreciation for the abstract in computers, and those that do not.

    Those that have an appreciation for the abstract will always be fascinated by a command line, for they are interested in - fascinated by - how things work. They also like to learn things.

    That's the good group. Of the other group, there is not much to be said. They won't learn, they won't learn, they won't learn.

    And they won't learn.

    I am happy the author of this article has spent time working with adults in this context. But please - there are a lot more people who have amassed tens of years of experience like this together, and sorry to say, their collective experiences are more accurate.

  88. Recent studies... by nerdwarrior · · Score: 1

    ...have shown it's also much harder for CLI users to click on email attachments in Outlook.

  89. You can learn intuitively from the CLI by Anonymous Coward · · Score: 2, Insightful

    The thing that this theory misses is the value of learning intuitively for most people. With CLI you have to be taught or teach yourself through research how to perform each task. With a GUI a few basic principles and you can learn as you go by reading on screen instructions in a context sensitive environment. Does CLI promote deeper learing...absolutely. Is it the best interface for learning quickly and achieving a minimum standard of literacy...nope.

  90. Smarter users means less employment.. by Anonymous Coward · · Score: 0

    any idiot can click a button and screw something up.. it's the perfect money making machine.. give them a command line.. and they're lost.. afraid to type anything in for fear they get a cryptic error message..

    give a user a mouse and a gui.. they'll blow away their network connection, delete all the icons on their desktop.. and copy the entire contents of the network fileshares to they're "My Documents" and then wonder why you can't restore their files when they blow them away..

    every sysadmin worth their salt should know the command line.. i don't care who you are.. being that i live in windows world.. the net command cuts tons of time off waiting for windows to do wins/dns lookups.. and then connect to the machine.. blah blah blah.. net use z: \\stupid_users_machine\c$

    fix their crap and get on with important things.. like posting to slashdot..

    besides.. to the average user/manager/ceo/wanna be geek.. having a commandline open means that you might be working.. i recall a post from a while back where a /. user was browsing the site in lynx with no problems.. his higherups were "pleased" he was working the command line so hard.. heh.

  91. Oh yeah? by wintahmoot · · Score: 1


    He's right, when I first typed ls -l, I thought it all made sense. GUI's are for wimps.

    PS. I've been trying to submit this story for hours now, but somehow there is no command-line equivalent to pressing the 'Submit' button...doh

    1. Re:Oh yeah? by Anonymous Coward · · Score: 0
      somehow there is no command-line equivalent to pressing the 'Submit' button

      telnet slashdot.org http and then send a HTTP POST. Consult RFC 2616 for the details.

  92. Use the CLI to do what? by 386spart · · Score: 1
    I'm looking forward to the next installments!

    Sorting and sharing your digital photos using bash and pine!

    Office work part 1: Emacs+bc = Excel!

    Office work part 2: Q1_presentation.txt - who needs powerpoint?

    Nethack or rouge? - the wonders of computer gaming.

    Your own jukebox, easy as mpg123!

    1. Re:Use the CLI to do what? by DaCool42 · · Score: 1

      I'll bite...

      1) I don't understand why you feel sorting and sharing photos would be difficult from a command line. Maybe you mean inability to view images? If so, nobody says a CLI has to be incapable of display images.
      2) Notepad+Windows Calculator=Excel? Use the right tool for the right job. There are some very good spreadsheets programs based on CLIs.
      3) LaTeX makes very good presentations if it's conveying information clearly you are interested in. For the flashy stuff, I'm not aware of a good CLI presentation tool. Perhaps something with an AutoCad-like GUI/CLI hybrid would be best suited to this purpose. This would allow for visual editting while retaining the simplicity of commands.
      4) Once again, CLI doesn't mean that there isn't any graphics. In fact, many FPS games contain an in-game CLI.... go figure. Also, Nethack is kinda fun. :)
      5) For simple "play this file", it doesn't get much easier than typing "mpg123 file.mp3". For something more advanced, Commands can be combined to get the disired playlist, or one of the many CLI jukebox programs could be used.

      I hope I have not come off as some anti-GUI zealot. I believe that graphical interfaces are very necessary. For many jobs, they are the best (or even the only possible) tool for the task. However, I also think that many tasks people use GUIs for could be done much more easily in a CLI. Probably many applications could benefit from a hybrid solution. Once again I have to say that AutoCad is a very good example of this.

      --

      ----
      All of whose base are belong to the what-now?
    2. Re:Use the CLI to do what? by 386spart · · Score: 1

      First, I apologise, I was trolling without knowing it it seems ;)

      I want the right tools for the job, and because of that I am naturally a huge fan of the CLI and wouldn't touch an OS that didn't have a powerful shell. The list was meant as a joke, pointing out that the CLI is not the right tool for newbies. If you read the article (or even - the headline ;)), you see that was the key point - not whether the CLI is good or bad in general.
      One can of course do almost anything with a CLI, but my point was that it is not the newbie friendly way to do it.

      With that in mind I have basically replied to all your points, but still:

      1) View zoomable thumbnails of 1000 images named photo000.jpg to photo999.jpg and locate the ones from christmas, select those and drag them to your mail window is intuitive and easy. Starting from a blinking cursor in a CLI is hard. Sorting 1000 textfiles based on a word on line 4 in each of them is easier with a CLI, but I don't see newbies wanting to do that very often.

      2) Yes, but the joke is more effective using references to things people know about ;)

      3) Or you could write a html-based presentation. You could make a powerpoint presentation from scratch if you happen to know the file format well enough...but if I ever wanted to do a presentation, I think I would prefer a GUI, (as would the newbies).

      4) A CLI does not use graphics as part of the UI. (If it did, it would be a Graphical UI). I agree that it is possible for a CLI to launch a program that displays static pictures as you mentioned in point 1, but if the pictures are part of the UI of the application, it is by definition a GUI and you are no longer using a CLI. Some games have a CLI, but you generally play them using the GUI. (Although the idea of playing quake by issuing console commands is strangely fascinating...).

      5) Yes it does - double-click the file. Or select those five there, and drag them to your mp3-player. It's way easier than typing. :)

      In short, my point was that the CLI has it's places, but newbie-land is not one of them.

  93. Good, modern, command shells for Windows? by Junks+Jerzey · · Score: 1

    This brings up something I've been wanting to ask: What slick, modern command shells are available for Windows? cmd.exe is crap, of course :) Ideally I'd like something like an OS X (or Linux GUI) terminal window. I've used 4NT, and the related Take Command, but I'm looking for alternatives. Surely there are some?

    (Yes, you can run bash under Windows--as part of the Cygwin package--but it still runs in a crappy little console window.)

  94. Autocad is the way to go by wandazulu · · Score: 2, Interesting

    Autocad is probably one of the most complex applications that I know. But the one thing that they've done right over the years is preserve a command line that gives you total functionality, along with a history to show you what you did. You can click and drag your way through a design, or you can type it in at the command line and then selectively move items with the mouse *if* you want.

    It also reinforces your understanding of the commands to the point where the dialog boxes are merely pretty wrappers and you know exactly what you're trying to do, instead of getting wrapped up in the position and naming of items to click.

    The command line also reinforces concepts and a deeper understanding of what the program is designed to accomplish (with Autocad, designing objects). Try as the designers might, you can always get into an argument that this menu item belonged here, and this dialog box doesn't make sense, etc. etc. With a command line in the program, I simply ignore the arguments and get work done.

    1. Re:Autocad is the way to go by DaCool42 · · Score: 1

      Bang on! The union of CLI and GUI in AutoCad has to make it my choice for best designed interface. The full power of both worlds, and none of the crap. The real beauty is being able to switch between CLI stuff (typing commands, coordinates, etc) to GUI stuff (selecting objects, moving on grids, etc) totally seamlessly. It lets you always use the best tool for the task. Anyone looking to design the next generation of interfaces should definately take some hints from this one!

      --

      ----
      All of whose base are belong to the what-now?
  95. CLI v GUI by 1eyedhive · · Score: 1

    I've done some tutoring in my day, mostly clean-up work for people who've taken the 'intro to windows and the net' type courses where the instructors go through the 'finer points' of click, double click, dragging, etc. most users are flubbed up by such things. and most never grasp the concept of cut and paste bcause of the way they are tought...
    1. select text (click+ hold, drag over text, release)
    2. navigate to EDIT menu, don't click anywhere else lest you fubar your selection (most lose the selection box at this stage), click COPY.
    3. click on window to paste in, click mouse at location, go to edit and PASTE (again losing place)

    my way:
    1. select text (this is still the easiest way)
    2. press CTRL+C
    3. move curser where you want it (switch windows if necessary)
    4. Press Ctrl+V
    5. done

    all the menues are confusing to joe uses cuz they are confronted with first 'file edit view... etc' and then 'undo, cut, copy, paste, paste as, select all, etc' rather than just 'to do this, press this'

    Also in WP, instructors say 'go up and click the B for bold print' usually the curser gets misplaced in the process, rather tahn ctrl+B, keeping the curser where is is without ever touching the mouse.

    I work in linux a lot, usually over ssh from a doze box, i do find organizing large numbers of files in a directory 9but not all of em) of various names, types, sizes, etc is easier with drag n drop, but shorter tasks are easier in the CLI like moving similar files, deleting, renaming, etc.

    renaming: GUI:
    2. open dir, navigate X times as necessary
    1. click file
    2. right click file, select rename
    3. goto keyboard, type new name, press enter

    renaming: CLI:
    1. $ cd /dir/dir/ etc, press enter
    2. $ mv
    3. ls -s n* (where n is first letter of new file name) to confirm

    just plain quicker, and some things, like mounting a drive are easier in a cli as they can be invoked from anywhere, rather than just the window of MY CONMPUTER.

    --
    Logistical Chaos Officer http://www.slagg.org - LAN Gaming in Sarasota FL,USA
  96. colour me lazy by WormholeFiend · · Score: 1

    but I would love to have a ST:TNG-like computer interface.

    "Computer, lock on Carrie Ann Moss and beam her to my hottub."

    "Unable to comply"

    "KHAAAAAAAAAAANNNN!!!"

    (sorry.)

  97. Command line is NOT your friend by Moraelin · · Score: 4, Insightful

    Well, I'm an "old timer" who does _not_ appreciate the command line.

    By "old timer" meaning, admittedly, not 60 years old and having started on punched cards and electronic tubes.

    I did, however, learn programming in hex, not even assembly, on a ZX-80 with 1K RAM. In 1K you didn't even have space to run an assembler. I had a big old paper notebook with 1 page per command and a matrix of the registers involved. E.g., this is the page for "ADD", take the column for "A" and the row for "B", and there you have the hex code for "ADD A, B".

    I continued through such mis-haps as editing source files on a CP/M machine with a hex-based disk editor, because the PHB forgot to also give us a text editor. Sad, but true.

    You know what? I _don't_ miss those days.

    The command line is powerful and all, as long as you already know _exactly_ what you're doing. It is a pain in the donkey when you don't.

    The time and effort to get past that learning curve is not fun, and not what Joe Average wants. Heck, it's not what _I_ want.

    I do _not_ find it fun to spend hours digging through obsolete, incomplete man pages just to find out that I need to type some obscure command like "obscureProgram.sh -XFGXRmnq -i filename1 -o filename2 -c OBSCURE_COMMAND_CODE -p some_obscure_regexp -f unix-style-font-name" just to get something done. Bonus points if it expects me to already be in some directory, and some obscure configs to already be set right. More bonus points if it doesn't even do the whole job, but expects me to pipe it through other obscure programs. Double bonus if it outputs some cryptic error messages like "1962 Short School Bus", that don't even tell me what the **** went wrong there.

    Gimme a break. My time is too valuable to spend it on that kind of crap.

    Give me a GUI which has input fields for the stuff I need to enter. If it's a file name, give me a good file selector dialog, don't expect me to manually list directores 20 times to find it. If I'm supposed to enter options, give me checkboxes, radio buttons, or drop down combos. And, ffs, give me an up to date help for it. And clear, humanly understandable error codes.

    And you know what? I'm surprised how much energy goes into defending the sacred right to produce crap code and piss-poor interfaces.

    Here's an idea: if half the time that went into whining about how the 60's command line interfaces are better for the user, went instead into throwing together a simple user-friendly TK or ncurses or whatever GUI, we'd all be far better off than we are today.

    And let me get back to the part where I've said "The command line is powerful and all, as long as you already know _exactly_ what you're doing. It is a pain in the donkey when you don't."

    The problem there is that to get to know exactly what options to type there, you have to invest ludicrious ammounts of time into that. Which for most people isn't justified. If you'll configure printing on your home network maybe 4 times in your whole life, consider the following two situations:

    1. spending 4 hours to learn how to do that with CUPS and only with command line tools. But then you can do that in 30 seconds flat each time.

    2. spending 5 minutes each time doing the same in Windows, through the GUI

    Believe it or not, solution 1 is _not_ an improvement. On the whole, the l33t Unix command line way took 4 hours from your life, while the point-and-drool Windows way took a total of 20 minutes. The winner is... the GUI.

    Yearly millions of hours go into just learning to use some crap software. It isn't learning some l33t skillz, it isn't "getting a clue", it's just _wasted_. It's time when you're _not_ doing what you needed to do in the first place. Time where, like in the example above, instead of already having your file printed on that networked printer, you're still searching through obsolete man pages and trying stuff that fails for no obvious reason.

    --
    A polar bear is a cartesian bear after a coordinate transform.
    1. Re:Command line is NOT your friend by Anonymous Coward · · Score: 0

      I agree with you. That's one of the reasons that CLI zealots always want to use the same editors, etc. They have invested a lot of time learning the one they use now.

      I consider the CLI to be a problem that was solved a long time ago and I don't want to go backwards.

    2. Re:Command line is NOT your friend by Dun+Malg · · Score: 3, Funny
      Double bonus if it outputs some cryptic error messages like "1962 Short School Bus"

      That's a great error message. I think I'll create a whole class of "short bus errors" on the app I'm developing for work.

      --
      If a job's not worth doing, it's not worth doing right.
    3. Re:Command line is NOT your friend by Dun+Malg · · Score: 1

      301 - Short Bus Error: someone has renamed pr0n.jpg to appdata.ini
      302 - Short Bus Error: "where I put my contact list file, you stoopid machine" is not a valid filename
      303 - Short Bus Error: modem you think is at COM1 is actually your mouse
      304 - Short Bus Error: cuppe of beer on thombe ring
      305 - Short Bus Error: this computer is turned off. hold down power button for 4 seconds to turn on
      306 - Short Bus Error: you didn't finish your Kool-Ade and applesauce

      --
      If a job's not worth doing, it's not worth doing right.
    4. Re:Command line is NOT your friend by BandwidthHog · · Score: 1

      I've been casting about for something pithy to replace "There is no spoon" as the error message when one of our Lab machines fails to see the server... I think you can color me inspired as well.

      --

      Quantum materiae materietur marmota monax si marmota monax materiam possit materiari?
  98. Funny by Greyfox · · Score: 1, Informative

    I don't want to know how to operate my car. I just want to get from point A to point B quickly. That would be a much more accurate metaphor for how most non-CS people deal with their computers. And, when you get down to it, how they deal with their cars too.

    --

    I'm trying to teach myself to set people on fire with my mind... Is it hot in here?

    1. Re:Funny by gnu-generation-one · · Score: 1

      "I don't want to know how to operate my car. I just want to get from point A to point B quickly."

      Could I suggest a taxi?

      Or a bike, if A and B are within about 10 miles.

      Specifically, if you don't know enough about how to operate your car to avoid causing harm to others, could I suggest you sell it, and take one of the preceding two suggestions.

  99. Maybe you are using the wrong GUI? by Anonymous Coward · · Score: 0

    Try Mac OS X... 'nuff said.

  100. Here's one for the command line ... by JSkills · · Score: 1

    perl -e"\$_=q#: 13_2: 12/'{>: 8_4) (_4: 6/2'-2; 3;-2'\2: 5/7\_/\7: 12m m::#;s#:#\n#g;s#(\D)(\d+)#\$1x\$2#ge;print"

  101. SRI by HarveyBirdman · · Score: 1

    Why does everyone forget the Stanford Research Institute? They were exploring GUIs in the late 60s. The have the *patent* on the first mouse. I even think they explored the concept of a suite of office applications.

    --
    --- Ban humanity.
  102. Re:There usually are examples... Right at the bott by Stween · · Score: 1

    No, there are often examples. Likewise, there often aren't examples.

    Face it, a lot of man pages just aren't up to scratch.

  103. At the end of the day by HogynCymraeg · · Score: 0

    it's horses for courses. copying huge amounts of files will be far quicker in the CLI, whilst visual editing (imaging, whatever) would REQUIRE a GUI. I think they're complementary technologies, not exclusive.

  104. I'm not so sure... by ericspinder · · Score: 2, Insightful
    Some points of the article make great sense, in particular the familiarity most people have with the keyboard, and the "dialog" with the computer using the command line. But one thing bothers me about the whole drawn out "Aunt Tillie" example, she walks up to the mailbox and uses a movement of the hand, to open the mailbox, she doesn't talk to it, or write a note. Futhermore leaving the open letter on her kitchen table as a reminder to get to it later, is more akin to an open app on a (computer) desktop.

    In my experience there are two kinds of novice computer users (newbies, if you will), those you don't "get it" and those that do. Those that "do get it" will quickly understand that the "little blue 'e'" is not "THE INTERNET" and that they are free to change thier start page for that application (or choose another one altogether). The author choose a bunch of (his words) "the more advanced members" and gave them a little instruction on the command line, to kill a little time, while he tried to catch up the dense. At best, it is just a good way to interest the "soon to become power users", while the rest of the class catches up.

    I use the command line frequently, and am very comfortable telneting (and SSH) to Solaris and Linux servers, but I don't think that most newbies will benifit from the extensive command line instruction, they would need to be truely "productive" on a system.

    --
    The grass is only greener, if you don't take care of your own lawn.
  105. You guys are nuts - should not need to know how by alexhmit01 · · Score: 4, Insightful

    Look, if the car starts bouncing, I know I have a flat tire. If the engine is having problems, a red light on my dashboard tells me to take the car in. When the car struggled to shift gears, I knew it was a transmission problem. The CAR informs me of what is needed and I take it to the specialist. The basic maintenance schedule is given to you when you buy your car, there are no surprises.

    Regarding a license... you need a license because with an automobile because the misuse of an automobile can endanger others.

    Look, I'm a computer engineer by training, know my way around Unix, know my way around NT (MCSE, CCA from old career), and know my way around a CLI. Guess what, when I want to put together a business model, I want a graphical spreadsheet that is out of my way. Do I know ALL the Excel functions? No, but I know the ones I use regularly, and the help system gets me through the rest.

    I have no desire to memorize arcane commands, I want to build the business model. Will I learn arcane commands to speed things up? Sure, but on MY schedule, NOT yours. I buy the machine to let me get my work done, and I pay the premium for a laptop to do so on the road, and I pay the (admitted small these days) Apple premium to have wireless support that is amazing and to be able to have my Unix applications on the road. These are all my choices.

    Guess what, I don't pay Open Source programmers, so they don't have to listen to me. However, don't complain that I don't have an open source desktop when you put out bizarre GUIs that interfere with my workflow.

    My Mac stays out of my way and lets me do work, MUCH faster than Windows or Linux would let me. In the end, that keeps Linux a step away from "global domination" or whatever the goal of the week is.

    My computer should work for me, not the other way around. Sure, I had to demonstrate an understanding of traffic laws to get on the road. But guess what, EVERY car I drive is nearly identical, and the controls don't change. That consistent UI makes cars a success.

    Windows has problems, no question. But it is "good enough" for most, and it is pretty cheap.

    For a single-purpose machine, Linux is fine, I can train my people on 1-2 applications... If GNUStep was further along, or Qt didn't blow as a RAD tool, then our dedicated personnel would be on Linux machines and not eMacs. However, if you think that Linux is good enough for a business power user, you're sadly mistaken.

    The integration of the Office Suite has been AMAZING for a few years, and the combination of Word, Excel, and Powerpoint is TERRIFIC for business users. Until GNU can mimick that power (NOT mimick the widgets, but the power and integration) then it is NOT a viable desktop system for the modern business power user.

    1. Re:You guys are nuts - should not need to know how by Anonymous Coward · · Score: 0

      Look, if the car starts bouncing, I know I have a flat tire. If the engine is having problems, a red light on my dashboard tells me to take the car in. When the car struggled to shift gears, I knew it was a transmission problem. The CAR informs me of what is needed and I take it to the specialist. The basic maintenance schedule is given to you when you buy your car, there are no surprises.

      And you know most of that stuff because you know what's in a car. People don't know what goes on in a computer though, so when the mouse starts to jerk around the screen, they don't know their system is temporarily dealing with a heavy load. When a dialog comes up saying they need to free up disk space, they scratch their heads. If they're just smart enough to be dangerous they'll start dragging things like system32.dll to the trash.

      Just imagine if you didn't know cars contained a thing such as the transmission. You wouldn't know something was wrong with it if you didn't even know it existed. But, that's about the level of understanding that the average computer user has. It is not unreasonable to ask them to learn a little bit about what's going on in that beige box. It will only make things less frustrating for them.

      And as for using the command line, we're not asking people to learn the intricacies of grep, sed, and awk. Users should just be able to browse the file system, manage files, run commands, and maybe do some light maintainence. Is it too much to ask a user to learn how to use ls, mv, cp, rm, pico/nano/light-edit-of-choice, less, and maybe even df and top? They don't even need to know all the switches. Teach a user "ls -al | less", and they'll be able to do anything. Show them man, and if they're curious enough they might actually start to learn on their own, but they won't need to. A user that understands those most basic commands will be way ahead of the average user today.

      Rememeber folks. It was the internet that brought computing to the masses, not Windows. People never had trouble learning DOS before a decent GUI was available, so why should they have trouble with command lines now?

    2. Re:You guys are nuts - should not need to know how by yoz · · Score: 1

      I was going to do a more in-depth reply to this, but then I hit this line...

      People never had trouble learning DOS before a decent GUI was available ... and now I just want to know which utopian planet our Mr Coward is from.

    3. Re:You guys are nuts - should not need to know how by Azghoul · · Score: 1

      I don't think you realize how many people used WordPerfect 5.1.

      Just because the technology wasn't as cheap back then don't make the mistake of thinking they were any more difficult to use.

    4. Re:You guys are nuts - should not need to know how by yoz · · Score: 1

      I don't think you realize how many people used WordPerfect 5.1.

      Oh, I do. But that doesn't mean that it was easy to learn. It just means that they somehow, eventually, managed to get WP booted - probably because their work depended on it.

    5. Re:You guys are nuts - should not need to know how by Peaker · · Score: 1

      or Qt didn't blow as a RAD tool

      Huh? The Qt designer is the best designer out there, and the Qt toolkit is the fastest toolkit out there to code with.

      With the Qt Designer 3 (and/or KDevelop), you have all the RAD integration you have in other tools, except Qt also does all of the layout management well, without having to worry about internationalization, etc.

      Whatever it is you use, it is probably far worse off than Qt, in the RAD perspective and otherwise :-)

    6. Re:You guys are nuts - should not need to know how by Anonymous Coward · · Score: 0

      WordPerfect was very specifically designed to have an "expert interface" that was to be learned by professional typists. It was more difficult to use, by design.

    7. Re:You guys are nuts - should not need to know how by hInstance · · Score: 1
      Remember folks. It was the internet that brought computing to the masses, not Windows. People never had trouble learning DOS before a decent GUI was available, so why should they have trouble with command lines now?
      Actually, I would say that it was a GUI (the web) that brought the masses to the internet. FTP and Gopher just weren't doing the trick.
  106. Re:Use the GUI to... by pandrijeczko · · Score: 1
    - Monitor all incoming connections to your computer, automatically shut down any connections that look suspicious and email you a warning that it's done that.

    - Automatically convert a directory full of graphics images into JPEG/GIF/etc. formats, achive them up and burn them straight to CD

    - Play a computer game when you're really bored, have no games installed but have access to a terminal, the Internet and your home machine with Nethack or an Infocom adventure on it.

    - Use bash and pine to access your ISP email from work when you're sick and tired of the ISP's web interface timing out before you've finished entering a reply.

    I'm productive because I use the GUI for some things and the CLI for others. What's your excuse?

    --
    Gentoo Linux - another day, another USE flag.
  107. Mac solved this in the 90s by bonaldi · · Score: 2, Interesting

    I'm not sure why nobody's picked up on this yet, probably the horrible must-work-in-a-ssh mentality. Sure, people who can ssh in can use man -k. But for the rest of us, typing in an xterm or similar, the original Mac programming environment - mpw - had the best method by far of helping someone on the command line.

    It was called Commando, and if you couldn't remember a command's options, you could type it, press apple-enter (IIRC) ... and a dialog box popped up with full-on gui goodness to let you enter the command. While you were chaning the options, it wrote and rewrote the exact command line you had to use in a pane at the bottom of the window. Genius.

  108. That might be true an exception by drgonzo59 · · Score: 3, Interesting

    It turns out that companies like Sun and IBM have researched this before. The results they came up with is that the new users found their way around and accomplished tasks faster with a GUI interface, but were more likely forget by the next time how to do it. With command line, it took a while to learn it, but then the retention rate was higher. The research, I believe, the systems used were running Solaris/AIX respectively with their X Windows vs. the command like on the same systems.

  109. Reset the boot to OS9... by grocer · · Score: 1

    Under "Start Up Disk" in the Control Panel in Jaguar (10.2.x), it will boot into OS9 by default...so it claims...personally, I've only booted into OS X as the majority of apps I use are OSX or Fink/XFree86 based. I have a hanful of OS9 apps...Diablo, Starcraft, Warcraft, and Netscrape for Launchcast which launch OS9 when I open them.

  110. Not Much Help by wizard992 · · Score: 1

    This article, to me, smacks of nothing more than Linux advocacy. While advocacy is not bad in and of itself, when it has misleading information it is as bad as Microsoft or whomever else's FUD.

    How exactly does learning the Linux command line help these people move forward in an increasingly connected workplace? The article specifically stated that as one of the main goals of the class, however almost nothing that was taught will actually be of any use. Basic fact, if these people are going to be using a computer in the workplace, it will have a GUI, most likely Windows.

    While it is great they have started to lose their fear of computers and have learned some useful skills, this teaching method does nothing to help them with a GUI. IMO, the energy expended to create metaphors for the CLI would have been much better spent creating metaphors for the GUI.

  111. Hybrid GUI-CLI by galtenberg · · Score: 1

    Why not provide a hybrid solution... a CLI 'master window' for the GUI.

    Any experience with true newbies, facing a windowed desktop and visual hierarchical structure for the first time, reveals that almost none of this works for them, and they stick to the Start menu (or equivalent), fearful of virtually everything else.

    But what if a window user could open up a Messenger-like window and just talk to the OS? They could be guided thru the windows, or they could delve deeper, based on their own queries, or they could just kickoff functionality without having to double-click a single icon. An AIML-enabled CLI could do this wonderfully.

    The point is, a futuristic CLI window is what's missing.

    Anybody thinking this is a Linux v. Windows debate is invested in a Linux v. Windows debate.

    1. Re:Hybrid GUI-CLI by Trurl's+Machine · · Score: 1

      But what if a window user could open up a Messenger-like window and just talk to the OS?

      Microsoft tried this already. It was the most hated innovation in the MS Office package. The dreaded Mr Paperclip was a test balloon of a whole new concept for future Windows UI - developed by Gates' wife, Melinda as the "Microsoft Bob". The idea was to have a friendly face, impersonating the OS, that would tell you "sorry, your drive is almost full" and listen to your commands like "help me configure my printer, Bob". Obviously, it was not a good idea, as any MS Office user will assure you. You can't "just talk to the OS", it's not a blinkenlicht machine from a 1960's science-fiction flick. It sounds good in a movie ("open the goddamn door, Hal!"), but it's hopeless if you try to organize your work this way. No one really want to drive his car or operate his TV set by voice commands ("please hit the brakes, will ya?", "switch the bloody channel, I hate this show" etc.).

    2. Re:Hybrid GUI-CLI by galtenberg · · Score: 1

      When comments are given a '1', does that mean (A) They hate my comment, (B) I'm a nobody (need karma and more posts), (C) I'm a fool, or (D) Don't take it personally, it's not quite objective...?

      I'm simply curious. I've yet to enter the 'next echelon' of comment posting (Score=2), like this fine gentleperson. I'd rather not pollute the slashdot space, and that's what the Score=1 seems to say.

    3. Re:Hybrid GUI-CLI by Anonymous Coward · · Score: 0

      Answer is (B). Read the FAQ.

  112. Re:There usually are examples... Right at the bott by zymurgy_cat · · Score: 1

    Where you would never think to look.
    Actually, no there aren't any in general. Sometimes, yes, but for the most part, no.

    --
    -- Fugacity: Confusing chemists since 1908
  113. Mac OS X GUI vs. GNOME/KDE etc. by Matt+Clare · · Score: 1

    The problem with *nix GUIs is that they are simple CLI command replacements or an editor for a specific config file. *nix GUIs are rarely designed to achieve a task.

    When I was in public school I had a couple of Amigas, in High school a Compaq (dark days), in University I got a PowerBook with OS 10.2.whatever and now I've graduated to the working world and my own Panther machine and a few servers to admin (SuSE and RedHat AS).

    I've found that for the most part, Linux world GUIs are GUIs for the associated command or config file (esp. with RH AS!). When we installed RH AS I looked forward to perhaps using the some advanced GUIs for server config to save time etc. - I even wondered about setting up a secure VNC system.

    NO! As most to who read the article would agree - It's quicker to just do it on the CL then wade through a GUI. Most Linux GUIs are useless and just mangle config files, the CLI is the only way to get anything meaningful done.

    Compare this to a Mac OSX, where the GUIs are designed to do a specific task - not replace a specific command. The whole printing situation on *nix has been used to illustrate this before. My under standing of Panther Server is that it has applications that preform tasks, not replace a command - but I have yet to use its tools.

    If linux GUIs continue to be just replacements of commands and config files then we'll never see linux on the desktop.

    Simple Example: If Aunt Tillie wants her printer to work she'll need to ensure CUPSD is running in level 5 in the init level GUI plus working with all the other GUIs with an actual printer icon.

    --
    .\.\att Clare
  114. And now, everybody read by bkhl · · Score: 3, Informative

    In the Beginning was the Command Line, by Neal Stephenson. It's available in text form from http://cryptonomicon.com/beginning.html.

  115. Command line is more consistent-Implimentation. by Anonymous Coward · · Score: 0

    I think it only fair to point out that your examples is a critique of implimentation than the CLI concept.

    "$ edit foo"
    [appropriate editor pops up]
    "$ print foo to printer local"

  116. Variable by pjt33 · · Score: 1

    Some man pages are very good at explaining what the program does - man gzip, for example. Some are awful - man rpm comes to mind as one I find useless, although I suppose people who've been using rpm for a couple of years might find it a helpful reference.

  117. Tech support from the Command Line by ferralis · · Score: 1

    Since I have the dubious honor of being the resident egghead in my clan, I'm often asked to help support systems for relatives--

    If at all possible, over the phone anyway, I have 'em drop to a command line. It's MUCH easier to diagnose/remedy problems when you can clearly and concisely convey exactly what to do:

    "OK, type C:, that's Charlie, colon"

    "No, I didn't know that about Uncle Charly. I hope they can fix that..."

    --
    Any generalization is a stupid one.
  118. CLI story - success over the GUI by Anonymous Coward · · Score: 3, Interesting

    I think GUIs and the CLI both have there place. However, undoubtably, the CLI is simpler, faster, and more powerful in certain circumstances.

    Just recently, a colleague (running Windows XP) and I (running Linux) took our laptops to a computer lab providing IP addresses via DHCP. My colleague, after spending literally 20 minutes fighting with his GUI receiving ambiguous error messages and having the OS seemingly do the exact opposite of what his intentions were, finally gave up. Some setting, hidden in XP, was refusing to let him use DHCP and insisted on trying to connect to his usual ISP.

    On the contrary, after 3 seconds editing a config file, I confidently typed "/etc/rc.d/network start" and, as expected, had instant network access.

    I think this is a simple example of the many (not all) areas in which the CLI is simply superior.

    1. Re:CLI story - success over the GUI by Anonymous Coward · · Score: 0
      Windows has some nifty command line networking apps. Tell your cow-orker to try
      C:\>net start "dhcp client"
      or have a look at the many features of netsh.
  119. So why don't we just make better black boxes? by yoz · · Score: 1

    Our black-boxing people usually end up overheating their engine (and blocking traffic and creating big jams in the Alps, grumble! ;) You see: it pays to know at least a bit about what's under the black cover of your black box!

    No, it pays to actually design black boxes that warn users about things like this.

    You can't account for every stupid thing that a user might do. But you can watch for common problems and either take evasive action or alert the user. (This is what the oil light on your dashboard is for)

    We have the technology, you know. And when there's a simple problem that's easily spotted, it's far easier to encode the problem and its solution in easily-replicable software than it is to try and train all the users.

    There's a common theme in this forum of people getting all uppity about "stupid users". But users aren't stupid. They just don't have time to learn everything. And given that we have the technology to help them, why don't we?

    1. Re:So why don't we just make better black boxes? by ControlFreal · · Score: 1

      There's a common theme in this forum of people getting all uppity about "stupid users". But users aren't stupid. They just don't have time to learn everything. And given that we have the technology to help them, why don't we?

      Again, as I stated in my original comment, I understand the frustration, which is also why I said that using black boxes is ok. My point was not to say that black boxing is wrong: on the contrary, it's the best solution that technology can provide us with in most cases.

      However, even when we have black boxes, it pays to actually know a bit more than the black shiny cover of that box. I'm not saying that everybody should know this, but you do have a (fair!) advantage if you do know a bit more.

      The point I was trying to make is that while using black boxes is ok, and not knowing what's actually going on is ok most of the time, actually denying that the piece of equipment you're operating is complex does seem very strange to me: if you use a black box, you should at least be aware of the fact that the thing is complex (even if you don't know how it actually works).

      The problem I have with this denial is, like I said, people operating the equipment purely from their simple model (that does not reflect how the equipment works), and not even knowing, or acknowledging, that the device is more complex (regardless of the fact that they don't understand the complex device, but like I said, that doesn't matter so much).

      --
      Support a Europe-related section on Slashdot!
    2. Re:So why don't we just make better black boxes? by yoz · · Score: 1

      Ah, I see.

      I had inferred from your original comment that black boxes are inherently problematic because they cause failures to occur due to their users not seeing the inherent complexity. My response to this is that black boxes should be better designed, rather than the users having to be taught. But I realise that this is a rather idealistic position. The more complex a device is and the more varied its uses (the computer being both one of the most complex and most varied in use) the harder it is to cover all the problem bases.

      I think one of the main causes of problems lies in the incompleteness of UI analogies - modern operating systems portray an idealised, simplified view of the machine, but do not implement this view consistently all the way down to the low-level. Users, misunderstanding the analogies presented by the OS, hit a problem; but due to believing the OS's version of how things work rather than the real underlying workings, stubbornly persist in the same way and make the problems worse. I should make it clear that I have no problem with simplified UI analogies, as I think it's the only way to get people to use a computer without driving them mad - however, it's when those analogies are insufficiently implemented that operational disconnects are caused. The user believes the simplified model because they were taught that it is how you deal with the machine - and often, these models are complex enough without wanting to look further.

  120. Little script I made just for this purpose by carlmenezes · · Score: 2, Interesting

    Simple little script to figure out what a command does. Works on most of them. Keeps me from having to do a "man [command]" just to see what it does. It's just something I put together in a minute, so forgive me if you don't think it's done the right way - it works quite well for me. Feel free to use it if you like.

    #!/bin/bash
    test=$1
    if [ "$test" = "" ] ;
    then
    echo " desc - Short for describe. Display a one line description of what a command does."
    echo " Usage example:"
    echo " desc ls"
    else
    if [ "$test" = "desc" ] ;
    then
    echo " desc - Display a one line description of what a command does."
    else
    man $test | grep "$test - "
    fi
    fi

    --
    Find a job you like and you will never work a day in your life.
    1. Re:Little script I made just for this purpose by Anonymous Coward · · Score: 0

      public static void Main() { System.out.println("Learn a real language you hack!"); return null; }

    2. Re:Little script I made just for this purpose by joshmccormack · · Score: 1

      Very nice. Pretty much the same as whatis, but still nice.

      Another idea is use the message of the day to encourage people to use this command. Nothing like repetition to encourage it's use!

    3. Re:Little script I made just for this purpose by chgros · · Score: 1

      s/desc/"\\$0"/g
      $0 = invocation name
      So if you decide to change its name it still works :-)

    4. Re:Little script I made just for this purpose by Anonymous Coward · · Score: 0

      10 print "I already did, and I learnt java too"
      20 goto 10

    5. Re:Little script I made just for this purpose by Anonymous Coward · · Score: 0
      Faith - before you experience it, it seems like nothing. Once you do, it's everything.

      The same could be said for crack cocaine. Oh, wait, someone did: "Religion is the opiate of the masses."

  121. You missed a bit! by pjt33 · · Score: 1

    You forgot to tell us how its much easier to chain a series of tasks together using drag-and-drop than to type a pipe symbol.

  122. Ever tried telling people... by WWWWolf · · Score: 4, Insightful

    Ever tried telling people on phone how to do a task in Windows?

    "Click Edit, Options, and... err, wait, yeah, Page settings, Margins..." (5 minutes later, or 10 minutes if you don't have the same program in front of you) "Wha? I told you to click on OK, not Cancel!" (10 minutes fly by...) "So it doesn't work? What do you mean there's a setting like that? Why didn't you say so? I'm deaf and stupid. Sorry."

    As opposed to:

    "Just type '/sbin/ifconfig ppp0'. ...Wha? that's 'slash-s-b-i-n-slash...'" and a moment later "So it isn't even connected. Right. Try typing 'pon'."

    The GUIs may be good to work with, but CLI is easier to explain. Especially if you're used to doing GUI things in one way and others do it the other way.

    GUI is like a religion - you "learn" it, and only you can explain what it means to you. CLI is like science - you learn it, you can explain it, and it means the same thing to everyone - except people who argue about "useless uses of cat(1)" and proper order of parameters, and whether to use sed(1) or perl(1), of course.

    And now I need the freaking coffee already.

  123. Re:disclaimer by Anonymous Coward · · Score: 0

    Is that you, Prince Charles?

  124. Recycled FUD by banzai51 · · Score: 2, Insightful

    Wow, recycled FUD from 1984. We've already had this battle. GUIs won, get over it. New user like to see what they are doing. Clicking is more intuitive than typing. CLI has it's place and use, but don't try and tell me Grandma is going to feel better using CLI over GUI 2 weeks or 2 years down the road. It just ain't true.

    1. Re:Recycled FUD by John+Meacham · · Score: 2, Informative

      Umm. no.
      Different people like different things, I have obtained a fair number of linux converts who knew nothing about unix, but saw me typing commands at the computer and wanted to do the same. GUI has in no way 'won', they were never really in competition.

      --
      http://notanumber.net/
    2. Re:Recycled FUD by ediron2 · · Score: 1

      Bill Machrone wrote a column a couple years ago about watching a senior relative of his (his mom?) with a computer, and how dramatically it showed how flawed computer interfaces still are.

      I remember the article because I'd just upgraded grandma's computer.

      Grandma's 93 now. She likes her Ceiva. Everything else pretty much never has caught on. But we came closer with CLI than with GUI. She used to type and print on an older DOS PC. Frankly, I think I could have gotten somewhere with a modern version of bank street writer, if anyone remembers that simple program.

      Some specifics: Grandma owned and ran a dairy, worked as a short order cook and in a potato processing plant's trim-line. Since she retired from the trim-line work in the 60's, there was no such thing as carpal tunnel. But between RSI and arthritis and just being OLD, she's lost the *FINESSE* needed to control a mouse.

      Watching her use a GUI is excruciating. She can't hold the mouse still enough to point and click. Dragging is worse. And double-clicking? Well, what she does ends up accidentally rearranging the desktop (drag-n-drop, revisited). She never does actually succeed in a timely double-click, so in fairness, the computer is worthless since a half-dozen tries with me as her coach pretty much scrambled things irretrievably (it's scary to watch!) with no success. My next visit, I came with accessibility research, mouse drivers, and alternates (click, then press enter... stuff like that). Failed. The next visit was a trackball. No dice. Instead of ease of use, I had complex instructions. Further, any of her umptyzillion grandkids, great-grandkids (the great-greats exist, but are too young to type) could mangle stuff and all instructions failed to make sense.

      I looked at mailstations. Tiny function keys (borderline unreadable for her) and a couple bizarre icons, and text-only email. I've considered others, but all computer-type solutions have flaws I suspect she can't surmount.

      End result: the computer went to a cousin's home. They needed it. Granny sends me a card or two via snailmail & we talk on the phone. And, like I said, the ceiva seems to work, since it JUST IS. No button pushin' needed at her end.

      Don't try and tell me Grandma's going to USE a GUI. 2 weeks, two years down the road, same difference. It's unfit for some people's needs, my grandma in particular.

      (Amusingly, someone mentioned in today's Trade Show article that watching folks test-drive (use/abuse) your product is incredibly educational. They've obviously overlooked this demographic).

    3. Re:Recycled FUD by banzai51 · · Score: 1

      ummm, no. People don't like lots of different interfaces. People proved that by voting with thier wallets. The CLI predates the GUI by several decades. People reject CLI. This fight has already been fought. Sorry, move along. Everything you throw up in defense of CLI will only cement your cluelessness with the end user experience. Not the computer enthusist experience, the end user experience. You know, those people the Linux community won't listen to when it comes to the issue of Linux on the desktop.

    4. Re:Recycled FUD by banzai51 · · Score: 1

      Well, your one user example flies against fact with general computer usage, sales, and trends. It also flies in the face of nearly every end user experience I've seen. And since you heard it second had, I highly doubt its true.

    5. Re:Recycled FUD by ediron2 · · Score: 1
      Um... Machrone's mom was another case. I was writing about my grandmother. Every word's true and first-hand.

      Nearly every end user you deal with is 92 and has arthritis? Wow, how's IT pay at that rest home? ;-)

      I agree that most folks prefer GUI's, but some prefer CLI's. Others find both hopeless. Of the two, my grandma prefered typing only. The reasons are often more than just how we THINK, and that was what I hoped to convey. Every analyst I've read in the last decade agrees that the future is in appliances. Neither CLI or GUI, or some of both. A few keys, a status screen, and rom-based so there's nothing to mess up. Simpler.

  125. GUI? by vbrtrmn · · Score: 1

    My PM left last week, he said if I wanted to use his Linux box, that I could use the GUI. I told him I didn't know how to use the GUI and that I've only used it 10 times. He looked at me strangely.

    --
    it's a sig, wtf?
  126. Answers by Anonymous Coward · · Score: 0

    No.
    Yes.
    Don't bother.
    No.
    Definately not.
    No.

  127. ARGH by Gothmolly · · Score: 1

    I always fsck that up! But you know what I meant. Nice one. =8-)

    --
    I want to delete my account but Slashdot doesn't allow it.
  128. Try 'man rpm' by Black+Perl · · Score: 4, Insightful

    RPM is supposed to be easy to use... but the dang man page is so long... Here's just the SYNOPSIS section at the beginning:

    NAME
    rpm - RPM Package Manager

    SYNOPSIS
    QUERYING AND VERIFYING PACKAGES:
    rpm {-q|--query} [select-options] [query-options]

    rpm {-V|--verify} [select-options] [verify-options]

    rpm --import PUBKEY ...

    rpm {-K|--checksig} [--nosignature] [--nodigest]
    PACKAGE_FILE ...

    INSTALLING, UPGRADING, AND REMOVING PACKAGES:
    rpm {-i|--install} [install-options] PACKAGE_FILE ...

    rpm {-U|--upgrade} [install-options] PACKAGE_FILE ...

    rpm {-F|--freshen} [install-options] PACKAGE_FILE ...

    rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts]
    [--notriggers] [--repackage] [--test] PACKAGE_NAME ...

    MISCELLANEOUS:
    rpm {--initdb|--rebuilddb}

    rpm {--addsign|--resign} PACKAGE_FILE ...

    rpm {--querytags|--showrc}

    rpm {--setperms|--setugids} PACKAGE_NAME ...

    select-options
    [PACKAGE_NAME] [-a,--all] [-f,--file FILE]
    [-g,--group GROUP] {-p,--package PACKAGE_FILE]
    [--fileid MD5] [--hdrid SHA1] [--pkgid MD5] [--tid TID]
    [--querybynumber HDRNUM] [--triggeredby PACKAGE_NAME]
    [--whatprovides CAPABILITY] [--whatrequires CAPABILITY]

    query-options
    [--changelog] [-c,--configfiles] [-d,--docfiles] [--dump]
    [--filesbypkg] [-i,--info] [--last] [-l,--list]
    [--provides] [--qf,--queryformat QUERYFMT]
    [-R,--requires] [--scripts] [-s,--state]
    [--triggers,--triggerscripts]

    verify-options
    [--nodeps] [--nofiles] [--noscripts]
    [--nodigest] [--nosignature]
    [--nolinkto] [--nomd5] [--nosize] [--nouser]
    [--nogroup] [--nomtime] [--nomode] [--nordev]

    install-options
    [--aid] [--allfiles] [--badreloc] [--excludepath OLDPATH]
    [--excludedocs] [--force] [-h,--hash]
    [--ignoresize] [--ignorearch] [--ignoreos]
    [--includedocs] [--justdb] [--nodeps]
    [--nodigest] [--nosignature] [--nosuggest]
    [--noorder] [--noscripts] [--notriggers]
    [--oldpackage] [--percent] [--prefix NEWPATH]
    [--relocate OLDPATH=NEWPATH]
    [--repackage] [--replacefiles] [--replacepkgs]
    [--test]



    Each of the above options is explained in detail, but there are no FAQ-style examples. It's no wonder the distributions are putting layers on top of rpm (urpmi, yum, etc). I like yum, and largely because the man page is short and to the point! It only takes a few seconds to figure out what I need to do.

    --
    bp
    1. Re:Try 'man rpm' by SLi · · Score: 1

      If you think that's ugly, I guess you've never seen the man page of pavuk (a robot like wget). The synopsis:

      pavuk [-mode {normal | resumeregets | singlepage | singlereget | sync | dontstore | ftpdir}] [-X] [-runX] [-bg/-nobg] [prefs/-noprefs] [-h] [-v] [-progress/-noprogress] [-stime/-nostime] [-xmaxlog $nr] [-logfile $file] [-slogfile $file] [-auth_file $file] [-msgcat $dir] [-language $str] [-gui_font $font] [-quiet/-verbose] [-cdir $dir] [-scndir $dir] [-scenario $str] [-dumpscn $filename] [-lmax $nr] [-dmax $nr] [-leave_level $nr] [-maxsize $nr] [-minsize $nr] [-asite $list] [-dsite $list] [-adomain $list] [-ddomain $list] [-asfx $list] [-dsfx $list] [-aprefix $list] [-dprefix $list] [-amimt $list] [-dmimet $list] [-pattern $pattern] [-url_pattern $pattern] [-rpattern $regexp] [-url_rpattern $regexp] [-skip_pattern $pattern] [-skip_url_pattern $pattern] [-skip_rpattern $regexp] [-skip_url_rpattern $regexp] [-newer_than $time] [-older_than $time] [-schedule $time] [-reschedule $nr] [-dont_leave_site/-leave_site] [-dont_leave_dir/-leave_dir] [-http_proxy $site[:$port]] [-ftp_proxy $site[:$port]] [-ssl_proxy $site[:$port]] [-gopher_proxy $site[:$port]] [-ftp_httpgw/-noftp_httpgw] [-ftp_dirtyproxy/-noftp_dirtyproxy] [-gopher_httpgw/-nogopher_httpgw] [-noFTP/-FTP] [-noHTTP/-HTTP] [-noSSL/-SSL] [-noGopher/-Gopher] [-FTPdir/-noFTPdir] [-noCGI/-CGI] [-FTPlist/-noFTPlist] [-FTPhtml/-noFTPhtml] [-noRelocate/-Relocate] [-force_reget/-noforce_reget] [-nocache/-cache] [-check_size/-nocheck_size] [-noRobots/-Robots] [-noEnc/-Enc] [-auth_name $user] [-auth_passwd $pass] [-auth_scheme 1/2/3/4/user/Basic/Digest/NTLM] [-auth_reuse_nonce/-no_auth_reuse_nonce] [-http_proxy_user $user] [-http_proxy_pass $pass] [-http_proxy_auth 1/2/3/4/user/Basic/Digest/NTLM] [-auth_reuse_proxy_nonce/-no_auth_reuse_proxy_nonc e] [-ssl_key_file $file] [-ssl_cert_file $file] [-ssl_cert_passwd $pass] [-from $email] [-send_from/-nosend_from] [-identity $str] [-auto_referer/-noauto_referer] [-alang $list] [-acharset $list] [-retry $nr] [-nregets $nr] [-nredirs $nr] [-rollback $nr] [-sleep $nr] [-timeout $nr] [-preserve_time/-nopreserve_time] [-preserve_perm/-nopreserve_perm] [-preserve_slinks/-nopreserve_slinks] [-bufsize $nr] [-maxrate $nr] [-minrate $nr] [-user_condition $str] [-cookie_file $file] [-cookie_send/-nocookie_send] [-cookie_recv/-nocookie_recv] [-cookie_update/-nocookie_update] [-cookies_max $nr] [-disabled_cookie_domains $list] [-disable_html_tag $TAG,[$ATTRIB][;...]] [-enable_html_tag $TAG,[$ATTRIB][;...]] [-tr_del_chr $str] [-tr_str_str $str1 $str2] [-tr_chr_chr $chrset1 $chrset2] [-index_name $str] [-store_index/-nostore_index] [-store_name $str] [-debug/-nodebug] [-debug_level $level] [-browser $str] [-urls_file $file] [-file_quota $nr] [-trans_quota $nr] [-fs_quota $nr] [-enable_js/-disable_js] [-fnrules $t $m $r] [-store_info/-nostore_info] [-all_to_local/-noall_to_local] [-sel_to_local/-nosel_to_local] [-all_to_remote/-noall_to_remote] [-url_strategie $strategie] [-remove_adv/-noremove_adv] [-adv_re $RE] [-check_bg/-nocheck_bg] [-send_if_range/-nosend_if_range] [-sched_cmd $str] [-unique_log/-nounique_log] [-post_cmd $str] [-ssl_version $v] [-unique_sslid/-nounique_sslid] [-aip_pattern $re] [-dip_pattern $re][-use_http11/-nouse_http11] [-local_ip $addr] [-request $req] [-formdata $req] [-httpad $str] [-nthreads $nr] [-immesg/-noimmesg] [-dumpfd $nr] [-dump_urlfd $nr] [-unique_name/-nounique_name] [-leave_site_enter_dir/-dont_leave_site_enter_dir] [-max_time $nr] [-del_after/-nodel_after] [-singlepage/-nosinglepage] [-dump_after/-nodump_after] [-dump_response/-nodump_response] [-auth_ntlm_domain $str] [-auth_proxy_ntlm_domain $str] [-js_pattern $re] [-follow_cmd $str] [-retrieve_symlink/-noretrieve_symlink] [-js_transform $p $t $h $a] [-js_transform2 $p $t $h $a] [-ftp_proxy_user $str] [-ftp_proxy_pass $str] [-limit_inlines/-dont_limit_inlines] [-ftp_list_options $str] [-fix_wuftpd_list/-nofix_wuftpd_list] [-post_update/-nopost_update] [-info_dir $dir] [-mozcache_dir $dir] [-aport $list] [-dport $list] [-hack_add_index/-nohack_add_index] [-default_prefix $str] [-rsleep/-norsleep] [-ftp_login_handshake $host $handshake] [-js_script_file $file] [URLs]

    2. Re:Try 'man rpm' by hackstraw · · Score: 1

      But thats only 65 lines of text! For the terse, version try 'rpm --help'. That's 138.

      I've been using Linux for 10 years now (now I'm a sysadmin), and redhat (thus rpms) for about 7 and I still find myself trying to figure out how to use rpm.

      I don't know what I would say to a newbe about that command besides its half broken, complicated, it sucks, and I still don't know much about it. And, I've even created an rpm before. Never again.

    3. Re:Try 'man rpm' by Anonymous Coward · · Score: 0

      You dick. RPM is not easy to use, portage is easy to use. And, it has an even bigger manual!

  129. Consistency by w8300v-2 · · Score: 1

    Consistent UI layout/behavior is what makes any system, whether GUI or otherwise, easy to learn, use, and understand. The old Wang mainframe is an example of this - the function keys on the keyboard ('PF' keys) almost always had the same meaning, whatever program/menu you were in - PF5 was always next page (or record), etc. Most GUI programs have nine different ways to do things - the same function is on a toolbar, buried in a menu, and has a different shortcut key than the next program.

  130. Easy to use != easy to learn by Anonymous Coward · · Score: 1, Insightful

    CLIs are easy to use and very efficient for many tasks. However, that does not make them easy to learn. The discoverability of basic tasks with a GUI makes that approach very powerful for learning.

    1. Re:Easy to use != easy to learn by Todd+Knarr · · Score: 1

      The article covered this. Consistently, the newbies had an easier time finding out what else they could do and learning how to do it from the command line than they had in the GUI. Apparently the GUI isn't all that discoverable if you're not a geek.

    2. Re:Easy to use != easy to learn by DaCool42 · · Score: 1

      I'm a power user by all definitions of the word. I have used both CLI and GUI environments extensively. I have a lot of experience with both Linux and Windows. Both a GUI and a CLI can be horribly "undiscoverable". I have wasted many hours hunting around menus and options of Microsoft's products just to find one stupid checkbox. I have also wasted many hours on CLI tasks, although usually due to me being stubborn and wanting to find the "best" way to do something rather than just solution that works.

      A good GUI is discoverable. A good CLI is also discoverable (as evidenced in the article by users who quickly learned to use man, --help, -h, tab completion, etc). The real problem is that a good GUI is INCREDIBLY difficult and time consuming to make. A good CLI, on the other hand, is quite simple to make.

      --

      ----
      All of whose base are belong to the what-now?
  131. Bad GU I design by 91degrees · · Score: 1

    My mid 80's computer (a Commodore Amiga) had a very simple GUI. I shoved in a disk, and after about 30 seconds, I had a screen with precicely one obvious icon to prod with a mouse. No choice. No complexity.

    Now, at this stage, we get to the complex bit. I had to learn to use the mouse to move the cursor (fairly intuitive really), and then double click the icon. This stage is less obvious, but it's about all I need to know. Once we get there, something has happened. A window has opened and it contains another button. Repeat the previous step, and you get the application.

    Under Windows, things are a lot more complicated. You have the obvious "My computer" icon. Clearly you don't want the network, or the trashcan, so that's the obvious first button to press. It's also the wrong one. It comes up with a list of the internals of the machine. It turns out that I made a mistake. So, I press "start". Well, I guess it's a fairly obvious second choice, but I had to backtrack. What do I want now? Run, or programs? Run doesn't work too well. Let's try programs. Experimentation gets me there in the end, but it's not totaly intuitive, and mistakes are demoralising.

    Program Manager and Windows 3.1 were a lot better in this respect. It was obvious which bit to click on there.

  132. Command names by Julian+Morrison · · Score: 2, Insightful

    I actually think it's a good thing that unix-ish commands have wierd names.

    For a beginner learning unix, there's a conceptual hurdle they have to jump: that commands are not "commands" at all, but specific named programs which can be used as tools.

    Lack this understanding, and you're confused and trying to second-guess a nonexistent "designer". Gain it, and you can start to ask the right questions. Not "how do I get help" but "what program displays the help documentation", for example. Or, if one program isn't adequate for a task, might there be another which could do it better?

    In that regard it actually helps that unix programs have idiosyncratic names. "grep" is grep, it's not some generic "search", and it's probably not the only tool on the system useful for "searching".

  133. Nitpicking vocabulary and grammar by Ethelred+Unraed · · Score: 1
    # ./buggy-program
    SIGSEGV (Segmentation fault) recieved.
    The program has been terminated.
    File a bug report? (Y/n) _

    That's the thing: such words as "terminated" mislead and disconcert the user -- it makes it sound like the program itself was destroyed, not the copy in RAM. Other such grammatical flaws abound in Windows as well -- "illegal instruction" is a particularly bad one -- that confuse and irritate the user.

    As for mapping an error message in plain English to specific problems or errors, it just takes a little thinking -- and effort to avoid using misleading terms. In your examples:

    SIGSEGV could be "Sorry, this program quit unexpectedly because of a memory error."

    ENOMEM could be "Sorry, this program quit unexpectedly because it used too much memory on your computer."

    ENOSYS could be "Sorry, this program quit unexpectedly because it tried to access a part of the system that does not exist."

    The idea of having a bug buddy installed also would be an excellent idea -- it makes the user feel more comfortable with the error having occurred (in my experience users tend to blame themselves for everything -- "what did I do to make it crash?" -- whereas the bug message would let them know it wasn't their fault). Such little things make using computers a lot less painful and irritating.

    I suppose it would help if developers imagined all users to be crotchety Andy Rooney types. ;-)

    FWIW Mac OS X 10.3.x gets pretty close to the ideal solution for a GUI (unless you insist on the Holy Grail of error-free coding -- fat chance :-P ). In OS X, you get a fairly neutral-sounding error message, and are presented with a dialog box asking if you want to "notify Apple" of the error so that it can be fixed. Doing something like that in a CLI ought to be fairly easy...

    Cheers,

    Ethelred

    --
    Everyone wants to be Ethelred. Even I want to be Ethelred.
  134. Personal Experience by iago-vL · · Score: 3, Interesting

    Although I'm only 21, I grew up in a DOS, and, later, a Linux environment. I still prefer vi and vim to VS.net. I was using a Windows program a couple days ago, and it wanted the folder to rip music to, I went to type in the folder (q:\.......\music), and it wouldn't let me. When I realized that I would be forced to use a GUI folder selector for each of the three paths rather than copying and pasting, my heart sank: I realized just how horrible the world has gotten when even programmers expect me to use GUI for everything. My point is, a lot of us grew up on command line, and we turned out great. A lot of people grew up on windows xp/msn messenger, and I can't help but look down on them. When I say, "Your 40gb drive is full of spyware and installed programs/partially uninstalled programs/whatnot, it's time to format" they say, "huh?" because they aren't famalier with core computer concepts. When I was forced to learn what IRQ and DMA meant, and I had to use mscdex when I was 10, I ended up better for it. I understand how the machine works, and I am much happier for it.

  135. Command Line by Anonymous Coward · · Score: 0

    The people this article is describing were probably familiar with dumb-terminals and green screens... so, of course, a command line is going to ease their minds. It's what "they grew up with."

  136. GUI is newbie-friendly for a while. by zaunuz · · Score: 1

    As the topic states... GUI is newbie-friendly for a while. If the user wants to do normal activities, that the GUI programmer expected users to want to do frequently, there would be a function for it.

    On the other hand, if you want to program your GUI so that all kinds of people regardless of their wished could use it to their full extent, then there would be hours of extra work just to add those functions in the GUI. If there's a CLI, the programmer didnt have to spend that much extra time to add these features, but the problem with CLIs are that there are many that does not have much documentation.

    If the CLI has good documentation for beginners, then there's a pretty big chance that the newbie would find it easy enhough to use (newbies can get pretty far on UNIX-systems, if they start at 'man man'). On the other hand, there are alot of cases with bad GUI programming, for example, where many settings and such are placed far away from eachother, resulting in the user spending hours just looking for the feature, instad of finding them all together under the 'preferences' menu.

    --
    this is probably the most boring sig in the world
  137. What we need now by Gyorg_Lavode · · Score: 1
    It would be really useful for this person to expand this research. I'd like to see:
    • Same type of project done on a GUI
    • Research into the scope of usefulness of the CLI, (Obviously things like 3D animation and modeling require an advanced GUI, but where does the line blur between a needing a GUI and where does this line lay in respect to where brand new users who have not grown up with computers draw the line for what they want to use the computer for.
    • How did the people he had in his research progress w/o an experienced guide standing over their shoulder helping them.
    • What improvements could be made to a CLI to make it useful for the above mentioned user.

    People have brought up good arguements for why a GUI is better than a CLI. Yet, in a wierd way I can understand what this person is saying. There are many basic things that I am more than willing to do with an xterm even though I could do them using a GUI. And as a power user, I can still related to some of the feelings of the people in his class. Looking at my desktop I see about 100 buttons, (97 to be exact. And not I didn't count the links and such in this page. And this is w/ 2 programs visible.), and I definately don't know what all of them do, nor will I click many of the ones I don't know because I don't know what they do.

    Either way, this is definately interesting research that really needs to be covered in more depth.

    --
    I do security
  138. Easy to use GUI? by packman · · Score: 1

    I think this article really makes sense, when I look at my grandma, this is exactly one of the problems. Last time I was really surprised how far she got on her own. She told me that she wanted to learn a lot of other stuff, she felt like she didn't know enough of the computer's power. She "only" knew how to mail, use google and surf a bit. I only remember telling her more or less how to mail.
    So she learned how to use a mouse pritty well, but she still panics (well at least call someone else to help her) when some error pops up. She simply doesn't know what happens, and indeed, in a multi-window environment, it is certainly not that easy to know which program gave the exact error.

    We have an awfull lot of GUI's around in linux, at the moment, with at the "top" arguably Gnome and KDE, which do a great job for the more experienced desktop user, but in this test, they would fail miserably. I do not think you can limit such people to the commandline forever, graphics are very usefull in many cases, like when browsing the web. They can be made chaotic, but can also be used to structure things in a clean way.

    So why don't we see a graphical userinterface that is more like the way the console is used? It will probably be very hard to imagine how this would work, but it should be consistent, same logic everywhere, and as the article says - the user is - as said - only interested in one thing at a time, and wants to be notified discretely about other events without being pulled away from his current task...
    I think it would be a very challenging and usefull job to design such a userinterface which is very (to the extreme) consistent in use, but I'm afraid there won't be any interest in making such a thing in the linux/geek world which loves the power to customize...

  139. The system makes the difference by botorka · · Score: 1

    (Sorry for the possible grammar errors!) When I started to learn about computers, I found the DOS CLI very unfamiliar. I don't knew it exactly what was the problem whit it. (Now I know: It has no such thing that comman line completion, the terminal handling is rude, the command set doesn't allow the writing of useful applications like a shell script. IMHO the DOS shell is a vague shadow og the powerful unix-like shells.) I was still a newbie, when I first saw a box running Slackware, I asked my "mentor": "What the **** is that?" and he said: "The bash!". It was like falling in love. I learned trough the CLI that you can do more interesting things on a computer than playing DOOM. After two years I started to code in C...

  140. Oh, damn! by mekkab · · Score: 1

    That reminds me... I need my oil changed!!! Crap! I hope my car isn't mad at me from the neglect... maybe I'll buy it some feul additive to appease the internal combustion gods!

    --
    In the future, I would want to not be isolated from my friends in the Space Station.
  141. For simple things, yes by autopr0n · · Score: 1

    Basically, you have two types of users. People who like computers, and people who don't. For people who don't, which make the vast majority of 'lusers' a command line is easier. They memorize specific tasks, and never get a general 'feel' for the machine. With a command line, they only need to memorize a string of commands -- usualy one. With a GUI, they need to memorize a ton of steps.

    For people who like computers, a GUI is better to start with. Why? Because they can explore, click different buttons and visually see what their choices are. They'll quickly get an intuitive feel for how interfaces are designed and be able to use new applications without much trouble, at which point they won't be newbs anymore, and can start on figuring out the true power of the command line :)

    --
    autopr0n is like, down and stuff.
  142. Can someone explain this to me? by brucmack · · Score: 1

    This comes up whenever keyboards are mentioned on /., but I don't get it.

    I'm not an old man, but I've used both the clicky keyboards and the mushy keyboards. To this day I can not figure out what the positive thing is to the clicky keyboards. Are most mushy keyboards poorly made or something, because I never have problems pressing keys and having them not do anything, unless I try really really hard to do it (i.e. press lightly on the corner of a wider key).

    People mention tactile feedback... well, my mushy keyboard gives me enough feedback to know if I've pressed something or not. I would think that /. geeks would avoid manual labour like the plague and still have sensitive nerves in their fingers as well.

    Can anyone explain?

    1. Re:Can someone explain this to me? by R2.0 · · Score: 1

      When typing, you get 3 kinds of feedback: visual, tactile, and audible. (If you also get olfactory then stop, turn off the computer, and take a shower.)

      With a Model M or an ALPS switch type keyboard, all of the feedback is both strong and synchronized. You feel the click, hear the click, and see the results on the screen at _exactly_ the same instant. And the contact isn't made at the bottom of the stroke - it occurs just short of the end. This means that your finger has ceased applying pressure by the end of the stroke.

      Contrast this with a rubber dome type keyboard. The tactile feel is mushy and non-linear, and the contact happens at the end of the stroke. Your finger is still applying force when it stops moving, but because of the rubber membrane, there is never any definite stop to the movement. So you need to rely on audible and visual feedback to know when you have successfully struck a key. The problem of audibility should be obvious - any sound the key makes is a by-product of its motion and not connected with contact being made. Visually, there is a much more tenuous link between your eyes and fingertips, so by the time your eyes tell you "OK, stop pressing now" your finger has already been pressing hard on a contact that has already been made, slowing you down and leading to RSI.

      The Model M ergonomics are based on the old IBM Selectrics, and they were developed to service the needs of typists that typed more and faster than most of us will see in our lifetimes. More than a little ergonomic resarch went into their layout.

      --
      "As God is my witness, I thought turkeys could fly." A. Carlson
  143. Only on Slashdot by Overly+Critical+Guy · · Score: 0, Flamebait

    Only on Slashdot is an entire article posted about the command line being the "best newbie interface." The rest of the modern, non-UNIX-obsessed computing world laughs in response. Riiiight...the command-line is the best interface for newbies...

    This article was only posted to make Linux users feel better about the fact that 80% of setting up and using Linux still requires using arcane commands. So we get articles claiming "in my experience, the command line is better for newbies than a visual interface." That way, when people bring up the overly complicated command line routines, Linux people can say, "But the command line is better for newbies anyway!" And it gives assholes more of a reason to answer every single newbie question with "read the man pages."

    It's groupthink holding things back. Look, there's nothing wrong with just admitting that things aren't quite there yet for newbies when it comes to Linux. We're getting there, but this silly let's-justify-20-year-old-UNIX-philosophy is holding it back.

    --
    "Sufferin' succotash."
    1. Re:Only on Slashdot by Anonymous Coward · · Score: 0

      There was evidence to prove that Overly Critical Guy is a lying cocksucker, but he deleted it. Think independently.

    2. Re:Only on Slashdot by Overly+Critical+Guy · · Score: 1

      And every time I see you use the phrase "we" in a post like this it makes me wonder just what you mean by that since you have never had one positive thing to say about Unix/Linux/Open Source here on Slashdot. The only positive things you have to say concern MS and Apple--anything that is noncommercial and free is shit in your opinion--so just what do you mean by "we"?

      Ignoring the fact that it's a complete and utter lie--I've said plenty of good things about both Linux, BSD, and the OSS philosophy in general--one wonder what exactly is so bad about possibly having good things to say about Microsoft and Apple. Your response has only served to prove my point.

      --
      "Sufferin' succotash."
    3. Re:Only on Slashdot by Anonymous Coward · · Score: 0

      No, you are the liar. I defy you to post one positive comment where you've had something good to say about Linux and OSS in general.

    4. Re:Only on Slashdot by Anonymous Coward · · Score: 0

      There was evidence to prove that Overly Critical Guy is a lying cocksucker, but he deleted it. Think independently.

    5. Re:Only on Slashdot by Anonymous Coward · · Score: 1, Insightful

      Only on Slashdot is an entire article posted about the command line being the "best newbie interface."

      If you despise Slashdot so much, why do you continually read and post comments?

      This article was only posted to make Linux users feel better about the fact that 80% of setting up and using Linux still requires using arcane commands.

      You are either lying, or have not installed a distribution aimed at newbies for about five years. Which is it?

      And it gives assholes more of a reason to answer every single newbie question with "read the man pages."

      Reading the documentation that comes with the program has nothing to do with command-line vs GUI. Stop trying to derail the argument.

      this silly let's-justify-20-year-old-UNIX-philosophy is holding it back.

      Once more, UNIX philosophy has never stated that command-lines are the most appropriate interface for newbies, so stop trying to derail the argument.

      Anybody thinking of modding this guy up should read his posting history. He karma-whores until he has a +1 bonus, and then he uses that karma to troll people who read Slashdot at Score: 2 threshold.

      PS: I don't think a command-line is a suitable interface for a newbie.

    6. Re:Only on Slashdot by Mad+Marlin · · Score: 1
      Only on Slashdot is an entire article posted about the command line being the "best newbie interface." The rest of the modern, non-UNIX-obsessed computing world laughs in response. Riiiight...the command-line is the best interface for newbies...

      I would have to agree with you. People can be trained to use the command line, even if they have never used a computer before, but plenty of people have used a graphical interface and never even seen a command line.

      What I actually view as the most intuitive interface is an actual dialog, the program asking you simple questions, and you responding with simple answers. This can easily be non-graphical, but it doesn't have to be. The main problem with this is it's lack of flexibility. As an example of what I mean:

      Which sort of numbers would you like to do math on:

      1. integers (..., -3, -2, -1, 0, 1, 2, 3, ...)
      2. rational numbers (a/b)
      3. real numbers (..., -3.12345, 0.227, 12e97, ...)
      4. complex numbers (a+bi)
      ? 4
      Please enter a complex number (a): 4+3i
      Please enter a second complex number (b): 9-12i
      a+b = ...
      a-b = ...
      a*b = ...

      And so forth. This is the easist sort of interface to deal with, assuming that you know what the program is even talking about. You don't really need to know anything except how to use the keyboard. The only problem is, unless a system can handle a wide variaty of inputs, and basically comprehend the English language (or whatever native language of the user), this will be way to inflexible for most things.

    7. Re:Only on Slashdot by next1 · · Score: 1

      .. make Linux users feel better about the fact that 80% of setting up and using Linux still requires using arcane commands ..

      dude that is just not true! gnu/linux in it's current state has choices for servers and choices for the desktop. if you choose the latter, you will find that you have the *flexibility* to use a GUI from the second you put the cd in the drive to install it, but then still be able to pull up a terminal and run your favourite editor or enter commands *if* you want to.

      need an example? a perfect example of an os that achieves this is mandrake.

    8. Re:Only on Slashdot by Skorpion · · Score: 1

      In my previous life I designed a dedicated PKI solution with interface similar to this (it was four items menu with functions of the core module, one would use up-down cursor keys to choose and enter to confirm).

      The next day the markeing came and said we put X and browser and HTML interface on the (offline) box so that people get the UI they are familiar with.

      sigh

  144. The difference is in learning by bug-eyed+monster · · Score: 1

    First, the article is purely anecdotal, it does no controlled comparison between CLI and GUI users and has no business drawing conclusions of any kind. My opinion is mostly anecdotal too, but all the same: The big difference between CLI and GUI users is training.

    CLI teachers are more careful with their instructions, and CLI users take more time to learn the guts of the interface and resort to using help because the interface is non-obvious. They know that they can't do much without a good understanding of the system and periodically getting help.

    Conversely, GUI teachers and users put themselves in a false sense of security, "it's GUI, it's easy to use, so I don't need to take the time and learn/teach it properly, just click away." Many GUI teachers don't even refer to the help mechanisms, considering it an unnecessary tool, and their students never learn to use it (some even avoid it like the plague).

    E.g., I've had many friends call me and have the following conversation [no paperclip jokes please]:

    Friend: how do I do x?
    Me: I don't know, did you try help?
    Friend: bah, help never works!
    me: *sigh* click on help, now see that box there... type "x" in it and hit Enter.
    Friend: oook if you insist... oh! thanks!

    A well done GUI is easier to learn and use than CLI, it's just that many people are never taught properly on how to use it. Of course, there are both GUI and CLI applications that are just badly implemented and hard-to-use.

  145. CLIs require typing skills by Anonymous Coward · · Score: 0

    GUIs rose to ascenancy at a time when typing skills were rare. Lack of typing skills is a huge impediment to the penetration of CLI computers, both then and now.

  146. My problem... by Steamhead · · Score: 1

    My problem is that I /want/ to learn how everything in unix works but i just don't have the time, as many other people don't also. So i bought a book, it may be outdated and not for my os. But it has the basics and everything i need.

  147. A very good idea by Pan+T.+Hose · · Score: 3, Informative

    I'd wager that computer literacy amongst people who've tried Linux would be twice what it is today if when you typed help foobar bash would perform a man foobar if 'foobar' wasn't a builtin command. And it'd probably be double that if you incorporated some kind of search facility too. Type in help disk space and get a hit on the df command, for instance.

    I think that is a very good idea and for that reason after reading your comment I decided to write such a program according to your specification.

    Just remember who has just made Linux four times what it was today: me, Pan T. Hose, PhD.

    That having been said, I'll post that program in another comment, because I have to post it as "Code" instead of "HTML." Please mod it up (the actual code, as well as the instructions below) as Score:5, Insightful, so everyone could read it and install, because I think every Slashdotter deserves to have her Linux four times better than it has ever been.

    You have to save my program as /usr/local/bin/smarthelp, then run:

    chmod a+rx /usr/local/bin/smarthelp

    as root and insert this line in your ~/.bashrc file:

    [ $PS1 ] && alias help=smarthelp

    Remember to give me credit and to not violate the GNU General Public License it is hereby released under. The code follows:

    --
    Sincerely,
    Pan Tarhei Hosé, PhD.
    "Homo sum et cogito ergo odi profanum vulgus et libido."
    1. Re:A very good idea by alech · · Score: 1

      a nice idea, but just calling apropos or man does not really help, as the idea mentioned in the original article: "help disk space" gives me the df command is not working:

      [klink@dandelion] /tmp$ ./smarthelp.sh disk space
      No manual entry for disk space
      disk: nothing appropriate
      space: nothing appropriate

  148. Re:Well-good combo of GUI+CLI by DavidHumus · · Score: 1
    IBM's RS6000 (*nix box) had a good compromise between GUI and CLI.

    I used to work in a group using these where we had no sysadmin or any sort of Unix guru but we were all very experienced geeks.

    Since we had to puzzle out system configuration problems from densely-written manuals, the RS6000's combination GUI->CLI method was very helpful. The RS6000 had a faked-out full screen mode (probably VT100 emulation) that let you assemble a command a piece at a time.

    You started with, e.g. some half-understood disk configuration command from the manual, and the interface would pop up drop-downs with valid parameters for each required one. Once you had assembled the command this way, you could dump the finished CLI string to a file and save it for re-use or study and modification.

    This was a very effective way to bridge the gap for people who knew general things like "you have to prepare a new disk for use" but were unsure exactly how you accomplished this in Unix.

  149. The PTH(R) Smart Help(TM) program - PLEASE MOD UP! by Pan+T.+Hose · · Score: 3, Informative

    #!/bin/bash

    # save it as /usr/local/bin/smarthelp
    # chmod a+rx /usr/local/bin/smarthelp
    # and insert this line in ~/.bashrc:
    #
    # [ $PS1 ] && alias help=smarthelp

    # PTH(R) Smart Help(TM) v1.0.1-pre2
    # http://slashdot.org/comments.pl?sid=99801&cid=8510 901
    # Copyright (C) 2004 Pan T. Hose, PhD.
    # http://slashdot.org/~Pan+T.+Hose
    #
    # This program is free software; you can redistribute it and/or modify
    # it under the terms of the GNU General Public License as published by
    # the Free Software Foundation; either version 2 of the License, or
    # (at your option) any later version.
    #
    # This program is distributed in the hope that it will be useful,
    # but WITHOUT ANY WARRANTY; without even the implied warranty of
    # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
    # GNU General Public License for more details.
    #
    # You should have received a copy of the GNU General Public License
    # along with this program; if not, write to the Free Software
    # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

    a=${@:-help}; help "$a" 2>/dev/null || man "$a" || apropos "$a"

    --
    Sincerely,
    Pan Tarhei Hosé, PhD.
    "Homo sum et cogito ergo odi profanum vulgus et libido."
  150. Only on Slashdot by Anonymous Coward · · Score: 0
    Only on Slashdot would someone like Overly Critical Guy keep spouting off his same old tired Unix/Linux bashing and keep getting modded up for it.
    This article was only posted to make Linux users feel better about the fact that 80% of setting up and using Linux still requires using arcane commands.
    And your proof for such a statement is...? If this isn't obvious trolling, I don't know what is.

    Then there are gems like this:
    It's groupthink holding things back.
    Again, what proof do you have that there is any kind of 'groupthink' going on in the OSS community and that this 'groupthink' is holding things back? Oh, that's right, you don't. You're just throwing that out there and hoping it will stick.

    And every time I see you use the phrase "we" in a post like this it makes me wonder just what you mean by that since you have never had one positive thing to say about Unix/Linux/Open Source here on Slashdot. The only positive things you have to say concern MS and Apple--anything that is noncommercial and free is shit in your opinion--so just what do you mean by "we"?

    Seems that phrasing is thrown in by you in a lame attempt to karma whore (and, to the shame of moderators everywhere, it usually seems to work). We know you hate everything that Slashdot/Unix/Linux/Open Source stands for, so just why are you here? You have nothing constructive to offer to the conversations here, so why do you bother?
  151. This thing is GREAT! Mod parent up! by Anonymous Coward · · Score: 0

    Hey, this program works EXACTLY as the (Score:5, Insightful) idea in nokilli's post The 'help' command! I have just installed it according to the instruction posted here (please mod it up as well) and now every command below works perfectly!

    $ help while

    $ help perl

    $ help disk space

    Yes, the last one tells me to use df!!! Just like the insightful idea of nokilli! Wow! I didn't know it was possible.

    Thanks a lot, Pan T. Hose!

    Mods: PLEASE MOD PARENT UP!

  152. ADD computers by Metropolitan · · Score: 1

    Nicely put. There is an amazing competition for attention in nearly everything we're exposed to, at least in Europe and North America. Watch television with the sound off sometime, just to revel in the lack of audible noise and be stunned by the visual cacophany.

    No, I don't really need a computer interface that yells at me graphically all day to get work done. No beeping when mail arrives, no clicking every time my left mouse button is pressed, no flashing shouts of IMPORTANT THING HAPPENING HERE all the time. If all information rich environments were designed that way, it would be far to difficult to distinguish between a normal event, an urgent event, and the system's background processes. Planes would fall from the sky.

    Anyway, enough of a tangent. Thanks for bringing it up!
    -Met.

  153. Not only newbies. by Anonymous Coward · · Score: 0

    I'm exclusively using the command line (well, besides MozillaFirebird and sometimes xmms or TheGimp)
    There's not much choice anyway since I'm working with a Pentium Pro 200 right now ;)

  154. I have to agree. by Ketnar · · Score: 2, Interesting

    Oddly enough, since I started my webhosting ordeal, I have found that complete and utter newbies ARE oddly good at picking up the command line.

    For example, I walk most first time customers through the usual setups, SCP client, SSH client,Mail, all that depending on what OS they are on.

    I swear, it takes me three times as long to walk them through the GUI stuff, with all its bells and whistles they have to think about.And then the 'hard part' of the command line, they are off and banging away within a few short minuts. In fact, I have had a few newbies take one look at Pine and go 'Oohh, neat, I don't even need a program to use it!'

    AND THEY USE IT(pine)!

    And you have no idea what I mean when I say 'newbie', I mean literal 'Just got away from yahoo webhosting, does not even know HTML yet' newbie. Picked the command line right up, and yet I got two more calls for the damn GUI client. And this is hardly the first time.

    Sometimes I really love this line of work.. :)

    --
    My new top secret key -> C>N|KB
  155. Newbies want simple routined tasks ... by BlackShirt · · Score: 1

    Think about all these wizards.

    Download shortcut for this kind of work (from internet), click on it, and get results you wanted.

    Unfortunately there is'nt such shortcuts in current op. systems.

    Opportunity for linux?

  156. It is simply simpler by theolein · · Score: 2, Interesting

    I was an operator/admin on an archaic Wang 300 mini system back in the 80's on a US air force base. The OS was Wangs multiuser system and, while fantastically old by todays standards, demonstrated something that I not seen in later jobs as admin for on Windows and Novell systems: consistency and simplicity.

    The user had access to Wangs text based word processor, spreadsheet, groupware and simple database programmes, of course everything running on a central system and the users only having terminals.

    There was far less, and I really mean far less support hassle, especially on the telephone as it was so much easier to understand what the users currently were doing and the users, having a reduced set of commands, could mess up in x number of ways. Added to that the interfaces were consistent and easy to remember. Ironically, all that could today run on a single Unix machine with terminals with ease (about 150 users).

    I compare that to the aches of supporting Microsoft office in my last jobs, with users being all over the place and repeatedly not being able to remember the simplest of GUI functionality. Not even younger employees who had grown up with GUIs were confident in what they were doing.

    The comment about graphics is valid though. A hybrid CLI with graphics functionality would probably be the best bet for all.

  157. Please don't thank me by Pan+T.+Hose · · Score: 0, Troll

    Hey, this program works EXACTLY as the (Score:5, Insightful) idea in nokilli's post The 'help' command! I have just installed it according to the instruction posted here (please mod it up as well) and now every command below works perfectly!

    Yes, I was strictly following the specifications posted by nokilli.

    Yes, the last one tells me to use df!!! Just like the insightful idea of nokilli! Wow! I didn't know it was possible.

    It was possible. Otherwise I wouldn't have written it, now whould I? But seriously: nothing is impossible in Linux. Nothing. And that is the true power of free software. Always remember that. I really hope my program will serve you well. All of you.

    Thanks a lot, Pan T. Hose!

    Please don't thank me. I only did my duty as a free software developer and a Slashdot community member.

    Mods: PLEASE MOD PARENT UP!

    Thank you. You are very kind.

    --
    Sincerely,
    Pan Tarhei Hosé, PhD.
    "Homo sum et cogito ergo odi profanum vulgus et libido."
  158. CLI and GUI both have their places.. by caveat · · Score: 2, Interesting

    ..anybody who uses an OS X box regularly knows what i mean. a well-designed GUI makes a lot of tasks simpler - i know a lot of you like your config files, but i really enjoy my mac config dialogs; you're absolutely nuts if you want to argue the firewall (in OS X) is easier to set up from the shell rather than system preferences. OTOH, i do use iTerm rather a lot, especially for dealing with huge quantities of files (Aqua bogs horribly when you try and move >2000 files around at once) and non-graphical web stuff...FTP is literally about half again as fast from the commandline. basic text editing too, although bbedit's multicolored highlighting with programming languages is nice for certain things.

    side story: my dad was a communications operator for the air force in 'nam, a guru of the proto-net - he used to tell me about playing battleship with people in Greenland, in 1968, over the teletype. he hadn't touched a computer in 30 years, loathed the things, until i sat him down in front of my box, logged in as >console (switches off Aqua, drops you to a pure CLI). he stared at it for a second, then his face lit up as he said "OHHHhhh, it's just like my teletype, only on a screen!"...he's now does all his email, web browsing, imming, and text editing (invoices, inventories, whatnot) off the commandline. he DID ask if i could use the printer instead of the monitor once though, i had to shoot that one down...

    --

    Facts do not cease to exist because they are ignored. - Aldous Huxley
  159. Are you claiming Java is a real language? by alienmole · · Score: 3, Funny

    (define set-him-straight
    (lambda ()
    (display "Learn a language that's capable of abstraction without boilerplate, dammit!")))

    (set-him-straight)

    1. Re:Are you claiming Java is a real language? by Trejkaz · · Score: 1

      That wasn't Java anyway. Java has a lower-case main method and doesn't return a value.

      --
      Karma: It's all a bunch of tree-huggin' hippy crap!
  160. Try using a CLI when you can't spell (Dyslexia!) by Wacky_Wookie · · Score: 1

    Try using a CLI when you can't spell, or like me make so many errors when I type, that CLI's would make me un-employed.

    Or, try using a CLI that is written in somthing other then english? Try mocking GUI's after you travel through Europe, and you have to use computers in a French/Polish/Spanish internet cafe. It's amazing how easy it is to use OS X or windows even when they are running in some other language.

    (RANT)
    As for all the people saying that CLIs are faster to use, it's you not the GUI thats slow, it's your brain. Try watching someone who thinks 3D space use a good GUI. It can blow CLI people away, easy. The thing is, the majority of people (70 percent?) think in the normal way (in words). Where as some people think in pure images. It's not that CLIs are faster then GUIs, its just that less people are phisologicely (spelling, ha) able to take full advantage of them.
    (/RANT)

    Disclaimer: I'm a 3D thinker and a bad speller (as you know if you read this far :).

  161. Cute but soon becoming irrelevant by Coward+Anonymous · · Score: 1

    My 5 year old niece seems to get along quite well with a GUI machine.
    Phones were initially a mystery to people and I've heard stories from today's grandparents, then whiz kids, helping their grandparents crank and dial a phone. Today, that sounds laughable.
    Ten years down the line this will be a non-issue.

  162. Enter the Matrix by rpillala · · Score: 1

    I think the fact that the recent Matrix game had a CLI as its coolest feature supports this theory.

    Ravi
    --
    When the axe came to the forest, the trees said, "Look out - the handle was once one of us."
  163. Reason #3862 why Solaris is a good OS by devphil · · Score: 1


    They have man pages for everything, and they are well-written. With examples. With cross-references. No "go see the Info page" or "for documentation that doesn't suck goat balls, go to http://[some immature linux-only project].sourceforge.net/docs".

    My dream OS is GNU/Solaris. The GNU userspace tools and the Solaris kernel. And maybe their man pages, too.

    --
    You cannot apply a technological solution to a sociological problem. (Edwards' Law)
  164. What about without training? by BoneFlower · · Score: 2, Insightful

    Command line might be easier to teach, but hand two complete novices(as in never used a PC) a GUI system, a command line system, and a typicaly sparse new users guide.

    See who makes effective use of their system faster. Idiot simple interfaces aren't for those who go out to be trained, they are for the secretaries and such who take a job and need to work right away, without training in how to use the computer.

    1. Re:What about without training? by evilviper · · Score: 1
      but hand two complete novices(as in never used a PC) a GUI system, a command line system, and a typicaly sparse new users guide.

      I've given people a one-page quick-reference listing commands and how to figure out and use options, and they're completely capable users in a matter of minutes.

      About the only problem people have, is when they type the quotation marks around a command. Different fonts can solve that problem.
      --
      Slashdot gets worse every day... Pipedot: News for nerds, without the corporate slant
  165. You Don't Want Localized Command Names. by HopeOS · · Score: 2, Interesting
    The commands are for the computer to interpret, not the user. If my English scripts cannot call Japanese programs, that would be a real problem.

    As for the user, if I sit down at a computer that is localized in French, I can still use it because we all agree on what the command names are, regardless of what language we speak. "cd" is not "change directory," it's the mnemonic for the command that changes the directory. I don't care if it's zk or zmienkatalog, so long as it's the same. If I want something else I can alias it. By way of example, I logged into my normal account using Croatian as the localization context. Everything works as expected, but I can't read the error messages.
    $ ls -V
    ls: nedozvoljena opcija -- V
    OK. Let's see what languages are supported on this machine.
    $ echo $SUPPORTED
    hr_HR.UTF-8:hr_HR:hr:en_US.UTF-8:en_US :en:ja_JP.eucJP:ja_JP:ja
    No problem. English, Japanese, and Croatian. My Japanese is not much better than my Croatian, so let's try English.
    $ LANG=en ls -V
    ls: invalid option -- V
    Oh... that wasn't too bad. Let's just set the language for English from here on out though.
    $ export LANG=en
    By ensuring that all the commands and protocols are the same, Japanese, Croatian, and English users of this machine can all use the same programs, and most importantly, their programs can interact as well.

    -Hope
  166. Dialogue? by violajack · · Score: 1

    I submit the following "dialogue" I had with my computer for your amusement....

    $ check email
    bash: check: command not found
    $ get email
    bash: get: command not found
    $ read email
    (I had to ^C out of this one, good thing I know how to do that)
    $ find email
    find: email: No such file or directory
    $ where is my email
    bash: where: command not found
    $ help email
    bash: help: no help topics match `email'. Try `help help' or `man -k email' or `info email'.
    $ man -k email
    audiosend (1) - Send an audio email message
    showaudio

    hmmmmm...still no email......yup, that's an intuitive dialogue I just had

    1. Re:Dialogue? by forkazoo · · Score: 1

      Alright, as a counterpoint, assume you are in a GUI. (twisty little passages, all alike...) You want to check your email. Without knowing that "Outlook" is the email package, you would assume it's the fortune teller. You keep looking. You find some sort of monster game called "Mozilla" or whatever. You want to just get on ICQ, but you can't find an IM client to ask any of your friends how to check email. You see something called "Gaim." What the fuck is that? Somebody made a game so laim that they could even give it a proper title, or spell it right? Probably an asteroids clone.

      Certainly, I can click every program and option avilable to me in the GUI, but that isn't any more useable than "ls" and then trying every single program to see if I can figure out what it does.

      Ganted, sitting down at a completely foreign CLI does mean that you want to know a few basics, like ls before you get going, but all you really need will be less than an index card with of cheat sheet.

    2. Re:Dialogue? by Tachys · · Score: 1

      Well Outlook does have an icon that looks like a letter. A picture is worth a thousand words, so an icon would be worth at least 2 or 3

    3. Re:Dialogue? by violajack · · Score: 1

      Actually, since I'm sitting here in KDE I'll try to check my email. One of the default icons on the KDE taskbar looks like a picture of a letter, maybe that will do it. Yup, that launches Kmail. One of the big advantages to the GUI is the use of pictures that can suggest what a program may do. If that nice little picture is not on my taskbar (and big assumtion here - that I know what the K menu is and does) I can open my K menu. I have a "what to do" entry. That looks like a good place to look. Hmmmm, no check email option. Well, I hear that email is this thing you do on the internet, and there is a "use the internet" option. Ah, there it is, one of the options is "read and send mail" and it will open Kmail. On the windows side, with XP, there's a big button at the top of the start menu called email, which opens Outlook. That's pretty easy to find, even if I don't know that the name of the email program is outlook. The real problem is, if I have to go through all of that, I probably don't know how to set up an email account anyway.

      What I was really trying to do with my dilogue was show that sometimes the feedback you get isn't a very usefull dialogue at all. The computer doesn't speak the same language I do. A command line is only as powerfull as the commands you know.

      I think the best interface for a newbie is a real live person who can sit down with them and show them how whatever interface they want to use works. Computers speak a language of their own, and it's easier to get used to that language (visual or typed) when you have someone to show you around.

    4. Re:Dialogue? by forkazoo · · Score: 1

      Indeed - a teacher that understands the student is the best thing going. I've met many people who suck at learning from books. They weren't stupid people. Nothing wrong with them. They just sucked at learning from books. But, if you have a teacher say the same stuff that was in the book, and goes at a pace that responds to the student, and has a little motion... Suddenly that person who would have been reduced to tears trying to learn basic algebra from a book is doing fourier transforms in their head.

  167. hmmm, nothing like half ass reproductions of Tog by Anonymous Coward · · Score: 0

    while and after reading the whole article all I can say is that the author needs to read some of Bruce Tognazzini's (www.asktog.com) work. Many of the reasons why his class is working well is addressed by Tog. they are true reponses but a correctly done GUI allows a much greater range of mastery than the CLI. yes helping build a mental map of locations is a definate goal for GUI's as well as what the guy was teaching. yes having a dialoge model of relationship is helpful. A well done GUI should have as it's goal dialoge and discoverablity. yes reminders and system dialoges should be unobtrusive till wanted. all of the points that the authro made are also made by tog only to much greater and more scientic standards.

    Later
    Chris

  168. My ideal combination would be by ReyTFox · · Score: 1

    A CLI that had lots of programs with simple optional curses-based menu systems(but nothing using the mouse).

    Why?

    Because I remember what it was like when I was little. Typing quickly was difficult, and my mouse control wasn't so great either. So what I really wanted was something with short commands that still let me choose what I wanted.

    So in that context, some sort of standard menu that appeared if I just typed, say, "cp" without arguments would be great. I would have access to all the options, without having to read and interpret the man page and then copy the things I wanted by hand into the command line. And if I wanted to do power-user type things or shell scripts, the options would still be around.

    It wouldn't even have to be an interface that let me get at all the little features and options; just supporting the basic tasks would be simple enough.

  169. Even better than that would be (no joke!).... by devphil · · Score: 2, Informative


    ...the help system offered by...

    ...wait for it...

    ...VMS.

    You type "help [command]" and you entered an interactive mini-CLI environment. The help screens were nested, so your help sessions might look like

    help> foo

    The FOO command glarbles the gronkulator using the following sequence of steps...

    help> examples

    Example 1:

    foo /wacky /monkey
    ...

    help> Options

    The following options are understood by FOO:
    ...

    help> exit

    help> gron

    The GRONKULATOR command...

    help> exit

    The help interpreter was "fuzzy", so you could just type part of a command, or even just a topic, and be presented with a list.

    --
    You cannot apply a technological solution to a sociological problem. (Edwards' Law)
  170. Mac vs DOS by noldrin · · Score: 1

    I remember when upgrading from my Apple II, the choice was between a Mac and a DOS machine. Despite having learned the mouse on the Apple II, when I sat down to the Mac, I couldn't make it do anything. I didn't know the concept of double click, and the menus weren't that helpful. DOS on the other hand seemed more straight foward, even if more cryptic.

    Also at the time I had several friends who knew DOS, so I was willing to take that risk. Knowing people that can help makes a big difference.

  171. *BAM* Wish granted. by devphil · · Score: 2, Informative


    You are asking for programmable completion, which zsh and ksh have had for years, and bash just added a couple of point revisions ago. Look for the "bash completion" project at freshmeat to get a large library of hooks. Some distros already distribute the library, you just to turn it on (e.g., for Debian, uncomment some stuff in /etc/bash.something).

    For ls, I type "ls --q<tab><tab>" and get a list of options beginning with q. For make, I type "make cl<tab>" and it completes the target name to "clean". And so forth.

    I contributed one that does option completion for gcc, then somebody rewrote it. :-)

    --
    You cannot apply a technological solution to a sociological problem. (Edwards' Law)
  172. I was using the CLI to keep people out... by bucktug · · Score: 1

    My web page was designed to keep people away from my web page... That is why I went CLI (Requires Newest Flash Player) for my Command Line Flash web page at: CLF

    Enjoy

    --Bucktug

    --
    I had a flame... but she had a fire.
  173. The reason... by devphil · · Score: 1


    ...is that apropos (man -k) just grep's the SYNOPSIS line that's at the top of the man page. So if the man page is poorly written, the tools can't help you.

    Better implementations of man allow the user to restrict the -k searching to certain section numbers, just like normal man usage.

    --
    You cannot apply a technological solution to a sociological problem. (Edwards' Law)
  174. The need for "Panels" by automandc · · Score: 1
    I don't think the issue is so much about the advantages of CLI over GUI as much as it is about being overwhelmed with options.

    For most users like "Aunt Tillie" there are only 2 or three "tasks" that they use their computer for (e-mail, chat, web, word processing). The problem with sitting down in front of the computer is discerning how to do just those things without getting lost in the clutter. The author's users liked the CLI because they were not being bombarded by other processes while they focused on the task at hand.

    One place we are going to see the type of simplified GUI that these users would like is in the MediaPC arena. In the review of the OS-Optional MB yesterday, the screen shot showed a very simplified interface consistent with the limited functions the computer was aimed at: "Play DVD", "Watch TV" etc. In other words, the only options presented by the GUI were the 4 or 5 that the user is going to need 99% of the time.

    When my mother first started using computers in her office 15 years ago, they had a "programmer" come in and put together a startup menu in Dos that presented just the 4 or 5 options the users needed. Apple tried this with the GUI in "AtEase" and the "Panels" interface of OS9 and limited interface of OSX. The trouble with the limited GUI interfaces (in my opinion) has always been administering them. I would like to set up a GUI for my 3 year old son that allows him to instantly click on the games he plays, or URLs to the websites he likes. However, whenever I try to install a new game for him, I have to torture myself to get everything working correctly in the restricted mode. If someone could do "Panels" right, that would resolve all of the complaints the author's users had.

    --
    I'm a lawyer with excellent karma. Something's gotta be wrong.
  175. Aunt Tillie's CLI Day by fleacircus · · Score: 1

    Aunt Tillie awakes to find her world ruled by the philosophy of the CLI!

    She is jolted awake in pitch blackness, with the chattering of repeated words in gibberish, and some beeping. She is cold and scared and feels like she cannot do anything, and is too frightened to do so even if she tried. The words being spoken somehow remind her of her charts at hospital: concerning her intimately, but not for her. What is going on?! Suddenly she is ejected somewhere dark. She can't move her hands and feet, and everything is still.

    "What's going on?" she asks. She is scared, but Aunt Tillie has always been a tough lady and she knows she can solve this problem.

    "'WHAT' DOES NOT COMPUTE" a voice booms.

    "I can't see anything."

    "'I' DOES NOT COMPUTE"

    Aunt Tillie mutters to herself but realizes she is dealing with someone incredibly literal and stupid, with whom she can only communicate in a very limited way. From the booming voice though she can tell the person is powerful and she might say the wrong thing and who knows what might happen then. If only she can learn the magic words!

    "Show me where I am?"

    "SHOW WHAT? YOU MEAN SHOW beep something squawk somehow?"

    [ A few minutes of trial and error pass. Aunt Tillie manages to hit on something: ]

    "Show here," she says, muttering "you bloody fool" to herself quietly.

    The lights click on briefly. Aunt Tillie gasps in shock. Her hands and wrists are trapped in some kind of upright scooter. Worst of all she seems to be in a horribly complex and sterile place that reminds her of the nightmares she used to have of the New York Subway system after that one time she visited Eric in America. Strange, powerful looking machines lie around in shadowy places, and many chutes and passageways are around. Cryptic signs decorate every wall and surface and most of the machines, but there are so many of them, and they are all generally unreadable that she can make no sense of them at all.

    Soon the lights shut off.

    "Keep showing it!" she cries.

    "'KEEP' DOES NOT COMPUTE"

    Aunt Tillie spends the next several hours with magic words. She never learns how to keep the lights on, but she discovers that she can keep saying "show here" and most importantly by saying the right words can move herself around, although the upright scooter thing lurches terribly, and she finds that she has to describe everything in terms of the cryptic signs on the walls. Instead of just "turn left, stop, go forward..." she has to say "trav'l beep 'crptcwrd'". She has to say travel with a slight accent, which would infuriate her if she were not so pessimistic and weary already from getting the beep sound right.

    She makes a chilling discovery when she discovers that right where she woke up is a sign that says "Aunt_Tillie", and that the booming voice sometimes implies that her "home" is right under that sign. Where is her cozy bed? Where is her teapot? Where is her wicker mail basket? "Even if I could find a teapot I coudln't use it" she says forlornly, "until I learn to talk to it right."

    "'EVEN' DOES NOT COMPUTE"

    She's mad that she has taken about four hours to learn what someone could have described to her in ten minutes. "If only I had a cheat sheet on how to use magic words, provided to me by some kindly person trying to prove how easy it is to live like this!" she thinks, "and while I'm at it I could really use some tea."

    [ Days pass. She becomes more and more proficient at moving around, shackled to her scooter. Tillie learns how to make tea. Sadly she learns that the nearby sign marked "TEA" is not at all helpful until much later when she learns how to see invisible things. However she finds that if she says "MAKETEA" a faraway machine jolts to life. One time she went to find the machine. It sat huddled among hundreds of others, very few of which she recognized. It was a scary place and she quickly left, finding nothing helpful

  176. The Command Line - Best Newbie Interface? by Tellalian · · Score: 1

    Nope.

  177. Funny! by Pan+T.+Hose · · Score: 1

    I am pleased to announce that my current prompt:

    PS1='`[ $? == 0 ] && echo -e "\033[01;32m" || echo -e "\033[01;31m"`\u@\h:\w\$ \033[00m'

    just became:

    PS1='`[ $? == 0 ] && echo -e "\033[01;32m:)" || echo -e "\033[01;31m:("` \u@\h:\w\$ \033[00m'

    Thank you.

    --
    Sincerely,
    Pan Tarhei Hosé, PhD.
    "Homo sum et cogito ergo odi profanum vulgus et libido."
  178. Heh Good one! :))))) by Anonymous Coward · · Score: 0

    Please mod parent up: +5, Funny!

  179. My experience as a T.A. by ca1v1n · · Score: 2, Interesting

    I've TA'd a few 2nd-year CS courses, and I've noticed that even the most primitive CLI-proficient users are leaps and bounds ahead of the most advanced GUI-adept users when it comes to understanding the fundamentals of computation. CLI users are quite familiar with things like turing machines, because much of what they do behaves in a similar fashion. GUI users can't do anything without triggering events, dealing with multithreading, etc. It's so complicated they don't really know where to start when we make them build them themselves for the first few times. Our department has a few low-level classes that emphasis GUI-based programming, and a few that emphasize CLI-based programming. The students love the CLI, because, get this, it's a simpler and more intuitive way of doing things.

    Granted, the average newbie and the average starting CS undergrad are a little different, but I've definitely witnessed the phenomenon at work.

  180. info is no picnic either by CmdrTHAC0 · · Score: 1, Redundant

    Fire up 'info bash' sometime and have a look around. They split many things according to whether they're Bourne or Bash shell features. I can see where this information would be useful for someone writing portable sh code, but splitting the contents by it is Just Wrong. It should be done by command. Things seem to be split up among too many indices, as well.

    The cvs info page is another horridly designed piece of trash. They may have one index, but you have to use the 'l' command a lot since all the commands (at least) are documented several ways in several places, none of which is ever what you wanted.

    Try finding "GCC options" in the GCC info pages. They're stealthily hidden away under "Invoking", like it's some sort of deep black art to run a fscking compiler. It wouldn't be too hard to find with recursive search.

    Which brings me to my last point: info's navigation is awful. Why can't there be a sane system for it (like pinfo) with Emacs overriding it for people actually using it in Emacs (who would therefore be expected to know the proper commands)?

    I'm pointing this out because a lot of times Linux Oldtimers point people to info, probably without realizing exactly how horrid it is. It is not at all accessible to newbies, and probably should just be chucked in its current form.

    --
    __CmdrTHAC0__
    In Soviet Russia, Spanish Inquisition doesn't expect YOU!!
  181. Friendly Shells by Anonymous Coward · · Score: 0
    You indirectly raise an interesting point: where do shells come from? The answer is that shells are CLI oriented programming languages. All the common Unix style shells have C as their underlying language model. Other possibilities exist. For example, there is a shell called 'scsh' which is derived from Lisp.

    Given this basis, we can now ask the question: what is a useful model for a shell that is easy for the general public to learn and makes them productive. I don't think that we have to abandon traditional shells entirely. To the extent that a friendly shell is similar to a current shell it will make things easier in the long run.

    In the overall discussion we see some things that a friendly shell could do better then current shells. Clearly help and error reporting can be improved. I also think that having good integration with a simple text editor would be a great help. Take a look at how EMACS handles this issue: one pane is editing and one for the shell interaction. I'm sure there are other improvements that could be done.

    Now all that's needed is some programmers with a lot of free time on their hands and a new project on Source Forge......

    1. Re:Friendly Shells by argent · · Score: 1

      I do not believe any of the current UNIX shells have "C" as their underlying language model.

      The bourne shell is based on Algol.

      The "C shell" claims to have C-like syntax, yet the bourne shell actually works more like C. To me, "csh" feels more like one of the early structured BASICs.

      The "rc" shell is more C-like than either, in syntax, but its control structures are more like Smalltalk's.

      The "rc" shell is also designed with interaction with a text editor in mind: the 81/2 window system and the sam editor. The syntax is designed so that fragments with easily matched terminators are likely to be syntactically complete, so that lines tend to be complete, and so on...

  182. CLI vs GUI Ease of Documentation by Anonymous Coward · · Score: 0

    Have you ever noticed how difficult it is to explain how to do something in a GUI? It's easy to show people, but it can be real hard to explain it succinctly in writing (or over the phone).
    One side-benefit of the CLI is it is real easy to give a line by line explanation of how to accomplish a task. The CLI is almost self-documenting in this respect, if you log the command session.

    Now, I suppose the point of the GUI is that it is easy to find your way intuitively, so you don't need to follow instructions written by somebody else. But the fact of the matter is that the sort of folks who would have trouble with a CLI are same folks who need to go on training courses to learn GUI-driven programs too. GUIs are not really intuitive enough for joe user.

  183. The "menu" command by skintigh2 · · Score: 1

    More on my thread about comparing *nix shells with BBSes: even the worst, most bare bone BBS shell had a "menu" command. Any newbie, from a 7 year old to a 77 year old could type "menu" to see what he could do (read email, read news, edit, etc.) and then type help to get more details.

    Sit a newbie down at a *nux machine and see how long it takes him to guess that he has to type in a tree species to read his email or a synonym for vigor and vitality to edit a file.

  184. 65 year old webmaster taught command line by Anonymous Coward · · Score: 0

    I actually taught a computer-unfriendly new webmaster to do VI based web design. Now he has a flash and streaming video non-porn site. He will not even touch the quicky edittors as they allow design with their limitation versus how he wants it displayed.

  185. CLI is easier by Brandybuck · · Score: 2, Interesting

    In my experience, I see that newbies get along better with the CLI than with the GUI. Perhaps this is because they "know" the CLI is hard, they pay attention, but because they "know" the GUI is easy, they think they're stupid when it's not.

    But another reason is that GUIs have an infinite number of states, whereas when he see a command line prompt, you know exactly what state the system is in.

    I gave me parents my old 8086 running DOS. They had no problems with it. When I told them what to do, they wrote down the instructions step-by-step. Now my mom has a Windows system, and she's as confused as I've ever seen her. I can't give her step-by-step instructions, because one can never know the exact state of the system to start from. If the order of the menu items change she gets lost. If she installs a new program the icons on the desktop change position and she gets lost. I've even had her accuse me of breaking the computer when I forget to remaximize the Internet Exploder window after I was done using it. Since it wasn't maximized she didn't recognize it, and wanted me to put the system back the way it was.

    It took her the longest time to realize that the purpose of moving the mouse was to reposition the mouse cursor. For a while she was wondering why moving it two inches to the left and clicking didn't always bring up the menu.

    My mother is not stupid, she just hasn't groked the underlying, unwritten and unexplained paradigms behind the GUI. She doesn't think of the computer as something to interact with, but as a machine you issue commands to. Hmmm, she is pretty smart after all...

    --
    Don't blame me, I didn't vote for either of them!
    1. Re:CLI is easier by Anonymous Coward · · Score: 0

      Well there is your problem you gave her Windows. If she had a real GUI she wouldn't be lost.

  186. Huh? by Anonymous Coward · · Score: 0

    Being a former backup system admin (I was laid off 2 years ago when they sent my job overseas) for a very large company, we had simple shell scripts whenever we added a new box. Not that hard to do, and I'm sure we had a hell of a lot more boxes than MIT does.

    1. Re:Huh? by Anonymous Coward · · Score: 1, Interesting

      But you did so only for *your* boxes. Now think of a user in your company who got around to installing Fedora on his home box: "Huh, none of my neat office commands work! crap!"

      Your changes are not portable. They do not show up in newbie mailing lists, LUG meets, books. For the vast world outside, your changes are not useful.

  187. nothing to do with gui || cli by headhigh · · Score: 1

    The instructor was more enthusiastic about teaching a unix cli than a windows gui and the students picked up on it. That is all.

  188. Won't work by ChrisMaple · · Score: 1

    "all the different commands available on linux systems" fills many screens, even without descriptions.

    --
    Contribute to civilization: ari.aynrand.org/donate
  189. Re:Exactly by Anonymous Coward · · Score: 0

    Dude, pardon my abrupt language, but how did you get bitchslapped into -1 oblivion? You don't have many comments, and the ones you do have are mostly highly rated. It's unusual to be posting at a default -1 so soon. I mean, I post hundreds of flamebaits and trolls with the anonymous checkbox clicked and I still have neutral karma.

  190. Back in the day... by Anonymous Coward · · Score: 0

    A long time ago, I used to work for damn near minimum wage - I had an old piece of crap Chevy CK10 pick up truck, with vacuum hoses n' such controlling all the tricky little elements like advanced timing spark and other obscure little bits. The truck was cheap, it was functional, but still a piece of crap.

    When my truck broke down, I didn't have the money to go out and take it to a shop to get it fixed, so invariably I'd have to get under the hood to turn wrenches with a Chilton's manual propped on the radiator cowl and work through basic trouble shooting problems and hope that I could afford the new parts I needed at Checker or Autozone.

    You know what? I learned so much about my truck. I learned about all the obscure little devices that were attached to the engine, the internal workings of a Chevy small block .305, how to rebuild a carb, how to replace brakes, fuel lines, and even bearings in suspension.

    You know what else? I don't feel like I'm anymore enlightened because of it. Why?

    Because back then, if I had the choice of doing something else (like playing a video game or boozing it up) I'd damn sure be spending time at a volleyball court with beer than goofing around on my engine because most of the time it was filthy, dirty, nasty work. I had and still have better things to do with my time than trying to figure out where top dead center on cylinder 1 is. I'm not that into cars.

    Same goes for my OS. Back in the day, I had a 'liberated' copy of DOS which, I must say, had a decent CLI. When I got Windows? Whole new world - stuff had pictures and the file system graphically told me where all my stuff was found. Did I understand whan those objects did? Sure. Did I care? Not really, I just wanted to load Quake and blow shit up. It's that simple.

    I think it's great that there are folks who take a very keen interest on figuring out the underlying code in an OS kernel and want to turn wrenches on it. You go for it. But don't misinterpret your enthusiasm for CLI as a better standard user interface. People like pictures because, my friends, we are tactile that way. It's the whole reason why the GUI took off because people like to associate a picture with a function (like the bicycle analogies in OOD? Everyone got it when the instructors put it into terms we could visualize).

    Nowadays, when my car object breaks down, I take my cellphone object and message the wrecker object (yeah, long way from the minimum wage days).

  191. GCC or CVS....? by danielsfca2 · · Score: 1

    > Try man cvs or man gcc if you don't believe me.

    What newbie is going to be using gcc or cvs?? I think man ln or man mkdir is more representative of man pages a newbie might need. Those are only 3-4 screens.

  192. DOS shells have command completion ... by Anonymous Coward · · Score: 0

    ... or at least all DOS shells post Win95 do. It's just very well hidden and not turned on by default. You can assign any character to be the completion character.

    Hint: Search the registry for the string 'completion' ... leads you right to it.

  193. How old is she now? by JurgenThor · · Score: 0

    *lacivious grin at thoughts of CLI-using geek-girl* ;-)

    --
    GENERAL PUBLIC SIGNATURE (GPS) Any replies (derivatives) of this post must also use the GPS
    1. Re:How old is she now? by A+nonymous+Coward · · Score: 1

      Probably older than you want now :-) this was ten years ago ...

    2. Re:How old is she now? by Anonymous Coward · · Score: 0
      *lacivious grin at thoughts of CLI-using geek-girl*

      There's this tall, blond chick in my C++ programming class who I caught using the command line to play some sort of game. It kind of looked like nethack, but I wasn't that sure. Now mind you, most of our class uses GUI compilers (Visual Studio, Borland) to write programs. But as soon as I saw this hottie using the command prompt, I was immediately interested in her. The fantasies I've been having about this chick are incredible. When I return to school (currently on Spring Break) I'm definitely asking her out.

    3. Re:How old is she now? by JurgenThor · · Score: 0

      Perfect, I like older women - I'm 24. :-9
      Pass her a 'how YOU doin' from me', My intentions are pure, honest. *scouts honor salute*

      --
      GENERAL PUBLIC SIGNATURE (GPS) Any replies (derivatives) of this post must also use the GPS
  194. Re:There usually are examples... Right at the bott by Lord+of+Ironhand · · Score: 1
    I don't know which distro you are using, but in Debian, the vast majority of man pages are excellent.

    The fact that manpages do not always include examples shouldn't be a problem: the principle of command-line arguments is quite simple to understand, and man pages normally list the descriptive "long" version ("--option" in addition to "-o"), which makes it quite easy to quickly skip to the one you need. The argument that unix commands are not always descriptively named certainly doesn't apply to long command-line options.

  195. Did they patent it? by trigggl · · Score: 1
    Why aren't more programmers pushing toward this sort of thing? That would be an excellent feature to have in Linux. I would love to have something like that. Linux runs much faster from the command line and there is much better control that way. It would be a real positive towards helping people to migrate to Linux and especially to a distro like Slackware.

    That is one of the downsides to Linux. It is viewed as having hard to find, read, understand documentation. There are some things I prefer to do at the command line. There are some things that are just hard to get done right in the GUI. I wouldn't mind the help of a Penguin guiding me in my options.

    --
    Ops, I shuld have usd the prevuwe but in.
  196. The 1980's called by Gothmolly · · Score: 1

    and they want their functionality back. CLI has always been superior to the GUI for completing small, discrete tasks, especially when repeated.

    --
    I want to delete my account but Slashdot doesn't allow it.
  197. difference between ISP and AOL by Anonymous Coward · · Score: 0

    Yeah! I know this one!!!

    ISP = internet company.

    AOL = shiny beer mat company. I can't remember when I signed up, but they send me free 'trial' beer mats every month. They look really cool, very modern.

  198. Which way to the VI/Emacs war? by trigggl · · Score: 1
    Vi is better
    Emacs sucks!

    It would be nice if I could actually read the article, but it apparently is no longer available.

    --
    Ops, I shuld have usd the prevuwe but in.
  199. GUIs, cars, metaphors by Pelerin · · Score: 1

    Imagine a world populated by people who live in farms, or in a nomadic tribe somewhere. The most advanced form of transportation is the horse.

    Now you come up with this invention called a "car" and want to sell it, or just persuade all your friends that they should use it. What would you do?

    Obviously, you'll outfit the car with bridle, reins and saddle, and a mechanical whip instead of the gas pedal.

    Then you'd tell all your friends: "just ride it like a horse! It's easy! You don't have to know how it works, the car looks and feels just like a horse, so off you go!"

    Gasoline would be made to look like oats, or whatever it is that horses eat. So every once in a while you'll just stop by a gas station to "feed" your horse.

    Obviously, this is not how cars work. A horse is a shitty metaphor for a car because it is a) possibly dangerous and b) probably dumb in the long run.

    a) Unlike oats, gasoline explodes if you're not careful --and it may kill you if you try to drink it instead of "feeding" it to your "horse". You think it's clearly a win, but the dangers of gasoline perhaps need to be dealt with. (There are no lawyers in this primitive world but there are tribal vendettas, which are almost as unpleasant).

    So you add a well trained monkey, that comes with every car. The idea is, this creature will remain hidden unless you try to put some gas in your mouth, and which point the monkey jumps right in front of your face and says: "are you sure? oats are for horses! not for people!".

    Having gone through the trouble of training the monkey it's hard to resist the temptation to add value to the user experience by teaching the monkey to do other helpful things at random times, which thinking leads directly to the dancing-paperclip-from-hell-that-won't-go-away-no- matter-what which is going to drive you completely insane, unless you happen to like monkeys --which of course some people do.

    b) By treating the car as a horse, the user remains ignorant of important stuff like gas being toxic; and also ignorant of the car's full potential b/c a car can do things that no horse can.

    And as intuitive as the car may be to us 21st-century western folk, its interface (ignition switch, gas and brake pedals and so on) is far from intuitive to a horse-only person. All of us who "just want to drive" have had to learn how to do it; and despite claims to the contrary the modern desktop GUI also has to be learned and taught.

    Trying to deny that there is a learning curve with GUIs leads to more and more bloat (wizards, assistants, dialog boxes and whatnot --lots of monkeys). Worse, it seems to persuade even sensible people that everything the computer does should be understandable without mental effort. As a sysadmin, I've been amazed at seeing many users, highly intelligent and successful people, go through a personality change of sorts the minute they have a problem with their computer and become infantile and almost helpless in dealing with the machine. In my experience, the fancy GUI liberates the user for mundane tasks. For interesting or slightly more difficult ones the user tends to become more, not less, dependent on other people to show them how the computer works.

    I don't mean to condemn "the GUI" in general, but certainly the current desktop environments --all of them-- try so hard to be intuitive that they end of being even more complex and overloaded.

    As a wise old BOFH said: the only intuitive interface is the nipple. It's all learned behavior after that.

  200. Difficulties to understand hierarchical FS by j.leidner · · Score: 1
    Users were at first unsure of a hierarchical file system. They all seemed to adopt the room and mentality for file access. They understood the concept of a "file" as a name of a box where the computer will store some data which is placed in their personal "room" but directories proved a difficult concept for them to handle.

    I can only confirm this: in a course I once taught, participants found the hierarchical file system (commands: pwd, cd, special directories: .., ., /, ~/, and its concepts of relative/absolute paths) more difficult to grasp than extended regular expressions, much to my surprise.

  201. The names are neither weird nor poorly designed by devphil · · Score: 1


    but rather they are short and easy to type over and over. That was the primary criterion at the time of their creation.

    Remember: no shell aliases. No command or file completion. No command history of any kind (neither arrow key or !n or ^P or anything). Work under those conditions and you'll be very happy for two-letter commands.

    Occasionally, depending on the terminal, no backspace. The longer the command is, the greater the chance that you'll make a typo and have to start all over.

    There are very good reasons why it's spelled "ls" instead of "list" or "show me all my files". It's not lack of design, or a deliberate wish to beat the new user upside the head.

    --
    You cannot apply a technological solution to a sociological problem. (Edwards' Law)
  202. What I get for not previewing. by argent · · Score: 1

    Bah, that last line should be:

    rename this.cpp that.cpp -< *.cpp -> &.c++

    razzafrazzing html

  203. Launchbar... by ErnstKompressor · · Score: 1

    Mac OS X users can extoll the virtues of a shortcut-launcher such as LaunchBar...

    Talk about a productivity enhancer... it is somewhere in between the best parts of a CLI -- direct initiation of commands/ability to drag files to applications -- and a GUI -- access to various applications and their individual interfaces...

    Is there similar software available for Linux and Windows? What about comparable options?

    --
    We apologise for the fault in this post. Those responsible have been sacked. -- Signed RICHARD M. NIXON
    1. Re:Launchbar... by binarytoaster · · Score: 1

      I know there's a clone of LaunchBar for Windows. As for exactly where it is... but it looks EXACTLY LIKE LaunchBar.

      And I *love* LB for my Mac, it saves me so much time and dock space... true essential tool.

  204. Welcome to Chez Ligne Commande... by Riktov · · Score: 1

    Waiter: What would you like this evening, monsieur?
    Customer: Let's see, for some wine I'd like some Chardonnay.
    Waiter: I'm sorry, we don't have that.
    Customer: Chardonnay.
    Waiter: I'm sorry, we don't have that.
    Customer: OK, then how about some Beau... (looks to Waiter and waves hand)
    Waiter: Beau-Mayne? Beau-Sejour? Beaujolais? Beaulieu?
    Customer: Yes, Beaujolais!
    Waiter: Very good, sir.
    Customer:...
    Waiter:....
    Customer:Oh, and for an appetizer, do you have escargole?
    Waiter: I'm sorry, we don't have that.
    Customer: How about pate de foie gras?
    Waiter: Very good, sir.
    Customer: Oh, I didn't want that! I was just asking...
    Waiter: Very good, sir.
    Customer: But... Well, are you sure you don't have escargole? (Strange, I'd swear those people at the next table are enjoying some.)
    Waiter: I'm sorry, we don't have that.
    (A glass of Beaujolais and a plate of pate are brought to the table)
    Customer: Look, I didn't order the pate...
    Waiter: I'm sorry, we don't have that.
    Customer: (Sigh) OK, so for the first course I'd like some chicken (looks to Waiter and taps table)
    Waiter: Poulet-croustillant? Poulet-roti? ...

    Meanwhile, over at Chez Graphique...

    Waiter: What would you like this evening, monsieur? Here's our menu.
    Customer: Let me see... (perusing menu)
    Waiter:...
    Customer: Yes, I'd like to start with a glass of this Bordeaux (points to menu), a plate of olives farcis, and the soupe du jour.
    Waiter: Very good, sir.
    Customer: On second thought, I think I'll skip the olives.
    Waiter: No problem, sir. ...

  205. Something like this? by Semi-Psychic+Nathan · · Score: 1

    >ls
    You see here oriental.rug, elvish.swd, and brass.lnt.
    >chown adventurer *
    elvish.swd: Taken.
    brass.lnt: Taken.
    oriental.rug: Insufficient disk space.
    >mv oriental.rug
    With great effort, you mv the rug, revealing .trapdoor/.
    >cd .trapdoor/
    The .trapdoor/ is closed.
    >chmod +x .trapdoor/
    The directory reluctantly opens to reveal a rickety staircase descending into the filesystem.
    >cd .trapdoor/
    You have entered a d-wx-wx-wx place.
    You hear someone chmod -x $OLDPWD.
    >

    --
    I have nothing to allude to, and I am alluding to it.
  206. OK by brucmack · · Score: 1

    OK, I think I've misunderstood what people meant by "mushy" keyboards then. I was thinking more that mushy keyboards were just the flatter variety where the keys don't press down as far.

    I guess the only thing I still don't agree with is that the audible bit has to be so loud... I have no problem hearing myself type even though it's way quieter by comparison. I don't know enough about biology to know which form of feedback gets to the brain first.

    Anyway, the response is appreciated, thanks!

  207. My Prompt Can Beat Up Your Prompt by Vagary · · Score: 1

    Not bad at all, part of my prompt turns red when the last command was a failure. And it has a kick-ass clock. :)

  208. Command line for simple and complex tasks by shadow_slicer · · Score: 1

    No one's suggesting we go back to the commandlines of the 60's. Even less suggest that we all program in machine-code assembly or edit text source files in a hex editor (I thought you were programming in machine-code..?).

    For most simple or complex tasks (at least that I perform) the command line is faster and less frustrating than a GUI.
    Copying a directory:
    In the time it takes you to open Explorer, navigate to the correct directory highlight a directory, right click, select copy, navigate to the destination directory and click edit->paste, I have already executed the command (even though I may not have remembered the exact name of the directory--that's what tab completion's for) and even added the '-v' so it tells when each file has been copied.
    This is not a case of "obscureProgram.sh -XFGXRmnq -i filename1 -o filename2 -c..." this was just a simple "cp -vrf /usr/src/linux mykernelmod/". After doing simple things like this so easily *I* find it frustrating to have to go back to the GUI world where everything takes 50 sub-operations to accomplish some small task. *My time* is too valueable to be spent doing that tedious crap.

    GUI is useful sometimes, for tasks of moderate complexity. If you need to do something really complicated you'll be relegated to the command line anyway (because that's where the real power is--You know all those windows apps--they have command line options too [though it's a little harder to enter the arguments for some reason and they're completely undocumented]).

    Time spent learning new skills (not 1337 skillz) is not a waste. Every year corporations spend how many billion$ educating their employees. The time you spent learning how to configure CUPS from the command line will help you use UNIXy systems later on. The first task you attempt will take 4 hours, the second task 2 hours, the third even less. Pointing and clicking on printer icons probably will not help make you a better windows user or make your clicking and pointing any more efficient.

    1. Re:Command line for simple and complex tasks by Moraelin · · Score: 1

      Even less suggest that we all program in machine-code assembly or edit text source files in a hex editor (I thought you were programming in machine-code..?)

      The hex entering on the 1K ZX-80 was indeed machine code. Those were the days ;) Counting bytes for jumps and loops and all that fun ;)

      The thing on the CP/M machine was much later. On that machine you could actually run a compiler. And it had 8" floppies! The luxury of it all :)

      Except, as I've said, a "smart" guy gave us everything _but_ an editor. The only thing which could edit anything at all, however uncomfortable and weird that editing, was a disk editor where you literally worked on a sector at a time. Presumably included in case we need to rescue our files from a bad sector, which happened a lot more often on floppies than nowadays on hard drives. Too bad noone thought that we needed something to make those files in the first place.

      Time spent learning new skills (not 1337 skillz) is not a waste. Every year corporations spend how many billion$ educating their employees.

      Time spent learning new skills is useful and all, if you're going to use those skills again.

      E.g., my learning to program, is something I'm still getting paid for.

      E.g., if your job description says "unix system administrator", by all means, do learn all that Unix stuff. I sure hope you know all those little commands if you're one of those admins on our servers.

      But for normal users, which the article was all about? I have my doubts. I doubt that Joe Average, with some MacDonalds job (no offense to MacDonalds employees, just used as an example), the skill to configure CUPS from the command line will ever be of any use. There are only so many unix admin jobs around, and they generally want a lot more experience than that. Doubly so for grandma Jill Average, who's too old anyway.

      --
      A polar bear is a cartesian bear after a coordinate transform.
  209. What Can GUI Learn From CLI? by Vagary · · Score: 1

    I second that motion: what we should conclude from the article is not that CLIs are best for teaching newbies, but that GUIs need to adopt some of the best things from CLIs to become more user-friendly. After all, on the last page the author starts musing about adding notification areas to the terminal window and what-not.

    Wizards, for example, are so popular because they use a dialog-style interface. Drag&drop is horribly underused (mostly because the things you want to drag onto are never around), but emulates verb-subject execution. Making alter windows behave is easy and I can only assume that Microsoft doesn't give users control over whether they pop on top because they hate users. I'm not sure how to emulate the CLI style of command lists, any suggestions?

    1. Re:What Can GUI Learn From CLI? by Anonymous Coward · · Score: 0
      Making alter windows behave is easy and I can only assume that Microsoft doesn't give users control over whether they pop on top because they hate users.

      Microsoft may not give control over windows, but there's a cool program that can. Entering cmdow "window name" /top in a command prompt can keep other programs from taking over screen space.

  210. Hmm by wolja · · Score: 1

    The base assumption in this article that Tilly just does this stuff is a tad out there.

    Tilly has had say 60 years of learning and working in her environment. She may have taken 5 or 10 or 20... years to be in command and comfortable with her environment and comfortable with the pardigm proposed.

    To assume that she picked up the environment fresh is off the track.

    The corollary is is that when Tilly is presented with a control panel, ie banks phase out tellers and want her to solely use an ATM, then there is a period of confusion and relearning before the previous feeling of being in command and comfortable re-asserts itself.

    Tilly would be likely to be far quicker in regaining lost confidence in a graphical teller environment than one where she has to type a list of commands from memory the structure of which changes based on what she did immediately before don't you think.

    It really is dangerous making analogies from assumptions basedon comparing apples and cupcakes.

    Wolj

    --
    Wolja Future Tombstone: Shit happened then I died
  211. Re:Use the CLI to... by 386spart · · Score: 1

    I'm productive because I use the GUI for some things and the CLI for others. What's your excuse?

    My excuse for being productive? I don't have one...;)

    I agree about the CLI being useful, I never said otherwise.

    Your examples are either not newbie tasks (did you notice the headline of the story?) or even easier with a GUI. You can set up connection monitoring and automatic emailing with a GUI or a CLI, the interfaces are unrelated to the task.
    You can convert pictures in a GUI by selecting those you want, right-click and select "convert to [format of your choice]".

    Of course there are times when a GUI is not available, but that makes the discussion pointless - it doesn't mean that the CLI is preferred, it just means that's what you've got.

  212. Full screen editors, & Run from Dir Lists, roc by vortexau · · Score: 1

    . . and you could TYPE the C-64 Basic commands in full, or just the Tokenized (Shorter) version!

    Creating a disk full of Enter-to-run Directory List Prog Names (after entering 'STOP" so it wouldn't try to RUN the Dir-List) was magic! Cursor back to ANY line and hit 'RUN'.

    And, wasn't GEOS the simple-to-use-for-Newbies cut-down GUI?
    .

    --
    (David Bowman, EVA near HUGE Monolithic Win-PC in orbit around Jupiter) "My God - its full of Malware!"
  213. sigh by Anonymous Coward · · Score: 0

    This guy conveniently forgets to mention that you can't just walk up to a command line interface and use it with out training or a reference manual.

  214. Are you sure? by Pan+T.+Hose · · Score: 1

    a nice idea, but just calling apropos or man does not really help, as the idea mentioned in the original article: "help disk space" gives me the df command is not working:

    [klink@dandelion] /tmp$ ./smarthelp.sh disk space
    No manual entry for disk space
    disk: nothing appropriate
    space: nothing appropriate

    Are you sure? It works on my system:

    pth@cc9:55:~$ help disk space
    No manual entry for disk space
    df (1) - report filesystem disk space usage
    pth@cc9:55:~$

    What shell are you using? This is what I'm testing it on right now, a fairly old bash on a fairly old Debian GNU/Linux:

    pth@cc9:55:~$ $SHELL --version
    GNU bash, version 2.05a.0(1)-release (i386-pc-linux-gnu)
    Copyright 2001 Free Software Foundation, Inc.
    pth@cc9:55:~$

    Maybe try changing a=${@:-help}; to a="${@:-help}";? Or even something like a="'${@:-help}'";? This is a quoting problem (it should pass all arguments of smarthelp as a single argument to apropos) so try to experiment with different interpolation of variables, like $var, "$var", "'$var'", escaping quotes etc. This: a=`echo $!` should work as an ugly work-around.

    Wait a minute... You should get:

    No manual entry for disk
    No manual entry for space

    If there is indeed a problem with quoting in my script, while you got:

    No manual entry for disk space

    which means that man gets it as a single argument. Are you sure you haven't written it as:

    a=${@:-help}; help "$a" 2>/dev/null || man "$a" || apropos $a

    instead of:

    a=${@:-help}; help "$a" 2>/dev/null || man "$a" || apropos "$a"

    ? Are you sure? Please answer as soon as possible. Thanks.

    --
    Sincerely,
    Pan Tarhei Hosé, PhD.
    "Homo sum et cogito ergo odi profanum vulgus et libido."
    1. Re:Are you sure? by Anonymous Coward · · Score: 0

      I have the same problem.

      splice@frodo splice $ $SHELL --version
      GNU bash, version 2.05a.0(1)-release (i686-pc-linux-gnu)
      Copyright 2001 Free Software Foundation, Inc.
      splice@frodo splice $ apropos "'disk space'"
      'disk: nothing appropriate
      space': nothing appropriate

      splice@frodo splice $ apropos '"disk space"'
      "disk: nothing appropriate
      space": nothing appropriate

      splice@frodo splice $ apropos disk space
      disk: nothing appropriate
      space: nothing appropriate

      splice@frodo splice $ apropos "disk space"
      disk: nothing appropriate
      space: nothing appropriate

      splice@frodo splice $ apropos 'disk space'
      disk: nothing appropriate
      space: nothing appropriate

      Seems to be a problem with apropos (which is part of man package). I have version 1.5m, freshly compiled. Man page is very sparse, no info on quoting issues. Not very successful at googling this problem either. Hrm.

  215. Re:The 'help' command: Afterthought by darkxsun · · Score: 1

    Afterthought: These commands we are talking about aren't even something affecting the entire distribution. If you feel they are that necessary, re-compile BASH with this feature, because I'm not writing code for it. But to imply that the default shell should include these features that would only bloat it to the point of being unrecognizable is arrogant to the opinions of hundreds of thousands of users that are already happy with the basic Linux shell that can fit on a bootable floppy.

  216. Re:Exactly by Anonymous Coward · · Score: 0

    Hey, I found out why your karma is so low. It's because of the overrated moderation that was done to your posts. Check out this post for more details.