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?
UK based freelance writer Michael Reed writes about technology, retro computing, geek culture and gender politics.
|Designing Electronics with Linux||May 22, 2013|
|Dynamic DNS—an Object Lesson in Problem Solving||May 21, 2013|
|Using Salt Stack and Vagrant for Drupal Development||May 20, 2013|
|Making Linux and Android Get Along (It's Not as Hard as It Sounds)||May 16, 2013|
|Drupal Is a Framework: Why Everyone Needs to Understand This||May 15, 2013|
|Home, My Backup Data Center||May 13, 2013|
- RSS Feeds
- Dynamic DNS—an Object Lesson in Problem Solving
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
- Designing Electronics with Linux
- Using Salt Stack and Vagrant for Drupal Development
- New Products
- A Topic for Discussion - Open Source Feature-Richness?
- Drupal Is a Framework: Why Everyone Needs to Understand This
- Validate an E-Mail Address with PHP, the Right Way
- What's the tweeting protocol?
- Kernel Problem
10 hours 34 sec ago
- BASH script to log IPs on public web server
14 hours 27 min ago
18 hours 3 min ago
- Reply to comment | Linux Journal
18 hours 35 min ago
- All the articles you talked
20 hours 59 min ago
- All the articles you talked
21 hours 2 min ago
- All the articles you talked
21 hours 3 min ago
1 day 1 hour ago
- Keeping track of IP address
1 day 3 hours ago
- Roll your own dynamic dns
1 day 8 hours ago
Enter to Win an Adafruit Pi Cobbler Breakout Kit for Raspberry Pi
It's Raspberry Pi month at Linux Journal. Each week in May, Adafruit will be giving away a Pi-related prize to a lucky, randomly drawn LJ reader. Winners will be announced weekly.
Fill out the fields below to enter to win this week's prize-- a Pi Cobbler Breakout Kit for Raspberry Pi.
Congratulations to our winners so far:
- 5-8-13, Pi Starter Pack: Jack Davis
- 5-15-13, Pi Model B 512MB RAM: Patrick Dunn
- 5-21-13, Prototyping Pi Plate Kit: Philip Kirby
- Next winner announced on 5-27-13!
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?