[comp.unix.misc] shell architecture

thor@thor.atd.ucar.edu (Richard Neitzel) (01/22/91)

In article <4584@lib.tmc.edu>, jmaynard@thesis1.hsch.utexas.edu (Jay Maynard) writes:
|> Unix is at the far end of the scale: it's actively user-hostile. Power to
|> the programmer means incomprehensibility to the user. I wouldn't even
|> consider handing a user a raw $ or % prompt, X terminal or not. It's simply
|> too daunting. Unix' terseness is a win for a programmer, but a major loss
|> for a user. It took me two years of running a Unix system at home before I
|> got comfortable with it, and I'm a systems programmer by trade. How long
|> does it take a user?
|> 
|> >technoignorami (tek'no-ig'no-ram`i) a group of individuals that are constantly
|> >found to be saying things like "Well, it works on my DOS machine ..."
|> 
|> The difference is, as another said, that Unix types are generally programmers,
|> while DOS users are getting real work done. Someone who says something like
|> that deserves support, not contempt. I hope you don't display that attitude
|> to _your_ users.
Care to back that up with any facts? Our division has ~22 people, all but 3 are 
engineers, scientists or technicans. The only use DOS machine get any more are as
terminals and for running specialized peripherals like prom burners. All other work 
is done under UNIX. I cannot think of ANY OS or environment that is not 
incomprehensibile to a novice. That's what manuals and training are for. Perhaps you 
had better look at what you are providing your users in the way of support. In
fact I would suggest that this attitude of the poor user being unable to understand
system XYZ is really a red herring. What is really the issue is the unwillingness
of support personnel to move into an unfamilar environment. One covers one's
tracks by saying "Oh, you are too ignorant and incapable of learning to run UNIX
dear end user." Now that's contempt! Our attitude is that if you need to use a tool,
we'll provide all the support needed to get people going, but we know you're 
capable of learning it. Guess what - our users do not find UNIX difficult or unwieldy,
especially compared to their prior experiences with OSs (mainly VMS and DOS). 
We have one user who is running a 2 system subdomain for CAD work. He's doing all the
system administration work - and he learned it all in about 6 months. BTW, I'm 
amazed that it took two years for someone to become comfortable with any system. 
Having moved from CPM to RSX to VMS to UNIX, I've never found it took more then about 
2 months to be comfortable and about 6 months till I was able to start hacking at 
the kernel. If it takes a long time for one to get comfortable, perhaps that person 
ought to determine if a) they are not really using the new system often enough or
b) they have a thick hide of prejudices, which the new system violate. 

-- 
Richard Neitzel thor@thor.atd.ucar.edu	     	Torren med sitt skjegg
National Center For Atmospheric Research	lokkar borni under sole-vegg
Box 3000 Boulder, CO 80307-3000			Gjo'i med sitt shinn
303-497-2057					jagar borni inn.

vinoski@apollo.HP.COM (Stephen Vinoski) (01/23/91)

In article <4584@lib.tmc.edu> jmaynard@thesis1.hsch.utexas.edu (Jay Maynard) writes:
>In article <365@bria> mike@bria.UUCP (Michael Stefanik) writes:
>>The real challenge is to provide an end-user interface that is simple to
>>use, and covers most of the bases.  However, a fundamental deviation from
>>the philosphy of "power to the programmer" would be a major mistake, in my
>>mind anyhow.
>
>Unix is at the far end of the scale: it's actively user-hostile. Power to
>the programmer means incomprehensibility to the user. I wouldn't even
>consider handing a user a raw $ or % prompt, X terminal or not. It's simply
>too daunting. Unix' terseness is a win for a programmer, but a major loss
>for a user. It took me two years of running a Unix system at home before I
>got comfortable with it, and I'm a systems programmer by trade. How long
>does it take a user?

Thank you for reinforcing my opinion of those who call themselves "systems
programmers."  Two years?  Sheesh!


-steve


| Steve Vinoski  (508)256-6600 x5904       | Internet: vinoski@apollo.hp.com  |
| Testability and Diagnostics              | UUCP: ...mit-eddie!apollo!vinoski|
| HP Apollo Division, Chelmsford, MA 01824 |       ...uw-beaver!apollo!vinoski|

jerry@TALOS.UUCP (Jerry Gitomer) (01/23/91)

jmaynard@thesis1.hsch.utexas.edu (Jay Maynard) writes:

JM>I've avoided this discussion (which is drifting from comp.arch's charter
JM>again) so far, but this is one of my hot buttons. Followups redirected to
JM>a more appropriate group.

JM>In article <365@bria> mike@bria.UUCP (Michael Stefanik) writes:
ms>The real challenge is to provide an end-user interface that is simple to
ms>use, and covers most of the bases.  However, a fundamental deviation from
ms>the philosphy of "power to the programmer" would be a major mistake, in my
ms>mind anyhow.

JM>Unix is at the far end of the scale: it's actively user-hostile. Power to
JM>the programmer means incomprehensibility to the user. I wouldn't even
JM>consider handing a user a raw $ or % prompt, X terminal or not. It's simply
JM>too daunting. Unix' terseness is a win for a programmer, but a major loss
JM>for a user. It took me two years of running a Unix system at home before I
JM>got comfortable with it, and I'm a systems programmer by trade. How long
JM>does it take a user?

ms>technoignorami (tek'no-ig'no-ram`i) a group of individuals that are constantly
ms>found to be saying things like "Well, it works on my DOS machine ..."

JM>The difference is, as another said, that Unix types are generally programmers,
JM>while DOS users are getting real work done. Someone who says something like
JM>that deserves support, not contempt. I hope you don't display that attitude
JM>to _your_ users.

End users (IMHO) should not be exposed to command languages! 

For my UNIX end users I provide shell script menus that
enable them to get work done.

For the System Administrators I provide detailed step-by-step 
written procedures (something like 45 at last count) for each 
task that an SA has to perform to take care of an operational system.

-- 
Jerry Gitomer at National Political Resources Inc, Alexandria, VA USA
I am apolitical, have no resources, and speak only for myself.
Ma Bell (703)683-9090      (UUCP:  ...{uupsi,vrdxhq}!pbs!npri6!jerry 

allbery@NCoast.ORG (Brandon S. Allbery KB8JRR) (01/23/91)

As quoted from <4f5c65f2.20b6d@apollo.HP.COM> by vinoski@apollo.HP.COM (Stephen Vinoski):
+---------------
| In article <4584@lib.tmc.edu> jmaynard@thesis1.hsch.utexas.edu (Jay Maynard) writes:
| >for a user. It took me two years of running a Unix system at home before I
| >got comfortable with it, and I'm a systems programmer by trade. How long
| >does it take a user?
| 
| Thank you for reinforcing my opinion of those who call themselves "systems
| programmers."  Two years?  Sheesh!
+---------------

At the other end of the scale, I picked up Unix --- not just using the shell,
but also the basic "tools" philosophy which makes it what it is (or at least
*was*) in three weeks.

But don't be *too* hard on people.  My mother was a comfirmed computer
illiterate and was getting absolutely nowhere with a computer at work until I
taught her my "secret":  that you can't hurt the computer by trying things.
(Within reason, of course.  Don't try "rm -rf /" at home, kids!  ;-)  But
then, if what you're trying is OS/shell features, up-to-date backups are a
very good idea anyway.)

I can learn to use a program that's completely new to me in less than a week
by setting up a "play area" --- then "doing my worst" in that area.  For
example, fire up a word processor or spreadsheet on a new file or on a copy of
an existing one, then start trying out commands.  I usually get a new OS to
play with on a new computer, so I load the system and play with it --- then
reload it once I know what's what, usually tuning the reload for the system's
intended purpose.

In learning computers or computer programs, caution is a good idea --- but TOO
MUCH caution is almost as bad, because (like so many other things in the
world) manuals are no substitute for experience.  But with computers, you can
get that experience if you're willing to sit down and just try things.  The
problem is that, to a novice, computers are awfully expensive devices whose
internals are completely incompresensible, and there is a quite natural fear
that doing even the slightest thing "wrong" will wreck it beyond repair.
Similarly for programs, operating systems, etc.:  the fear is always there
that doing something "wrong" will ruin it.  But all it takes is a little
caution to make sure nothing important will be touched --- then you can
discover that computers and computer programs are far more forgiving than most
other things.  After all, a mistake while learning how to drive a car can kill
you --- but a mistake while learning how to use a computer can be easily
corrected if a little common sense is used beforehand.

BTW, I don't know if *any* of this applies to Jay; the real world contains an
awful lot of complications.  As an example:  I regularly crashed ncoast when I
first discovered it (1981), because the OS it was running was extremely buggy.
This would have made me extremely hesitant to "play" with it, except that I
caught one of the OS bugs in action.  [The system panicked whenever the
process IDs rolled around.]  Nor are computer/OS/program bugs the only source
of complications --- Murphy is always looking for a chance to step in and
wreak havoc in otherwise simple situations.

++Brandon
-- 
Me: Brandon S. Allbery			    VHF/UHF: KB8JRR on 220, 2m, 440
Internet: allbery@NCoast.ORG		    Packet: KB8JRR @ WA8BXN
America OnLine: KB8JRR			    AMPR: KB8JRR.AmPR.ORG [44.70.4.88]
uunet!usenet.ins.cwru.edu!ncoast!allbery    Delphi: ALLBERY

davidsen@crdos1.crd.ge.COM (Wm E Davidsen Jr) (01/23/91)

In article <4584@lib.tmc.edu> jmaynard@thesis1.hsch.utexas.edu (Jay Maynard) writes:

| Unix is at the far end of the scale: it's actively user-hostile. Power to
| the programmer means incomprehensibility to the user. I wouldn't even
| consider handing a user a raw $ or % prompt, X terminal or not. It's simply
| too daunting. Unix' terseness is a win for a programmer, but a major loss
| for a user. It took me two years of running a Unix system at home before I
| got comfortable with it, and I'm a systems programmer by trade. How long
| does it take a user?

  We take new users in with a small writeup on the overall structure and
filename expansion. People starting cold seem to have no trouble with
it, previous DOS users always expect something else and never use pipes
or multiple commands on a line, and Mac people don't seem to have
trouble with it but may prefer a desktop X interface. Amiga users just
seem to use it right off.
-- 
bill davidsen	(davidsen@crdos1.crd.GE.COM -or- uunet!crdgw1!crdos1!davidsen)
  "I'll come home in one of two ways, the big parade or in a body bag.
   I prefer the former but I'll take the latter" -Sgt Marco Rodrigez

daveb@nostromo.austin.ibm.com (Dave Burton) (01/24/91)

In article <4584@lib.tmc.edu> jmaynard@thesis1.hsch.utexas.edu (Jay Maynard) writes:
|Unix is at the far end of the scale: it's actively user-hostile. ...
|I wouldn't even
|consider handing a user a raw $ or % prompt, X terminal or not. It's simply
|too daunting. Unix' terseness is a win for a programmer, but a major loss
|for a user.
|...
|The difference is, as another said, that Unix types are generally programmers,
|while DOS users are getting real work done.

Read the following in the context of "getting real work done."

First, "real" work is done under MSDOS and Unix with third-party applications,
not with the built-in or supplied programs.  Invocation is, or can be made
to look, the same under both.  Therefore, once the users understand how to
log in, even if they don't comprehend what logging in is, the differences are
only cosmetic. (MSDOS shells are the exception, but for all of the businesses
I've worked with, command.com was the norm.)

So, when comparing Unix to MSDOS, it's not entirely fair to claim that
Unix is (more) terse.  The commands are different, but not generally more
terse.  The most commonly used dos commands and their Unix equivalents:
	MSDOS		UNIX
	-----		----
	dir		ls
	cd x		cd x
	cd		pwd
	prompt=x	PS1=x
	path=x;y;z	PATH=x:y:z
	copy		cp
	ren		mv
and of course, the infamous backslash abortion of MSDOS - just so it would
be different from Unix (grrrr).

*Any* user who can command MSDOS with the above can learn and command Unix
with the equivalents.  Some caution needs to be taken with escapes and
quoting, but the general advise "if you see the `>' prompt, press <DEL>"
suffices.  Recalcitrant users can have aliases/functions/scripts that
exactly mimic MSDOS (save the backslash and slash distinctions).  If that's
really the problem (_really_?), there are common.com clones that run under
Unix.

What makes Unix "actively user-hostile?"  The number of manuals it comes
with, the number of floppies required to install it, the initial installation,
and its reputation for being obscure.  Even a poor consultant, the kind usually
found in retail stores, can set up the system to run with a minimum of
maintenance.  For that matter, virtually any literate user with even a hint
of determination can set up current Unix small system offerings.
It's Not That Difficult(tm).

No, Unix is not (quite) as easy as MSDOS.  Neither is it terribly arcane
in comparison.  And when real power is needed, it's there...
--
Dave Burton
inet: daveb@bach.austin.ibm.com
uucp: cs.utexas.edu!ibmchs!auschs!nostromo!daveb

klaus@cnix.uucp (klaus u schallhorn) (01/25/91)

In article <4943@awdprime.UUCP> daveb@bach.austin.ibm.com (Dave Burton) writes:
>In article <4584@lib.tmc.edu> jmaynard@thesis1.hsch.utexas.edu (Jay Maynard) writes:
>|Unix is at the far end of the scale: it's actively user-hostile. ...
>|I wouldn't even
>|consider handing a user a raw $ or % prompt, X terminal or not. It's simply
>|too daunting. Unix' terseness is a win for a programmer, but a major loss
>|for a user.
>|...
>|The difference is, as another said, that Unix types are generally programmers,
>|while DOS users are getting real work done.
>
>Read the following in the context of "getting real work done."
>
>First, "real" work is done under MSDOS and Unix with third-party applications,
[ ... ]
and, in the case of MSDOS, with lots of little fingers, and secretaries to
remember what to do when, what to do in which sequence and so on.

Lots of our work that actually brings in the bread has been delegated to this
little fellow by the name of cron sitting right behind the screen. He's
never sick, only has a vacation while the operating system is upgraded,
only goes to the dentist during power cuts.

I have a "competitor" [we're actually friends] who uses 10 PCs. Some of them
for long running jobs like database deduplication. He forked out I don't
know how much for a 386 that does just that - when needed - and is otherwise
idle.

My cost for the same application:
0       4       *       *       0       /home/bin/dedupe

Printing of invoices, reminders, the cutting off of supplies, deliveries
and lots of other things are done by some rather large cron tables here
on two suns, by me and my wife, whereas my friend employs 6 staff [ah, we're
into religion now]. While cron is churning we can actually walk the dog
every afternoon, either through the park or sometimes at the beach.
>
>No, Unix is not (quite) as easy as MSDOS.  Neither is it terribly arcane
>in comparison.  And when real power is needed, it's there...

If you expect to fly a tornado with hang glider controls you might be
in for a similar surprise. And yes, I find msdos rather user unfriendly
and arcane - compared to my solar calculator.

>--
>Dave Burton
>inet: daveb@bach.austin.ibm.com
>uucp: cs.utexas.edu!ibmchs!auschs!nostromo!daveb

klaus
-- 
George Orwell was an Optimist

jmaynard@thesis1.hsch.utexas.edu (Jay Maynard) (01/28/91)

In article <1991Jan23.042700.4453@NCoast.ORG> allbery@ncoast.ORG (Brandon S. Allbery KB8JRR) writes:
>As quoted from <4f5c65f2.20b6d@apollo.HP.COM> by vinoski@apollo.HP.COM (Stephen Vinoski):
>+---------------
>| Thank you for reinforcing my opinion of those who call themselves "systems
>| programmers."  Two years?  Sheesh!
>+---------------

Thanks, Stephen. I like you too.

>BTW, I don't know if *any* of this applies to Jay; the real world contains an
>awful lot of complications.

It does indeed...my first Unix system was Microbug...er...Microport's
System V/AT, versions from 1.3 to 2.4. Working around Microport's bugs
was *very* educational. :-(

My experience on small computers, up until the time I started with Unix, was
with CP/M and MS-DOS. I was used to small, clean, fast implementations
that didn't demand much administration and were easy for programmers to
deal with, and that weren't chock full of cryptic commands whose names were
chosen for typing ease rather than ease of figuring out for the uninitiated.
My work experience with MVS-based IBM mainframes didn't help, either. Unix is
like *none* of the systems I had dealt with before, and the mindset was alien
to me.

-- 
Jay Maynard, EMT-P, K5ZC, PP-ASEL | Never ascribe to malice that which can
jmaynard@thesis1.hsch.utexas.edu  | adequately be explained by stupidity.
"Today is different from yesterday." -- State Department spokesman Margaret
Tutwiler, 17 Jan 91, explaining why they won't negotiate with Saddam Hussein