Screens and Windows

by Eric Schwartz
from the AmiTech-Dayton Gazette, November 2008

Sometimes I sit and mentally explore a subject.

Recently I've been thinking about some of the fundamental differences between operating systems, and things that made the Amiga stand out among them. There's a lot that distinguished the Amiga and its related operating systems, such as OS4, AROS, and MorphOS, from the Mac, Linux, and Windows ilk, but what stood out to me (at least recently) was the concept of screens.

As a first in consumer-level multitasking operating systems, the Amiga offers the user the means to run several programs at once, and ,as a consequence, the user needs a means to move from the interface of one program to the next. On the Amiga, there're two units of measurement in graphic interface terms: the window and the screen. Window-based programs open on a pre-existing screen, usually the Workbench. The natural downside to this is the more windows that are open, the more space is taken up on the monitor, and the more work you have to do getting one window out of the way to get to another. Perhaps it was the relative low resolution of early Amiga workbench screens, or perhaps it was the proclivity of the Amiga system for graphics and video work, but a lot of software developers preferred the screen. As its name suggests, a screen is a program's interface which uses the full dimensions of your monitor screen, at any mode or resolution the computer and monitor can support, such as the workbench or the desktop interface of most other types of OS. Some software may include windows as parts of their interface, or you may directly interact with the screen itself. On the Amiga-type systems, one can switch between all available screens by clicking the box in the upper-right corner, keyboard command, or even grabbing the title bar and dragging the screen down to see those behind it (not all Amiga-style systems can do that though). Many Amiga programs used the hardware support for movable screens to produce some creative interfaces, such as paint programs with their tool palettes on partial screens, which appear in a different screen mode or offer more color capabilities than keeping all elements on one screen layer would allow. In later years, as more Amiga users and Amiga-like systems relied on third-party video cards that couldn't do the same tricks as the internal chip sets, many of the screen-shifting programs have fallen out of favor, The video cards couldn't do the same tricks, but they also took away many of the early limitations for color and resolution which made the tricks necessary in the first place. More "modern" software still commonly uses its own screen, though many behave more like window-based programs. There is a level of versatility, as many programs can be set to either open their own screen or put their windows on the workbench or some other open screen. Pretty much any program Which uses the Magic User Interface system can be set to work either way, even if all it does is open one tiny window on a vast empty screen. Even if the method has changed somewhat over time, it's a pretty elegant way of doing things when you know how to use it.

By contrast, the user interfaces of most other "big" OSes, like Windows, Mac, and Linux, seem to be based on the idea that ALL programs are window-based, and they ALL have to share the desktop screen. Naturally. this means the desktop gets real crowded real fast unless you limit yourself to only running one or two programs at a time. These operating systems have, not surprisingly, put a lot of work into making it easier to juggle among the programs and get them out of the way. Most have a tool bar or dock running along one edge of the screen, giving a "heads-up" of the currently running programs, as well as providing options to run even more. These tool bars and other interface buttons let you flip any available program to the front of the stack with a click, or "put away" its windows to free up real estate for something else until you feel like letting it back out. It's probably about as elegant as an all-on-one-screen concept can get, but even so I find there's quite a bit of work involved in just getting to whatever program I want to use, and when all your programs are sharing the same screen with your desktop and its file manager functions, I find it far too easy to unintentionally bring the wrong window to the front, or perform some unexpected action because my actions with the mouse pointer were a few pixels off to one side or another.

That's not to say other systems are completely incapable of having multiple screens, or something kinda like them. Some programs can and will use the entire screen, or change the resolution when doing so, usually for games. Most of these either take over completely, not relinquishing the screen until the program is quit, or simply act as a full-screen window atop the normal desktop. Some systems support multiple monitors, allowing the desktop to be spread along the real estate of two or more screens in a literal sense. An outgrowth of this is the creation of multiple "workspaces" in the desktop, the closest analogy to Amiga-style screens I've seen, though not quite the same. It's pretty much like having more than one desktop/workbench, that you can flip between using the toolbar/dock/whatever. It makes things much less crowded when one makes proper use of it. though to me it comes off as an inelegant patch on a fundamental problem -- instead of one crowded desktop, you spread the load out and make two or more less-crowded desktops, instead of creating and discarding Amiga screens on the fly, depending on what is run.

There're always people "outside the loop" out there who think a computer system has no value if it's not one of the current crop of Windows/Mac/Linux machines. I personally don't have a problem with those systems -- I've got two of the three myself (no Windows). I might even like them if they had the Amiga balance of elegant usefulness... and screens, instead of insisting on stupid single desktop paradigms.