From: hopkins@kaleida.com (Don Hopkins)
Date: Thu, 3 Feb 94 01:32:23 PST
To: Bruce.Tognazzini@sun.com
Subect: Sun User Interfaces

Hi, Tog! Last time we corresponded, you said you were working on designing what Open Look will look like in a few years, and it's too bad that plans have changed, but I hope you get to do some wonderful stuff with NeXT Step! In any case, I have a funny story to tell you!

I ported SimCity to Unix, and made it into a multi player game for X11. Now I've just compiled it on Solaris 2.3, to distribute it on Sun's Catalyst CD. I distributed the earlier version that I ported to HyperLook (the NeWS based UIMS from the Turing Institute) on an earlier Catalyst CD (the one that says "Game Inside"), and we got a few bites from that, but by far the best means of distribution has been via anonymous ftp on the i9n s10y (that's the i18n of "information superhighway").

Sun ships the Catalyst CD with every new Sun, so it seems like a good way to reach alot of customers. So I have put some time into trying to create a presentation for the CD that shows some unaltered screen snapshots (so rare in this industry ;-), to let customers see what it looks like, before deciding to install and run the demo. If I can convince them to run the demo, then they'll be addicted, and it'll sell itself.

Now I have the Catalyst CDware developer's disk, that contains the software used to create presentations for the Catalyst CD. It includes a browser that lets me look at documentation for putting together product information, presentations, and demos to be distributed on the Catalyst CD. This browser is the same one that customers are going to be using to browse and install the products on the disc. It cleverly documents itself, installs sample directory trees, runs icon, image, and slide editors to help me create my presentation, and even recursively runs itself on the presentation I have created. All with the same user interface that the customers are going to use. This is what I call making your bed and sleeping in it too, and that's something I respect.

But it's a bed of nails. It would take megabytes of multimedia madness to describe how horrible the user interface is. Even that would be no substitute for trying it first hand, yourself. Not only is it incredibly obnoxious, slow, and counterintuitive, but it simply doesn't work. No kidding.

DUX Software is paying by the megabyte to put SimCity on this CD. We cannot afford to pay for the megabytes that it would take to work around even a few of the gaping holes in this system. My first shock was when I asked the browser to show me a PostScript file of documentation. It ran "imagetool", and after several seconds on a 2 processor SS10, it popped up a window and drew the page. Then half a second later, the window frames were systematically ripped out from around each of my windows, like pulling the tablecloth out from under a fully set dinner table. Then the screen went white and it printed the shell prompt in giant letters at the bottom of the console. The "imagetool" killed my window manager, which toppled the window system (ask Steve Evans how hard I fought to get Sun to stop using "xinit" which causes this pathetic behavior. They're still using it. Thanks Steve, for that catastrophic crash. I think of you every time.) I had made the cardinal sin of running the wrong window manager.

Actually, I was running "piewm", which is a modification of "tvtwm" that I hacked pie menus into, which was derived from "twm". Now, "twm" is a simple window manager shipped with OpenWindows, but "not supported". But I ran it anyway to see if somewhere along the line I or somebody else had introduced a fatal bug into the window manager. Well "imagetool" core dumped "twm" the same way as it killed my poor little "piewm", so at least it wasn't my fault. So I ran "olwm", the officially supported (but obsolete) window manager. And it worked, I could actually display a PostScript file on this $50,000 workstation! And gif files, too!!! As long as I was running "olwm". Now, I could switch back and forth between window managers depending on whether I wanted to display postscript files and images, or pop up pie menus to run programs and move my windows around, since X11 is specifically designed to make that possible (at the expense of much other complexity, but I won't get into my rant about the i39l (that's the i18n of Interclient Communication Conventions Manual). Except for that pesky "xinit" program that makes this an incredible pain in the ass (why, I'd rather not explain -- ask Steve Evans, I explained it to him once, but I'm not sure he cared).

But there's one problem: what about the CUSTOMERS??? I'm not the only person in the world who's not running "olwm", especially after all the announcements about Motif and Open Step and First Person and General Magic. It's just not cool to run Open Look any more. Soon Bevis and Butthead will be giggling at Adam Curry, "huh huh huh, he's running olwm!" So I repeat, what are the customers going to think when they try to run my slide show? Why they'll think it's my fault, of course. Because it's unthinkable that Sun would ship such crap. It must be the fault of those fly by night third party vendors. And after a catistrophic crash like that, what do you think they're going to do with the Catalyst CDROM? That's right, they're going to put it in the MICROWAVE, without ever even running my wizzy demo!!!

Well as you might expect, I complained to Sun about this wee problem. They said it was tough, that's the way Sun Software is, but thanks for the money. Customers would just have to run "olwm" or get blown out of the water. I asked if Sun could include the public domain "xv" image viewer that doesn't blow away the window manager, but no dice. I'd have to pay by the meg if I wanted a patch like that. Anyhow, the "xv" user interface doesn't fit in with the Sun look and feel (it looks too much like a Mac).

Ok. I submitted. Better that some people hate DUX for blowing away all their windows, so that the ones stupid enough to run "olwm" can have a chance to see a picture of SimCity, even if we have to pay by the megabyte for those screen dumps most sane people will only see for a half second.

So I ran the slide editor, in the hopes of putting together a very simple, no bullship, single page slide show consisting of an unretouched screen snapshot of SimCity in action. It came up announcing itself as "Slide Editor V5.0". I pulled down the file menu, and selected "Open...", and was confronted with the most bizarre file dialog I've seen on a Sun. I was glad to see they'd finally added a scrolling list of file names, quite a step up from the old two text fields for directory and file name (those were retained in this dialog, under the scrolling list, the "File:" field is just *above* the "Directory:" field, which is wider than the other field, but is to narrow to display a whole directory, so you get those great Open Look text field scroll buttons.

(Yeah, I admit it, I implemented Open Look text field scroll buttons for the NeWS toolkit myself, so I really appreciate them when I see them. And they're getting pretty rare these days. But those XView ones just don't track the way I like...) Underneath those text fields is a "Percent" thermometer that has a little blob of mercury to the left of the 0% label so it looks like it's at -5%. There are lots of other zany numeric fields for setting or getting or modifying the image width, height, depth, x, and y, and also a bunch of 3D settings stacked up like a totem pole. (I kinda like the totem pole effect actually, it lets your eyes distinguish between different controls easily, so you get familiar with the totem pole and can home in on a particular one more easily than if they were in a regular grid. To see the neato colorful totem pole pallet I designed, check out the editing tool pallet in the X11 version of SimCity.)

Oh yes, and then there's the load button. Can't operate it from the keyboard, but at least it beeps and complains "You must select a file first." when you click on it with the mouse.

Since the default directory was the binary directory on the CDROM where the imagetool and cdmanager software live, I typed ^U and entered the Unix slang for my home directory, a single tilde, and hit return. Nothing happened. Not a peep from the keyboard, not rattle from the disk. Oh well, I'm in a submissive mood, so I typed ^U again and entered the whole path name from the keyboard, since I didn't feel like navigating through the 5 levels of ".." to get to "/" and then back down, since it's so slow to list a CDROM directory. It worked! There were the files in my home directory in the scrolling list! Hitting return again and again re-read the directory and redisplayed the screen again and again instead of moving on to the "File:" text field so I could type in the file name. But since the "File:" field was *above* the "Directory:" field, I suppose it makes some perverted sort of sense.

So I clicked on the "File:" field and entered the file name of the gif file I wanted to load. Then I hit return, and the cursor moved to the "Directory:" field below, but nothing else happened! Hit return again and it just rattled the disk and refreshed the scrolling list repeatedly. Oh, right! That's what the "Load" button's for. But I felt more like using that scrolling list, because as an old time Open Look user, I can really appreciate a scrolling list of file names, something I've been really been yearning for. (Maybe I just don't know what I want? Could the problems I've been having all be my fault? Do I just need an attitude adjustment???) Well anyway, I scrolled the list to the file name I had just typed in, and clicked on it. It recessed!!! And it updated the useless "Filename:" text field, so I can read which scrolling list item I just clicked on in case the cursor obscures the label in the scrolling list (oh, I've got to stop this humanistic rationalization, too many years with Shneiderman!!) Since nothing else happened, I clicked again. It un-recessed, back to normal!!! Wow. Still no gif file. Then I got this great idea: double click!!!

Can you guess what happened??? I really shouldn't tell you, in the hopes that you will go get a copy of the Catalyst CDware Developer's Kit, and try this out for yourself, just to know first hand. But I've probably scared you away from doing that with the account of my "imagetool" ordeals, since you're probably not running olwm yourself (hey I'm typing this on a Mac just to be safe, myself). So I will tell you. It beeped, and popped up one of those pointed alert dialogs, that said, "Not a supported image file format." It didn't bother mentioning what file formats _were_ supported, so I'll just have to guess. So I pressed the "continue" button, and ran an xterm, fired up "xv" (after setting up my environment by incanting: % setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:/usr/ucblib so that "xv" would run, since Solaris has relegated the classic berkeley libraries that "xv" depends on to /usr/ucblib.) Once I had "xv" up, I pointy clickily converted the gif file to a Sun raster file, which the silly slide editor must surely accept. And now, here is when I get to use the classic John Belushi quote that I have been saving for just this kind of a situation: BUT NOOOOOOOOOO!!!!! It *doesn't* know how to load raster files! I got the same fucking error, when I tried to load SimCity-For-X11.gif as when I tried to load SimCity-For-X11.ras! Did I give it the wrong file name extension? Back to the xterm, to try out the 7 most popular raster file extensions. None of them worked.

[I was so happy about the way "xv" changed the file name extension from .gif to .ras automatically for me, when I clicked on the little round radio button labeled "Sun Rasterfile", that I think I'm going to use "xv" as my file manager! Fooling around with it, I found out that it does _indeed_ have a very nice drag and drop file manager feature! No wonder Sun doesn't want me to put it on their Catalyst CD -- it competes with _THEIR_ file manager, which they're very sensitive about, since it is their sacred contribution to COSE as a concession for giving up Open Look, as long as they promise to re-write it for Motif, or Open Step, Distributed Objects Practically Everywhere (DOPE), or whatever the Sun UI De Jour is by the time COSE is finally designed, devaporized, and delivered). But I digress.]

Most people would have given up by now, but not me! Instead, I went back to the Catalyst CD browser, and managed to trick it into creating me a sample Product Directory Structure that I could use as a template and insert my product and propaganda into, to go on the Catalyst CD, which is due tomorrow morning (well it's 11:57 pm as I write this, so almost this morning). Methinks I could just put the image file in place, using the powerful Unix "mv" command (or maybe even the "xv" file manager! Oh boy!!!) But first, to see what kind of directory structure it had created for me, I selected the menu item to recursively run the CD browser on the sample directory. (That's "Step 5, test" for those of you who are following along with the real user interface. Yes, the manual was quite explicit about how great an idea it is to test software before shipping it. They really drove that point home. You have to first click the left button on the "Step 5" icon (all right, it's just text and not an icon, but at least it's 64x64 and monochrome, like all icons are supposed to be, right?). Then press and hold the right button anywhere in the scrolling window. An Open Look menu pops up. Drag right into the "Run" submenu item -- this is a little tricky, something like parallel parking, but just keep moving back and forth until you get it. Then select the single item on the submenu, "Test with the Catalyst CDware Interface". This is when it starts to get really recursive!!!

BUT FIRST: up pops a wonderful "shelltool - Test.sh" (or that's what it says its name is), and it asks you:

Please enter the absolute path name of the product directory which you would like to test.

Product directory [ /home/eudora/hopkins/SampleName ]:

Wow, what a truely multimedia user interface this is! Not only can I input file names by pointing and typing and pointing and typing and pointing and typing and pointing and typing, but I can also input file names by typing and typing and typing and typing and typing!!! So I typed and I typed, and what did I get?

I got another Catalyst CDware Developer's Kit browser window, or course! What else did you expect??? No, don't say it! So in rapture and joy (or is he with the company any more?), I went through the same highly standardized user interface to run a demo as described above, and selected "Run => Slide Show" from the menu.

It rumbled. It chugged. And then it came up with a unique error message (in that it did not modally freeze everything else -- this one has a push-pin and no bizarre triangular tail), that said "Sorry, this slide show requires at least 5 megabytes of free space in the /tmp directory. Please free up some disk space and try this slide show again."

Now what kind of a demo needs 5 megabytes of disk space? That's almost as big as the entire installed SimCity distribution, and this is only a slide show with one slide and an audio file that goes (appropriatly) "WOOF" (I know cause I checked manually). The single rasterfile in this demo is only 32462 bytes.

But all this introspection aside, there's another problem! What happened to all my space in /tmp??? I fired up an xterm and looked:

#### hopkins@lem 1 #### cd /home/eudora/hopkins df /tmp
Filesystem      1024-blocks Used Available Capacity Mounted on
swap    50288   20 50268        0% /tmp
#### hopkins@lem 2 #### cd /home/eudora/hopkins 

[That funny line with the hash marks is my prompt. Yes it has a newline at the end, for personal reasons that I won't explain.]

Well it looks like I've got pleanty of space in /tmp. What could be causing this problem? Why didn't Sun notice it? Is it all my fault? Is it *me*? Will it work flawlessly for tens of thousands of potential CUSTOMERS who are going to receive this Catalyst CD, just not for me??? ...Hey, that "df" output looks awfully familiar! Kind of comforting, in fact. Why, it's telling me the sizes in good old Kilobytes instead of Official AT&T System V 512 byte blocks. Why, that's my good old friend, the Radical Left Wing Berkeley "df"! Hey, I must have /usr/ucb in my path!!! That's it! Some shell script somewhere is piping the output of "df" through several invocations of "awk" and "sed" and "tail" and "grep" to calculate the free disk space in /tmp. Of course!!! It's getting the wrong "df"! I was ***BEGGING*** for punishment by putting /usr/ucb in my path! It *IS* my fault! I was being an idiot all this time, and I deserve all the abuse I get! I'm so so so sorry I've wasted all this bandwidth whimpering and whining, when I could be outside reading Windows NT and Inside Macintosh manuals in the flickering light of a burning oil barrel full of Unix manuals!

-Don


Date: Mon, 7 Feb 1994 18:00:31 +0800
From: tog@cloud9.Eng.Sun.COM (Bruce Tognazzini)
To: hopkins@talisman.kaleida.com
Subject: Re: To Bruce Tognazini and Brian Holt, re: Sun User Interfaces

Hi, Don,

Your email did eventually get to me. I'm afraid you dropped a z in my name and our extremely fast machines made quick work of not being able to figure that out.

I have not experienced the kinds of difficulties you seem to be having.Perhaps that is because, after two years of working at Sun, I still do all my computing on a Macintosh.

We have sent your email to various people and places around the company. I'm not sure it will help, but it doesn't hurt to try. Someday they'll listen. I just hope it is not too late when they do.

-Tog


Date: Fri, 2 Sep 1994 10:45:55 +0800
From: tog@cloud9.Eng.Sun.COM (Bruce Tognazzini)
To: hfnews@magnus.acs.ohio-state.edu
Subject: re:  SunSoft and User Interface Design

I am responding to some recent speculation that SunSoft may have less than a keen interest in user interface design. I am happy to report that nothing could be further from the truth. Yes, there were a few years there when Sun followed the general Unix industry trend away from absolute committment to the needs and desires of end users (if I may slip into understatement). However, those days are over. SunSoft now has one of the largest human factors organizations in the industry and has recently opened what is arguably the most advanced human factors lab in the world.

One does not turn a ship of state as large as Sun's Unix toward a new direction overnight, overweek, or even overmonth. Major shifts in user interface direction take three to five years. The wait can sometimes be frustrating, with users and software vendors expecting instant results, but the payoff will be worth it.

Last week, the folks at SunSoft in Colorado sent out the following notice:

User Interface Designer

The Human Computer Interaction organization within SunSoft, Inc. (the system software arm of Sun Microsystems, Inc.) is seeking a user interface designer to work at its Rocky Mountain Technology Center in Colorado Springs, CO. The position will focus on improving SunSoft's system administration interfaces via a regime of iterative design and testing.

Having visited the Colorado site, let me tell you, this is one great job. The System Admin work going on is the most heavily supported in all of Sun; the people, equipment, and physical plant are absolutely great, and the location is one of the most beautiful spots on the face of the earth.

Taming a system as large and unruly as Unix is a fiery task. Kind of like roping a wild young stallion at full gallop. It is not for the faint of heart. But when you're done, you'll have a wild young stallion you can be proud of, instead of yet another sway-back gelding.

I understand the skiiing isn't bad in Colorado, either.

-Tog