The Waning of the Overlapping Window Paradigm? 535
Bingo Foo asks: "The paradigm of movable, overlapping windows on the desktop has been around, and indeed dominant, for a long time. The original motivation for this was to mimic sheets of paper on a desktop. This is a useful metaphor, but may be a bit limiting given the capacity a computer has for automation of the layout and display of "desktop" objects. Lately, I have been pleased to see an increase in 'framing,' 'docking,' 'stacking,' and 'tabbing' being used, starting most conspicuously with frames in the web. More significantly, it has shown up as an application workspace paradigm that improved previously crappy MDI implementations in programs like Visual Studio and KDevelop. In my opinion, the most promising experimental application, even if still immature, is one of the neatest window managers around, ion. Does anyone else see a time when movable, tear-off docking and automated full-time tiling completely take over from the free-floating manually arranged desktops of today?"
space (Score:3, Insightful)
Maybe I'm just stubborn (Score:5, Insightful)
I mean, it is a personal preference, but I don't want a system that refuses to arrange windows the way I want because "it knows what's best" for me.
So, my answer to your question is "no."
-Peter
Here's why the mainstays for Linux development hav (Score:1, Insightful)
1) Nobody is willing to work on something, pouring hours upon hours of work into it, only to have someone working in Company X take their code, and make a living off of tweaking it. Suppose you're writing a windowmanager for Linux. In order for your windowmanager to succeed, it probably has to be GPL in order for it to really catch on. And if its GPL, surprise-surprise, there are employees of parasitic companies like VA Linux Systems who make a nice living playing with your code. No one in their right mind is going to do something for free, working side by side next to someone who is getting paid to do the same. By simple virtue of the fact that parasitic GPL companies exist, you're effectively letting someone else make the money off your work by making it GPL. This is why companies who capitalize on Linux software development are a (tm) Bad Thing, because they assert a choking influence over the entire community. It stops becoming an exercise in fun, and rapidly becomes an exercise in profiteering.
2) Nobody is willing to think about doing anything different, more useful, or more ergonomic right now. The main driving force driving Linux UI development is "lets make it look like Windows!" which is a horrendously bad move. Instead of giving Linux its own face, its own appeal, and its own distinct look, we're playing Poor-Man's Explorer with X11. Instead of putting our own talents to work, making something useful for us, we're playing second fiddle to a third rate design by copying it.
Now, rather than purely bitching, here's what you can do about it:
Start at the ground up. Get ahold of the source of a weak windowmanager like fvwm, that has all the basic guts you need to work from. Ask yourself what makes sense to you as a user, NOT what makes sense because you've seen the same thing in Windows. Give Linux its own look. Try to avoid imitating other platforms. Build it because it makes sense to build, not because "Windows has it". The sheer number of things that Windows has wrong with its UI would require a completely separate article to discuss them in detail. Think about how to represent things differently. Is there a better way to represent the same information? Do you really want an OS that resembles a browser? Think, ask, and move. Learn, modify, and repeat.
GNOME, KDE, CDE, etc... (Score:3, Insightful)
You see this underlying communication in various ways: the most obvious is Drag-and-Drop between apps (or the desktop and apps). It also shows up in inter-app communication with documents (think Excel spreadsheet embeded in a Word Doc).
I'd almost consider WindowMaker an environment. It has most of the hooks that Enlightenment and Kwm have for their underlying services, and can work nicely in a GNOMEish or KDEish setup.
I think when people say "environment", they're referring to the whole shebang: backend libraries and daemons that provide Inter-app communication, a Window manager that uses those backend facilities, and apps that also are aware of the available functionality. Integration is the key here: all the parts need to be aware (and use) eachother, and not just be able to function next to eachother.
No (Score:3, Insightful)
Steve
Everything comes around again... (Score:4, Insightful)
Now you're telling me that tiled, edge-to-edge windows are the wave of the future? I don't know. How about some sort of compromise which allows overlapping windows but doesn't "require" them to the same extent as today's desktops? I'm not sure I'd really like to do away with them altogether... sometimes you just run out of display space, and I'm not really interested in 45" of computer display.
Those who will not learn the lessons of history (Score:3, Insightful)
Remember that the Xerox movable overlapping windows paradigm appeared at a time when tiled and framed paradigms were widespread (Symbolics [uni-hamburg.de], TI Explorer [uni-hamburg.de], a whole range of other systems) and quickly became universal because it worked better. It still does.
Sure, there are issues in navigating the stack of windows, particularly if you use desktops as cluttered as I tend to; sure, less sophisticated computer users may find these navigation problems difficult. But focus, visibility, prominence and accessibility are in the hands of the user, and that's where they belong
No - but maybe a mix of the two (Score:3, Insightful)
Re:Here's why the mainstays for Linux development (Score:3, Insightful)
What if I want to put in a feature because it makes sense *AND* "Windows has it"? What kind of moral dilemma does that bring up? Refuse something sensible, because it's in Windows? Or implement an idea, and have people like you blast it because it's "copying"? Hmmm.... Really not sure which one I'd choose... Why not discuss those things "wrong" with the Windows UI then? Really - back it up - write an article - post a link to it here. I'd love to read it - because for as much as I think there are some screwy things with various versions of Windows, *every* Linux UI I've used has been worse by a huge margin, either in terms of speed, or refusal to have standard ways of doing things across all apps (copy/cut/paste/etc) or *UGLY* graphics and fonts. And I do mean ugly.
KDE and Gnome are both making strides in improving things, but each still have many improvements to make to be as usable as Windows is for everyday people doing everyday tasks. Some of it isn't their fault - building on X, for example, brings its own problems - but for goodness' sake, Windows is still, on the whole, more usable than pretty much every other effort out there.
Re:Finally..... (Score:4, Insightful)
Your friends are laughing at you because, although using the keyboard "feels" faster, nonetheless you [asktog.com] are [asktog.com] wrong. [asktog.com]
Re:Finally..... (Score:2, Insightful)
Re:a new paradigm would be welcome (Score:4, Insightful)
I dont believe it can be done. Not until we have real 3d displays with 3d input devices and probably not even then.
Why? Because most of those working with computers are working with information. Information is almost always most efficiently conveyed via text, sometimes with added images. Text and images are 2d. You spend most of your time working with a 2d environment, in either case. So where is the gain in 3d? As an alternative way of navigating workspaces it's merely 'cool', but not even a navigational improvement over the pagers of multiple desktop spaces in most window managers, not to mention the problem that 3d spatial awareness isnt exactly something that most people find easy. I'm sure you or I could easily say at what exact position our wordprocessor is if we rotate the polyhedron a few steps around, but a lot of people dont find it a trivial task.
a step backwards? (Score:2, Insightful)
I personally use pwm, ion's sister. It lets me stack all my terminals into one frame, and quickly cycle through them. I rarely have to switch virtual desktops anymore. But of course, with everything, it's just preference.
Re:Finally..... (Score:5, Insightful)
For example, consider a user wanting to close a window. The user has two choices. She can type Ctrl-W and close it, or take her hands off of the keyboard (which she was using) and go for the little 'x' in the corner to close the window.
If we apply Fitts' law, we can come up with some numbers for it.
Fitts' law: a + b log2 (D / S + 1)
a and b are experimental values, but we can use 50 and 150 for them, respectively. (I'm getting these numbers from 'The Humane Interface' by Jef Raskin. No, I'm not pulling them out of my ass.)
The 'x' in the corner of my window is about 5mm a side. By my rough calculations, from the middle of my window (assuming the window takes up most of the screen, as my IE window currently does), I have to travel about 15cm to the 'x'. That's 150mm. So, S = 5mm, D = 150mm.
Our equation is then:
50 + 150 log2 ( 150 / 5 + 1) = 793 ms
It's generally agreed that it takes about 0.25 seconds to even get moving once you have your hand on the mouse. The propagation time of your hand to the mouse is probably another 0.5s at least. So, you're looking at about 1.5s to get to where you want.
By comparison, it takes about 0.2s to tap a key on the keyboard. If we assume that the user taps first one key, then another, we have a total time of 0.4s. (I'm also getting these numbers from 'The Humane Interface'.) Mental preparation time for the actual action is about 1.35s, but you have to mentally prepare for an action regardless of whether it is a typing action, or a mousing action. We can ignore it to simplify things. Since the 'ctrl' key can sometimes be odd to reach, we'll even ramp it's time to type up to 0.75ms. We're still looking at a total time of 0.95ms.
That was just to close a window. Selecting menu items (once you've successfully moused to the menu) is even longer. Time saving devices like the Apple (NeXT) dock speed some things up considerably.
Fitts' law explains why it's easier to use the Mac menu system, where the items are up against a barrier (the edge of the screen). It ends up making a larger effective target. This is also why the dock is effective.
Long and the short of it: an expert user is probably better off sticking to the keyboard. While I appreciate the research that Apple does (I honestly believe they know quite a lot more about UIs than basically everybody), this guy's assessment that it takes a full 2 seconds to do anything with the keyboard is pretty far out there, and I don't see any references to papers or any published results.
I often find that it's slower to use the keyboard, but it saves me the trouble of moving my hand on and off the mouse, which amounts to a comfort thing at the end of the day.
That's ridiculous. (Score:3, Insightful)
This research applies to the casual computer user of the late 1980's. Completely non-standard (and really hideous) keyboard interfaces were compared to consistent mouse interfaces for people who had probably only recently touched a computer for the first time in their lives. By a company that was betting the farm on the mouse interface.
The one example I see (replace all '|'s with 'e's) is unrealistic and obviously biased toward the mouse, though he presents it as intentionally biased toward the keyboard. That was all I needed to see. This was an incompetent, biased researcher with a tendency to dramatically overgeneralize.
Overlapping windows are here to stay... (Score:3, Insightful)
The thing is, the mainstream computer users - you know, the ones who their ISP is Internet Explorer? - are used to overlapping windows, just as they're used to working in Windows, and MS Word, and Internet Explorer. Most people either don't care about the advantage they'd gain with a new paradigm for windows management, don't understand them, are completely unwilling to learn a new system, or all three bundled as even more neuroses and whatnot than I can think of. I've lost track of the times I've left the family dual-boot BeOS/Win98 system running BeOS, and heard my mother complaining that she just could not figure out how to use it. Nor is she willing to learn - despite what we all know about the BeOS GUI, Windows is better because my mom is familiar with at, at least according to her.
Might we see ion-type window managers become more popular in GPLed OSes like Linux, BlueOS, etc? Eh, maybe, although there's still the personal preference angle even among the computer literate who could understand and learn to use the new system. Likewise, I could see a real change in the MDI schemes for specific applications. But I think the average desktop home user is going to be using some sort of conventional overlapping windows environment for a long time to come.
The little bar at the bottom? (Score:0, Insightful)
Re:Docking behavior never the right thing (Score:2, Insightful)
I agree. These days it seems like the first thing I do after running any productivity app for the first time, is hide 90% of the toolbars and docking widgets. Then I can have something larger than a postage stamp in which to view my main document.
I think the real trick is designing UIs to put choices on the screen only when they are useful in a given context. And that just takes consideration of the application tasks involved in a given context--no real innovation required. Having fifty million available dockables is like throwing the whole UI design to the user and making them handle it.
If monitors get really cheap and huge, I still don't want to see that braindead clutter surrounding every document.
Use Multiple Workspaces Instead (Score:3, Insightful)
Re:Finally..... (Score:3, Insightful)
What a weird assertion to make. Why on earth would you believe such a thing? Unless you're moving your mouse via telekinesis, your fine motor control is very much involved in the process.
Re:Finally..... (Score:3, Insightful)
Aha, now we're descending from the general case to a specific case. And in this specific case, you're quite right: the "window-close" widget in just about every WIMP interface out there takes forever and a day (relatively speaking) to get a lock on. The metaphor has stuck with us primarily because nobody's thought of a better method yet.
That was just to close a window. Selecting menu items (once you've successfully moused to the menu) is even longer.
That depends on one huge-arse variable: where the menus are.
In the Windows world (and that of its imitators, Gnome and KDE), the menus are placed in the top of the floating window. A terrible mistake, and it makes them dog-slow to use for all of the reasons that you mention and a few more as well -- since the location of the menu onscreen isn't predictable, you can't even use muscle memory to make up for the other defects in the design.
Put the menus in a predictable location (e.g. the top of the screen, with frequently-used menus closer to the corners) and the situation changes dramatically. Deeply nested hierarchical menus reduce the effect a bit, but that's the visual equivilant of adding more modifier keys: hopefully you keep the must-used actions closest to the top of the "tree".
I find overlapping just fine. (Score:5, Insightful)
If the realestate isn't there, overlap, but offset. That's what virtual desktops are for.
I find one thing.. and I'm not picking on OS's here... but in windows, I find window management a pain in the ass. I find myself using the taskbar to flip between windows more often than not.
On unix desktops, I tend to have several things side-by-side or neatly arranged so I can see the data I need, the way I need it.
I've never analyzed why.. but it always seems less intuitive, or downright harder to do in windows.
It's probably due to a combination of different focus mechanisms and the types of applications run.. and I realize windows can be tweaked to have similar, if not the same, focus mechanisms.. but still.
As a general observation.. I find the typical KDE desktop a lot easier and more intuitive to work with than a windows desktop.
Secondly... a few things about windows that piss me off (that generally, though not always, only happen in Windows).
one is the popup dialog box that steals focus from whatever you are doing. That's a nono.
Stealing focus from the app it's related to.. that's one thing... but from unrelated apps.. it's a nono. Second is when one dialog box pops up and I cannot move the underlying windows. THAT is a nono.. I should be able to move any window on the screen at any time, period. I should be able to hide it, peg it, minimise it, shade it, whatever the WM wants.
That's probably another reason I find X a bit easier to work with.