Talking Point: Overlapping Windows

Back in the 80s, a GUI paradigm called WIMP (Windows, Icons, Mouse, Pointer) began to establish itself as the new way in which most people interacted with computers. When it comes to one of the most significant elements of that system, overlapping windows, I'm beginning to wonder, has it had its day?

One of few things that Microsoft can claim to have developed from scratch is an efficient method of application switching called the taskbar, although it's now in the process of being superseded on most GUIs by the application dock. One side-effect of that form of program management is that it doesn't penalize the user for running applications fullscreen, and it therefore encourages it. You can glean some ideas about modern user behavior by observing that, in the most popular WM themes and skins, the areas of the window that are used for resizing have almost disappeared. The truth is, if you use Gnome or KDE, you probably run most of your apps fullscreen, most of the time.

In the future, I think that overlapping windows will be seen as a power user's feature, rather like the command line. The non-expert computer user has little use for windows that don't encompass the entire screen, and novice users find resizable, overlapping windows confusing. There are some operations, such as dragging and dropping of file icons, that benefit from overlapping windows, but again, this is a feature that is mostly used by experts.

PDAs and other small computers have long pioneered the techniques needed to make multiple running programs individually accessible. Running everything fullscreen on a full-sized device does, however, present a few drawbacks. For one thing, text can be difficult to read when spread out over large areas on modern widescreen monitors. Personally, I wouldn't fancy word processing on a 24” widescreen monitor with the main window maximized. I think that multi-column websites give us some clues as to what a desktop of the future might look like.

There are probably two solutions that we are going to see dominate over the next few years.

Firstly, tiled window management, of a sort that has existed for many years on Linux, may finally break through to the mainstream. Tiling has the advantage that it does away with the complexities and inefficiencies of overlapping windows while still allowing the user to view more than one window at once. It's worth noting that KDE SC 4.5 introduced tiling support.

The wmii window manager. Could this be a glimpse into the future?

Secondly, it's possible that applications will begin to make use of more panes within a main window. For example, on a widescreen monitor, it's quite convenient to leave the Firefox sidebar open at all times. I wonder if other subwindows could be enabled by default, perhaps piping in pertinent information? Some tiled window managers can simulate this approach, to an extent, by allowing you to associate certain applications together into groups.

Back in the mid-90s, Apple and IBM collaborated on an application framework called OpenDoc. The idea behind OpenDoc was that application components could be freely embedded into host applications. So, for example, if you clicked on a image in your word processor, a toolbar might appear around it, courtesy of Adobe Photoshop. Although the tech did appear in the form of some proof of concept applications that shipped with OS/2, it was ultimately abandoned. However, another framework such as that one could solve some of the problems of efficient use of screen resources in an intuitive manner without resorting to traditional overlapping windows.

LyX 2.0 is an application that can pack quite a lot into its main window. Perhaps this will be the norm in the future?

Of the tiled WMs I've seen, none of them seem to be very easy for the newcomer to use. So the question is, is anyone actually using these things on a day to day basis?

Comment viewing options

I've tried tiling window managers, and gone back to overlapping windows. Titling window managers assume that all the windows you are currently using will be exactly the right size to fill the entire screen. This isn't always the case; in my experience, it is rarely the case. The random re-columing of text terminal windows alone gave me headaches.j

I'd like to use the desktop paradigm here. "always maximized windows" - you only ever have one paper on your desk. "always tiled windows" - any papers you have on your desk will evenly cover the entire desk, even if you have to cut pieces off the sheets to make them fit, or add wide blank margins inside them.

Sigh. If you want to organize your windows so they don't overlap by all means please do so (and OSes should support this option for users) BUT DO NOT DICTATE that I must give up overlapping windows because if you do you won't be liking the response at all... Thanks...

Graphical User Interfaces should in principle enable users to organize the windows they work with as they please including having preset options for various favorite styles, overlapping, non-overlapping, full screen one at a time, etc....

The comment about OpenDoc being the last failed attempt at embedded editing is totally off the mark - Microsoft's OLE has offered this since 1990 and I remember converting the examples from Inside OLE (1995) to DLLs created with Delphi (Pascal).

To me, a computer application is something that turns a computer into a
dedicated device (like a kiosk) meant to serve a certain purpose. By "turn
into" I mean, during the course of use the "computer" behind it has to become
virtually invisible.

The concept of overlapping windows keeps the "computer"ness alive all the time
and makes the applications look like some incidental objects hanging on to a
thing called computer.

I think this is a very flawed user interface paradigm, though nobody usually
finds it so bad probably because we are all just brought up looking at the
graphical interface to be that way.

The controls like resize, move, minimize, maximize etc. are an unnecessary
mental overhead and one has to just spend a few days without them to realize
the peace of mind without them.

Besides, not granting an application the full screen and a user having to focus
on a smaller portion of the screen is poor use of screen real estate.

Besides overlapping windows, a thing I dislike most is "pop-ups" - not only
because they steal the focus when you least expected, but because their sudden
appearance also interprets keystrokes that were not meant for them, causing an
inadvertent and potentially hazardous "response" to such popups.

My favorite window manager that frees me of all this mess is ratpoison.
Although it is advertised as mouse-killer, I am not so much of a mouse hater. I
like ratpoison because of non overlapping frames, ability to suppress "rude"
(by its own terminology) popups etc.

The writer points out that overlapping windows seems to only be an issue for "un-power" users such as my wife - she maximizes whichever window she is working in - drives me crazy when I am trying to help her, but I remind myself that to each their own way of working is critical to their usage satisfaction.

As mentioned at another point here (article or comment?), a maximized window on a 24-inch monitor would be just plain overwhelming. I have found that more vertical space is ideal for documents and web pages, and I really hate the trend of monitors for wide-screen vs 4:3 aspect ratios as if all usage is driven by the HD movie use case. The only way I can enjoy a wide-screen monitor is if it is also tall enough to let me have several windows side-by-side with each one having a "tall view". I do see the utility, though, of single-windowing on smaller screens such as 7-inch tablets on down to the phone sizes (although I feel very "constricted" by that paradigm).

This also helps get around my pet peeve with viewing PDF docs formatted for printing, which seems to be a too prevalent default that even LJ cannot get past (probably why I will not renew my digital subscription - all that scrolling/zooming of those 8.5x11 pages on smaller, shorter screens is frustrating! I will just browse the print copy in the news stands for specific articles, and wait for the HTML forms to become available after a few months for more extensive, but less urgent reading - losing this subscriber, LJ!).

I have found that the new M$ Office 2007 window style that ignores my preference to have the active window border red, and a few pixels thick makes it much more difficult to keep track of overlapping Work/Outlook/Excel windows with their almost-borderless appearance (not my choice of tools/software - imposed by work). It seems M$ UI designers now do not understand the needs of us multi-taskers to keep track of overlapping windows.

I suspect that those of us who keep messy desks and multitask (and ADD?) prefer the overlapping windows interface as opposed to those with a more "orderly" style of working - to each their own, so keep the options out there. I could make the old comment here about "if a cluttered desk is the sign of a cluttered mind, then what is an empty desk a sign of?", but in these days of (physical) desktop security requirements to keep 'em clear, that would not be fair (along with working style differences).

I absolutely agree with your gripe about pop-ups! More than a few times I have been typing a password (all that ADD multi-tasking), and had a pop-up grab it. That is not so bad if it is just an info pop-up - eats part of the pw, and I try again, but I learned long ago to NEVER let instant messaging pop up automatically for that situation: "OOPS! time to change passwords...". Also annoying is hitting escape in some windows that are closed that way, such as IM programs, when I thought I was editing in a vi window.

Some of the comments / article assume that non - overlapping means full-screen or maximized.

The alternatives to non - overlapping are:

1. Tiled
2. Maximized / full screen

Which of these to prefer depends on application and screen real estate (and one's taste).

Common thing between them, which is important, is doing away with (or reducing dominance of) certain controls that are necessary in overlapping case.

In my opinion, non overalpping (of either kind) give a much more stable feel than the overlapping ones. I formed this opinion after using the overlapping ones for years and then switching to non overlapping ones. One should seriously try out the non-overlapping paradigm for a few weeks/months to feel (not just "know") the difference.

- Do not mean you have only one tiled screen to fit things on. You can have several of them. One may switch between screens as easily as Alt-Tab in most window managers.

- They do not force upon you maximized or full screen windows. It's your choice really. You can watch other jobs while working on one by placing more than one windows on a frame. (My personal bias is to full screen apps though except in cases where you have to watch another window when working with some other etc.)

- They do not mean fixed size windows as you can resize windows on a tiled screen. (Resize could be a relatively less used operation than overalpping paradigm, though.)

- They do mean, doing away with controls like minimize, maximize, move etc. and a more static feel to the desktop, (which to some is a good riddance and to some is loss of a key functionality!)

Which one one likes is a very subjective matter, though both ways are worthy of being given a try. Clearly the overlapping paradigm dominates as of now and that being the first one, one usually gets used to, is hard to change for most users.

In my opinion those cases where one just can't do without overlapping windows should be really rare than it may appear. One should see this statement a little fundamentally i.e. without any bias of the way GUIs of any existing applications one is using.

Tiling would be my choice if following that path since I really do need to "keep an eye" on multiple windows while working, but that requires a very large monitor since my eyesight is not the sharpest. I do tend that way when I work from home where I use a 23-inch 1920x1080 monitor attached to my work notebook PC (extended desktop) - going in to the office is something I try to avoid now since my employer only provides a 19-inch 1280x1024 monitor.

However, I would need a very effective tiling WM for WinXP that could handle my constant change of the mix of windows (mostly chats and that damnable "floating message" style of Outlook 2007 - never thought I would miss Lotus Notes with its orderly tiling abilities, while still allowing a message to be viewed in its own window).

The maximizing option works ok for my wife using a 17-inch 1152x864 monitor (broken Mint/Ubuntu Intel graphics driver not supporting monitor max of 1280x1024), or her Thinkpad X30 12-inch 1024x768 screens, but I really do think she would be overwhelmed by my 23-inch monster monitor's resolution for her single window working style.

Wait a minute, you DON'T ALREADY use a tiling WM? I feel like I've been living under a rock ;_;

I echo those who sing the praises of dwm and it's various forks and counterparts (I'm referring to awesome, wmii, wmi, xmonad, etc). Having said that, these WMs are a glimpse into the *past*. Not that that's a bad thing. Far from it. What developers need to concentrate on now is getting the UI elements from these more "experimental" projects into the mainstream. I simply hope the day that M$ Windows will feature window tagging and PROPER tiling is not too far away :)

A nice feature would be a window area capture built into the gui. Example, drag a box around the part you want to stay on screen then focus another window that may be resized so that the selected portion can be referenced or cut/past from. I.E. a new kind of sloppy focus.

REALLY - Maximizing is pretty much a last resort. Typically I have 6-8 overlapping windows open. And I'm constantly referencing pieces parts from the overlapped ones. As for Tiling - I just love the idea of returning to Windows 1.0. Tiling might become a serious option once we get the true desktop metaphor in affordable hardware - 300dpi 36"x24" monitors - not going to be very portable though.

In '80 or '81, I saw a Xerox computer in the lab; it used a mouse and had overlapping windows. That was 3-4 years before the Mac was released. It's safe to say that PARC was one of the first, if not the first, computer makers to produce a windowing system.

I use KDE and I almost never run any application full-screen because I am always referencing data in two or three other windows while working in the primary window.

If I had to choose one thing that that irks me to no end, I would say that I absolutely loathe programs that pop up windows that obscure the data I'm working with, or pop open new tiles that move the data I'm working with. That would be like a heads-up display in a car that obscures the driver's view of the road, or shifts the view up in order to crams its information into the view.

Closer to home, there's KDE 4.4.5 on Debian; plug in a USB flash drive and a *huge* notification window appears that is mostly empty and doesn't even display much usable information. Worse, it often grabs the focus, interfering with what I'm doing at the moment.

A close second are apps that allow so many 'toolbars' to be installed that there's only room for a few lines of information to be displayed.

There may be a place for tiled windows, but it sure isn't on *my* computer, just as there's no place on my computer for apps that *insist* on using the full screen. There are far worse UI problems that have appeared in recent years. Tiled vs. overlapping windows isn't very high on the list of priorities.

Tiling windows on Windows? You sure you understand what is meant by that? The windows should automatically tile and snap to each other without my intervention. There should be multiple formats for tiling ...but I don't believe Windows even auto-tiles windows. So how do I get Windows XP/Vista/7 to auto-tile my windows?

Xmonad user over here (that's that tiling window manager that rocks). Since I discovered tiling wm's I really can't do without. And actually I am a power user, but not of the drag'n'drop type. I just want the bare minimum essentials. So no maximize and close buttons for me please. What I really like is a vertical split screen, with an 80 column terminal at the left for editing some TeX file, and a fullscreen evince on the right, with the corresponding pdf.

Furthermore it is really convenient to have another virtual desktop with 4 terminals, one in each quadrant.

Finally I have a virtual workspace setup for Firefox, and one for Pidgin.

Also I don't like the idea to have the virtual desktops in some linear order. Then, for example, I would have to remember that my pdf is on the 3rd desktop, while there is absolutely no link between pdf and 3. So I set up my xmonad to have virtual workspaces under the key combo's: Win-W (Web); Win-C (Code); Win-L (Latex); Win-I (IM); Win-P (Pdfs); Win-T (Terminals); Win-F1 through Win-F9 (misc)

I tried this setup the last two months and I really like the nonlinear smell of it (allthough it obviously is linear in the Xmonad internals). At least, I can conclude that tiling window management improved my workflow, because there is very little distraction and annoyance.

It must be a slow day when you have to "revive" a debate that's been on-going for 30 years or so. Since it seems to be the twenty-first century, now, perhaps we could "start" the debate with a better understanding of the state of the art.

"Tiling" was how Windows 1.0 worked. "Overlapping windows" was how MacOS improved it, and how Windows 3.0 imitated (and even at that, I'm neglecting less commercially successful progenitor examples). Ever since then, people have been trying to combine the strengths of the two.

Tiling within a single application can be done pretty well: your LyX example, WireShark, and Eclipse are all good examples — and, I think, all Power User examples. Microsoft Outlook is also a good example of in-app tiling, and I think a fairly non-power-user example. On the other hand, tiling within the application can also be done very badly: case in point, the frantic mood swings in Microsoft Office over the last two decades, from menu bar to tool belt to … is there actually a name for what the latest version does, with dozens of control groups on screen at any one time, and spontaneous multi-group hover-pop-up command tools? Each progressive abandonment of a major metaphor suggests Microsoft was deeply unhappy with the last, but I don't sense they've yet dug themselves out of the pit.

Screen size does seem to be one kind of factor, but it bears emphasis that the original MacOS UI that popularized overlapping windows was only a 9", 512x342 pixel screen (a middling-sized patch ad, these days). MIT's X10 Window System (progenitor of today's X11 Window System), running mostly on the endless plethora of UNIX systems (progenitors, all, of today's Linux) set the bar at "a megapixel," most commonly 1024x768. As best I recall, X10 did not have a separate window manager (an X11 innovation), and windows overlapped. While I certainly agree that overlapping windows on my iPhone would be a bad idea, I think it has more to do with the system's pudgy, blunt pointing device. I occasionally used overlapping windows on Palm devices, with a lower-rez screen but a stylus for precision pointing. I'm not yet convinced that overlapping is bad for a tablet screen, if we can solve the blunt-instrument trauma without reinventing the lost-stylus one. I see graphics professionals using 9" and smaller drawing tablets to control larger screens, happily and with great precision, and many of us keep our mouse sensitivity cranked up high enough to reach the whole screen with only finger movements, so I think the size of the gesture surface can be quite small.

What has not been solved in 30 years, or at any rate not in any way acceptable to the majority of users, is usable tiled layout of unrelated windows. The good examples mentioned above are not merely tiled, they're tiled in a way to enhance information display and control grouping. Their tiling is semantic. When a WM goes to tile unrelated windows, the semantics are lost, or at least not apparent to the WM. Similarly, when a WM allows a user to reconfigure a tiling among unrelated windows, it's hard to know where to remember it, or for what context: does this window fill the right half of the screen because it's a text editor? because it's a text editor editing this particular file? because it's a text editor editing the particular file I'm discussing in this smaller mail-composition window over to the left? or just because I keep all my "I may be done with this but I'm not sure yet" windows there? Finding some intuitive set of concepts and gestures for those questions might go a long way towards a more nearly universal tiled WM.

On the whole I agree with you. It's time to examine the UI. Glad to see ventures like Gnome 3/Shell and Unity testing the water if only a little bit. I always thought using the "desktop" and "window" metaphor was a bit far fetched.

One little niggle ... you say

"One of few things that Microsoft can claim to have developed from scratch is an efficient method of application switching called the taskbar"

Correct me if I'm wrong but the MS Windows dock didn't appear until Windows 95 - I might be wrong as I was MS-phobic even back then. However, docks (same function as taskbar/launcher) were around in NextStep and Sun/CDE and even on Risc/OS in the 80's. I know they were basic; well the one in CDE was - the others I never really got to play with ... but anyway, you DID say MS developed them "from scratch" up there!

I too use the awesome Window Manager 8-10h a day and it is the fastest and non-obstrusive interface I ever used. About the article, also the unity interface from the just-released Ubuntu 11.04 also has kind of tiling support.

Well I use floating windows (almost) all the time. Scale plugin for a virtual desktop is enough for me if windows starts to overlap. In fact I think that only apps that I use fullscreen are mediaplayers and games. You may have point of it being power user feature though, because when I watch other people work with computer I'm always surprised how limited their workflow seems in case of app multitasking.

oh dear god. it's another one of those "articles".
i'm a tiler, yes, i earn my bread and butter every day using linux and a tiling wm (awesome as it happens because it's so dead easy - i admit). and i'm not in the "technical" camp at all, professionally.

but this article... really. i had hoped for a point at the end of it at least, not a question. drag'n'drop is for experts now. novices don't like floating windows (if that's what "overlapping" means). and so on.

really? that's all most novices get because 92% of them use windows. i've never heard them complain about the layout of their windows or the wm type. ever. occasionally they chirp about crashes, reboots and viruses.

and define "easy for the newcomer",please. sometimes reading these self-defeating linux pieces i feel like the only sufficiently "noob-friendly", not to mention "usable" thing we could come up with would be to invent some kind of intra-cerebral drip and feed skills and knowledge directly into their brains, lest the darlings be forced to do the unthinkable, i.e. set aside 15 minutes to learn something they didn't know before.

I run awesome window manager on my Linux box, which is a very powerful and very flexible tiling and floating window manager. It works brilliantly for me, making it easy to see text editor, browser, file manager, and terminal windows all at once, and I've barely scratched the surface of what it can do. That being said, it's a nightmare for non-tech people because there are a million key combinations to remember, and not really any buttons that do the same thing by default. You can add them, but that's a challenge as well unless you like editing text files and want to learn lua.

There is one idea that I've seen that makes window management much easier and would be good for non-geeks as well called 10gui (http://10gui.com/video/), but it's basically a demo video and some sample code at the moment.

I also have my own idea that basically tiles everything without squishing windows across an infinite virtual surface. You could zoom out to see everything and rearrange windows on a large scale. UI and window controls would be kept to a minimum. Scrolling on the background would zoom out, and each window would have a close button, and maybe a maximize button. Dragging a window edge would re-size as now, but the other windows would move to fill in the blank space. A full-fledged dock probably wouldn't be necessary, although a small set of buttons and indicators might be required. Too bad I'm not good enough at programming, specifically C/C++, OpenGL, and XLib/XCB to pull it off.

As Linux continues to play an ever increasing role in corporate data centers and institutions, ensuring the integrity and protection of these systems must be a priority. With 60% of the world's websites and an increasing share of organization's mission-critical workloads running on Linux, failing to stop malware and other advanced threats on Linux can increasingly impact an organization's reputation and bottom line.

Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.

In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.