Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!sample.eng.ohio-state.edu!purdue!haven.umd.edu!decuac!hussar.dco.dec.com!mjr From: mjr@hussar.dco.dec.com (Marcus J. Ranum) Newsgroups: comp.unix.wizards Subject: Re: file attributes Message-ID: <1991Jun22.174141.10152@decuac.dec.com> Date: 22 Jun 91 17:41:41 GMT References: <1743@sranha.sra.co.jp> <1991Jun20.085530.24353@prl.dec.com> <1753@sranha.sra.co.jp> Organization: Lines: 48 erik@srava.sra.co.jp (Erik M. van der Poel) writes: >> Haven't you seen SCO's Open Desktop? It does just this, but without >> (I hope) any gruesome kernel hacks. > >But does SCO's product allow you to click on the icon that represents >the 1/4 inch cartridge tape drive, to automatically select tar or cpio >(or whatever) for reading the tape? You're joking, I assume! How dare you even assume I *WANT* to read the tape? That's the problem with all this GUI GLOP - it makes a lot of really stupid assumptions. First off, any user who knows enough about UNIX to understand what tar/cpio/dd/grep/whatever is, is probably not going to waste time with a GUI anyhow. You throw away too much of the nice abilities UNIX has - how do you do a pipe with a point and click user interface? (and are you patient enough to do whatever mouse contortions would be necessary to set the pipe up, when you can just type it?) What about multiple files passed to something as a parameter? Suppose I have 16 C source files I want to shove into cc. It is *NOT* sufficient to set their default execution to be "cc file" because I may want to pass compiler flags. So I have to edit the damn attributes and then, joy and bliss, I can *click* and they compile. Where does my error text go? (yes, I sometimes make errors) Do I then have to completely reset the attributes when I want to pump them through lint? No thanks. I'll just have to keep crawling along typing "make", "make clean", or "make lint" instead. FYI, I don't use tar *or* cpio every time I want to do something to a tape. Sometimes I use cat, grep, zcat, and so forth. For a GUI to be half useful, it'd have to know which I wanted when - let me guess, the data on the tape should have meta-data at the tape header, too, right? ioctl(tapefd,TIOCWTFAREYOU,&buf); I second Chris Siebenmann's suggestion that people read Pike's paper on "help" in the latest USENIX. It, in a nutshell, has the grace to assume you know what you're doing, yet tries to facilitate your work by keeping as much quickly re-usable information about your working context around - information which can be quickly used to cut and paste commands and basically save you typing. mjr. PS - As an aside, I realized years ago that GUIs were an utterly stupid idea the day when I completed a complex click-drag-drop operation and it asked me "are you sure?" as if I had *ACCIDENTALLY* grunted and sweated to manipulate the silly mouse to drop the icon into the bloody flaming trashcan!!!!!