Free Republic
Browse · Search
News/Activism
Topics · Post Article

Skip to comments.

The Command Line - The Best Newbie Interface?
OSNews ^ | 3-8-2004 | Richard Wareham

Posted on 03/09/2004 7:26:01 AM PST by zeugma

Command Line is your friend, Page 1/4

Introduction
Around 2001 I spent some time working part-time at a local adult-education centre teaching CLAIT, a beginners computing course, to a wide variety of people. These were complete beginners; many had never turned on a machine before. It was as much an education to myself as it was to them.

The key thing to remember about these newbies that I taught is that they were not in any way stupid or slow. Many of them had mastered complex technical jobs and excelled in their chosen field. All these people felt that they were being left behind by IT and that there was some percieved intellectual barrier to entering the computer-enhanced world. This initial assumption on their part is key to the following discussion. 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. The former fear is best addressed at the social level but the latter fear may have some justification based on their mental model of the world.

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. A PuTTY window was made full screen and the users told that the computer was "now running in discussion mode". No mention of alternate operating systems was made until the end of the trial. The users were given a brief talk at the beginning of each session and a 'cheat-sheet' of common commands. The advanced users were encouraged to work with each other while I spent time with the rest of the class.

A day in the life of Aunt Tillie

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). Instead, to discover the appropriate interface metaphor, we should consider one day in the life of the subject of many of Eric S. Raymond's famous thought experiments, Aunt Tillie.

Aunt Tillie has spent all her life coping quite well without computers. She has, no doubt, had a high-flying intellectual job and now in her twilight years she has moved into retirement. Aunt Tillie is not stupid. She is perfectly capable of dealing with people, places and things that arise in her life.

A typical day for Aunt Tillie involves getting up, walking downstairs and checking for any post that may have been delivered. To do this she simply walks to the wicker box hanging under a slot in her door and opens it. She sees two envelopes and takes them to the breakfast table in the kitchen.

Being a typical English lady, she likes to start the day with a refreshing cuppa. Putting on the kettle to boil she sits down and opens the envelopes one-by-one reading the contents of each letter before opening the next. One is a letter from her nephew Eric letting her know that all is well in America and that he is enjoying himself. Aunt Tillie places the letter on the side-table to remind her to write a reply later in the day. The second is some circular advertising some credit card Aunt Tillie neither wants, nor needs. She opts to throw it in the bin.

By this point she realises that the kettle has boiled by the little click it made as it turned itself off. She goes to it and makes a nice cup of tea. Once she has finished her breakfast, Aunt Tillie sets off to do some shopping. Tillie always goes to the little corner grocer because she likes being able to talk about what products are on special offer and what she wants with the grocer. The conversations are usually restricted to fruit and veg but Tillie feels less intimidated talking to the grocer than having to go to the supermarket out of town and try to choose her shopping from the thousands of products on offer.

Once she has finished shopping she goes home and unpacks. She sees the letter from Eric in the kitchen and is reminded to write him a note. She does so and pops it next to the letter box in the hall to remind her to take it out to the post box tomorrow.

Features of Tillie's mental model of the world

This is a natural day for most people and everyone is confident of how things in real life like letter boxes, kettles and grocers work. Let us try to extract some of the features about Tillie's life that make her comfortable and attempt to match them to some user interface for a computer system. Firstly, Tillie doesn't do more than one thing at a time. Certainly she 'multitasks', putting the kettle on while reading mail for example, but her attention is focused in one place at any one time. The indication to Tillie that the kettle has boiled is unobtrusive and effective but she defers dealing with it until after she has read her letters.

Another feature of Tillie's life is known locations for known things. Letters have a certain place when they should be replied to and when they should be sent. Tillie does these things at different times during the day.

Finally we notice the importance of dialogue in her life, both implicit and explicit. Tillie has an implicit dialogue with the letter box, opening and looking for letters is equivalent to asking the box 'Have you any letters' and it replying, in this case, 'Yes, two'. Tillie has explicit dialogue with the grocer while retrieving information about today's products. Tillie's life is rarely control panel driven. We don't see Tillie ticking items on a list of products in the grocers and giving it to the grocer. We don't see Tillie having to locate the open door button, navigate to the destination panel in her garden and remembering if she has to type 'grocers' or 'grocer' to get to the right place.

Throughout the entire day there is an implicit element of discoverability, be it road signs at the appropriate places, notices placed prominently or things in expected or known places. This feature of day-to-day life is often one we overlook but it becomes painfully clear when we are placed in an environment which is not readily discoverable, such as a foreign country with unreadable notices and signs, or one which is unexpected, again a different culture provides different norms of behaviour to which we are not used. One could consider a newbie a tourist in the land of the computer. We must remember the neither know the language or the culture.


TOPICS: Miscellaneous; Technical
KEYWORDS: cli; computers; gui; newbies
Navigation: use the links below to view more comments.
first 1-2021-4041-6061-80 ... 101 next last
This article is an interesting discussion of why a command line interface (CLI) might be a more useful way of teaching new computer users how to interact with a computer. I'm a pretty heavy CLI user so it interested me.

In much the same way that you'll notice when watching someone who is really familiar with a graphical user interface (GUI), that the user will use the mouse and keyboard about 50-50 percent of the time, depending on the task at hand, someone who is really familiar with a CLI and GUI will find themselves switching from one to the other depending upon which context makes sense at the moment.

I think the widespread GUI-only use has had a detrimental effect on many in that they often are lacking some basic information about how computers work much to their detriment. I can't tell you how many times I've seen people panic when they save a file, then have no idea whatsoever where the file is when they need to reference it again. I'd really like to see people have a better idea of the difference between files and directories, and how to use them. It would make their lives much easier IMO.

Select the Source URL for the complete article. It's pretty long, so I didn't post it in its entirety.

1 posted on 03/09/2004 7:26:02 AM PST by zeugma
[ Post Reply | Private Reply | View Replies]

To: rdb3
Penguins might be interested in this.
2 posted on 03/09/2004 7:26:46 AM PST by zeugma (The Great Experiment is over.)
[ Post Reply | Private Reply | To 1 | View Replies]

To: zeugma
Good article. My first class in IT was a DOS course. We had one of those 900 page DOS bibles and started at page one and proceeded chapter by chapter.

The final exam was comprehensive. It was meant not only as a weeder course, but as a way to totally drill into us the nature of the PC beast.
3 posted on 03/09/2004 7:30:36 AM PST by Peter J. Huss
[ Post Reply | Private Reply | To 2 | View Replies]

To: John Robinson; B Knotts; stainlessbanner; TechJunkYard; ShadowAce; Knitebane; AppyPappy; jae471; ...
The Penguin Ping.

Wanna be Penguified? Just holla!

Got root?

4 posted on 03/09/2004 7:31:16 AM PST by rdb3 (The Servant of Jehovah is the Christ of Calvary and of the empty tomb. <><)
[ Post Reply | Private Reply | To 2 | View Replies]

To: zeugma
I noticed long ago, if you watch someone who is really expert at a GUI application, they're using those keyboard shortcuts wherever one exists. They've completely internalized them, so they don't have to think about it or look away from what they're doing or fiddle with drop-downs or anything.
5 posted on 03/09/2004 7:35:32 AM PST by prion
[ Post Reply | Private Reply | To 1 | View Replies]

To: zeugma
A basic problem is that most command line commands are written in compressed proto-Tibetan. MSDOS with intelligible commands that actually indicate what the command does would be novel.
6 posted on 03/09/2004 7:44:41 AM PST by Grut
[ Post Reply | Private Reply | To 1 | View Replies]

To: Peter J. Huss
I believe the majority of computer users today have never written a single line of code. There are many of us who had 20 years of computing in before we ever even saw an "icon".

Just ask the next person you see in front of a terminal what an interrupt is. If they say "a phone call" then you know how much they know about computers.

I was bombarded in the mid and late 80's by people asking me to tell them everything I could about computers...

Pick up Knuth's "the art of computer programming". Stacks and queues and fifo and lifos!

If I can't code it in Basic, it can't be done at all!


7 posted on 03/09/2004 7:49:57 AM PST by djf
[ Post Reply | Private Reply | To 3 | View Replies]

To: zeugma
Well, I started computing back in 1980. crApples, TraSh-80's, even worked on some early Zilog powered things, forgot the name, some demon sounding thing.? Well anyways, I was probably the last guy here at work to get GUIfied. I find the metaphor WORKS for most things, and for most people. For some things, a command line is just much easier to do (renaming large number of files using wildcards, for example). So I pop it up every once in a while.

When I did tech support, it was MUCH easier with a CLI. I can't do tech support at all with GUI's, its just too frustrating. If they insist, I'll have them set up remote desktop, and do it that way.

8 posted on 03/09/2004 8:02:51 AM PST by Paradox (In the future, everyone will be Hitler for 15 minutes.)
[ Post Reply | Private Reply | To 1 | View Replies]

To: djf
I rose up in the field in the mid-1990s and peaked at a Certified Notes Professional (e-mail admin).

Now I program RPGLE on the AS/400. It's a graceful language, mature, trusty.
9 posted on 03/09/2004 8:06:49 AM PST by Peter J. Huss
[ Post Reply | Private Reply | To 7 | View Replies]

To: zeugma
It seems to me that saying someone should learn command line when they're working in a GUI world is like having someone rebuild an engine as the first step in learning how to drive.

It does point up some of the disconnects that I have with many of the Linux and Windows programmers on this site. I want to work on photographs, not learn command line prompts. Mechanics assume everyone should learn to be a mechanic, programmers assume everyone should learn "nuts and bolts of programming." Well, EMTs would probably be better off if they went to medical school. There's simply not enough time. The benefit would be so small for a user who won't be programming anything that seriously proposing it would be laughed out of a strategy meeting. If you're lucky, you might get one day of computer system familiarization training at your company. Start with command line? Don't be absurd. All workforce education training starts with "must know" material and works out to "nice to know" material. There are always trade offs in terms of time to train vs. material that must be learned. From a theoretical standpoint, it might make sense to start people on command line, but only if you have an unlimited training budget and management didn't expect these people to be productive for about six or seven months after they're hired. That just won't happen in most situations.

10 posted on 03/09/2004 8:10:13 AM PST by Richard Kimball
[ Post Reply | Private Reply | To 1 | View Replies]

To: rdb3
Wanna be Penguified? Just holla!


11 posted on 03/09/2004 8:14:25 AM PST by cinFLA
[ Post Reply | Private Reply | To 4 | View Replies]

To: zeugma
I don't have the software to run a gui loaded on my non-windows servers. My rs/6000 has smitty, which is, IMHO, the best thing going for system management: I'm hoping IBM's involvement in linux gets that sucker ported over to linux asap. My netware - at least on the server, uses those famous netware menus, although a lot is done with that nasty Console1 gui, which I run at my workstation.

Overall, I think the gui puts a layer of abstraction between the admin and the system.
12 posted on 03/09/2004 8:15:55 AM PST by Salo (You have the right to free speech - as long as you are not dumb enough to actually try it.)
[ Post Reply | Private Reply | To 1 | View Replies]

To: Grut
Actually, most commands are seldom, if ever used. A good foundation can be built with about 10 commands. If someone can't learn 10 commands, they probably have more problems than just the command line.

The DOS equivalents for the above would be: cd, copy, ren, mkdir (or md), rmdir (or rd), none*, none* , type, more, none*. (* some commands have no eqivalent)

13 posted on 03/09/2004 8:15:58 AM PST by zeugma (The Great Experiment is over.)
[ Post Reply | Private Reply | To 6 | View Replies]

To: Richard Kimball
The philosophy change is due to the number and availability of computers. When I started, if my program looped and burned up ten seconds of cpu, I'd get burned at the stake. Computers used to be tremendously expensive, input and output was slow, tedious, and error prone.

So it paid dividends for companies to seek out people who had good knowledge of the internals. To prevent waste, and, where possible, to speed things up.

14 posted on 03/09/2004 8:21:46 AM PST by djf
[ Post Reply | Private Reply | To 10 | View Replies]

To: zeugma
Everyone should learn the way I learned: feeding punch cards with your craptastic FORTRAN code into a reader, then waiting (and waiting) for some result to come back on the tractor-feed printer.

Until you have done that, you just don't get 'computing'.
15 posted on 03/09/2004 8:24:40 AM PST by spodefly (Ultrakonservativen Aktivisten -- Die konservative Klick-Guerilla)
[ Post Reply | Private Reply | To 1 | View Replies]

To: prion
I noticed long ago, if you watch someone who is really expert at a GUI application, they're using those keyboard shortcuts wherever one exists. They've completely internalized them, so they don't have to think about it or look away from what they're doing or fiddle with drop-downs or anything.

Yup. And then there's the real, unbeatable advantage of a CLI: the ability to quickly create and run scripts, batch files, or whatever you want to call them.

In my line of work, there are times when I have to run the same software, with different inputs, a couple of hundred times in a row. I can whip up a couple of batch files in a few minutes, kick it off, and come back when it's done. You've got a tremendous amount of flexibility, too -- you can do all sorts of manipulation.

With a GUI, you have to do every damned step, time and time again, unless some nice programmer has offered you some GUI function to build and run a particular type of script.

That, BTW, is precisely why I grew to loathe Mac operating systems -- no easy access to the command line interface that makes my life a whole lot easier.

16 posted on 03/09/2004 8:24:58 AM PST by r9etb
[ Post Reply | Private Reply | To 5 | View Replies]

To: Salo
Smitty rocks. I can't imagine building/managing volume groups without it. The best thing is, once you are ready to do what needs to be done, it will give you exactly the command line needed to do it, and document it in the log. I can write documentation that will allow a janitor to perform the most complex admin tasks imaginable (barring typoes) using logs create by smitty.
17 posted on 03/09/2004 8:26:41 AM PST by zeugma (The Great Experiment is over.)
[ Post Reply | Private Reply | To 12 | View Replies]

To: zeugma
rm -rf *
18 posted on 03/09/2004 8:27:51 AM PST by spodefly (Ultrakonservativen Aktivisten -- Die konservative Klick-Guerilla)
[ Post Reply | Private Reply | To 13 | View Replies]

To: zeugma
I think the widespread GUI-only use has had a detrimental effect on many in that they often are lacking some basic information about how computers work much to their detriment.

It surprises me how mouse-dependent people have gotten. I did a little DOS work way back in the day, and I've always preferred typing things to clicking on things. My new co-workers are shocked and impressed at my hotkey speed, and I'm almost reluctant to share the secret with them lest I undercut my own prestige.
19 posted on 03/09/2004 8:27:52 AM PST by Xenalyte (I may not agree with your bumper sticker, but I shall defend to the death your right to stick it)
[ Post Reply | Private Reply | To 1 | View Replies]

To: spodefly
Yup!! Or rebuild and install a shredded carriage control tape on an old 1403 printer! Those were the daze...!
20 posted on 03/09/2004 8:28:19 AM PST by djf
[ Post Reply | Private Reply | To 15 | View Replies]


Navigation: use the links below to view more comments.
first 1-2021-4041-6061-80 ... 101 next last

Disclaimer: Opinions posted on Free Republic are those of the individual posters and do not necessarily represent the opinion of Free Republic or its management. All materials posted herein are protected by copyright law and the exemption for fair use of copyrighted works.

Free Republic
Browse · Search
News/Activism
Topics · Post Article

FreeRepublic, LLC, PO BOX 9771, FRESNO, CA 93794
FreeRepublic.com is powered by software copyright 2000-2008 John Robinson