My Troubles with GUIs

National advertising often produces a mass market for mediocre products. Short-term thinking often encourages products which may be quick and easy to learn, but not so to actually use. GUIs are a mediocre, short-term advantage, way to give computer commands, but fun, and a good way to sell bigger hard disks. Windows has background advantages, but this has nothing to do with the interface. A mouse may be okay for drawing, because it can access every pixel. But it's more often a way of using one hand to push virtual keys (icons or menu options, which take up screen space) instead of using fingers to push real keys. I guess it gives people more a feel of virtual reality. I'd rather make touch-typing of computer commands more practical.

My first version of CPM Wordstar, in the early '80s, had an interface that made a lot more sense. It had menus, mostly of Ctrl keys (CPM didn't have Alt keys). Once you learned the menus, you could disable them, in several stages, and just use the keyboard commands. It was much faster than using a mouse to push virtual keys. It seems like interfaces have degenerated since then.

Programs of all kinds should be designed with a very elaborate configuration program, which could be kept on a floppy disk to save hard disk space. Many programs have a choice of giving many commands by Alt or Control keys, cursor key and Enter, or mouse and icons. Instead of so many choices, I'd eliminate all but the one I found most convenient for each command thereby reducing memory and hard disk space, and screen clutter. The other options could be reinstalled from the configuration file if desired.

I'd start out by eliminating the need for mouse and icons. One- and two-letter Alt commands can be much quicker than either mouse or menu and cursor key commands. (Of course Alt and Ctrl commands are simpler for me because I've rebuilt my keyboard so Shift, Ctrl and Alt keys are all handy under one thumb instead of difficult for my pinkys. )

I want to be able to program any key for any possible meaning, both in the configuration of the operating system and in any application program. In applications, if I changed key format, such as to Dvorak, or for other reasons, I might want to change command keys to new letters, maybe arranging them by position rather than by letter. All command keys should be programmable, independent of their text meaning. All defaults should be changeable. (I now have much of this in Vedit. I'd like it in DOS, to be available to all programs.)

In Windows, and most Windows programs I've tried, sometimes by default, I find myself reading long lists or texts in small windows, while the "frame" is cluttered with distractions. If I enlarge a window, it's small again the next time I use it. Many windows can't be enlarged. I'd like a way to change this default so each window, when opened, would be the size I pre-set it.

Many menus, including the World Wide Web would also be improved if web browsers didn't depend so much on mice. Each hilighted link could be numbered (or lettered) and selected by just pushing the desired character key. Numbers could be either displayed or not.

If we must use the mouse for pushing virtual buttons, I'd rather the cursor would just jump between buttons (icons, menu items), or in text, between letters and lines, rather than accessing each pixel. Some programs are beginning to do this now.

There are also alternatives to mice coming out. One, Glidepoint, which I now have, is a small touch pad where your finger is the mouse.

Another works more like a joy-stick. It's a little ball like a pencil eraser, in the middle of certain keyboards, on which one just applies pressure to make the cursor move. The joy-stick principle is to the mouse principle what a fully-automatic weapon is to a semi-automatic. With a joy-stick, you just activate it, in the right direction, and it does it's thing, "under it's own power", until you release the "trigger".

I can also imagine a simple adaptation of cursor control keys to make a simple joy-stick.


Send me your thoughts.
Dan Robinson, danrob@efn.org, Eugene, Oregon
My home page: http://www.efn.org/~danrob/