Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!husc6!sri-unix!sri-spam!mordor!lll-tis!ptsfa!nonvon!gilsys!mc68020 From: mc68020@gilsys.UUCP (Thomas J Keller) Newsgroups: comp.unix.wizards,comp.arch Subject: Re: Large programs Message-ID: <1130@gilsys.UUCP> Date: Sat, 3-Oct-87 14:12:40 EDT Article-I.D.: gilsys.1130 Posted: Sat Oct 3 14:12:40 1987 Date-Received: Thu, 8-Oct-87 02:17:55 EDT References: <1046@ius1.cs.cmu.edu> Distribution: na Organization: Consequently Computers, Santa Rosa, Ca Lines: 56 Keywords: UNIX LS HUMOR Summary: All this talk of using "existing tools" seems to be overlooking what to me is a fairly significant point. Xref: mnetor comp.unix.wizards:4694 comp.arch:2515 In article <1046@ius1.cs.cmu.edu>, edw@ius1.cs.cmu.edu (Eddie Wyatt) writes: > > "In the absence of the ability to redirect output and input, > [ stuff about why ls shouldn't have lot's of options ] > authors of commands such as 'ls' to provide such a wide variety of output > options." > > Its seems very funny that they use 'ls' as an example since that > command now is so burdened with options. The functionality of which > could be provided by piping the output of the command into other > UNIX utilities. It seems that someone lost sight of the original plan. Okay, now I am the first to admit that I am a relative neophyte to UNIX and its philosophy, but it seems to me that a crucial point is being missed here. I read quite frequently about how programs should be kept small, simple, single-purpose, and then tied together with pipes to perform more complex tasks. This is all well and good from one perspective. But it seems to me that it ignores a perspective which is highly important (not altogether surprising, as UNIX has a well established tradition of ignoring this aspect of computing), specifically, the user interface. 1) entering a command which uses three to seven different small programs, all piped together, is a *PAIN* in the arse! In many cases, a single command is much more desireable, certainly less prone to errors, and always eaiser and faster to use. 2) speaking of speed, we all seem to have forgotten that each one of those lovely small programs in the chain has to be loaded from disk. Clearly, the overhead necessary to fork & spawn multiple processes, which in turn load multiple program text into memory, is **MUCH** greater than spawning and loading a single program! Waiting time is important too, you know? I use the power of the I/O re-direction in UNIX whenever it makes sense to do so, and I find it extremely useful I would suggest, however, that mono- maniacal adherence to a so-called "UNIX Philosophy" which for the most part blatantly ignores the needs and convenience of the USERS is an error. Sure, it's FUN to be a wizard, and know how to invoke arcane sequences which accomplish what are really fairly simple tasks, and to have unsophisticated users in awe of your prowess. Fun and very satisfying. But not very effective, and for my money, highly counter-productive. There is no reason that UNIX should remain a mysterious and arcane system which typical users are fearful to approach, yet this is the case. Continuing promulgation of the "UNIX Philosophy", as it currently exists, can only ensure that fewer people will learn and use UNIX. It is time for us to get our egos and our heads out of the clouds, and make UNIX a reasonable, effective environment for everyone, not just the wizards. [stepping down off soapbox, donning asbestos suit (don't tell the EPA!)] -- Tom Keller VOICE : + 1 707 575 9493 UUCP : {ihnp4,ames,sun,amdahl,lll-crg,pyramid}!ptsfa!gilsys!mc68020