Speaking with various people about the idea of spatial email, I decided that perhaps it would not be the best solution for everyone. Many people seem to prefer having a single application for the purported benefits that it brings; the main one being junk mail filtering and other similar filtering.
I can see how this functionality would be useful for POP3 users, who manage their emails offline, but for IMAP users I still think that viewing emails in a similar way to files would work.
IMAP works by having all your email stored on a remote server, so you can only view it when online. Most, if not all, of the features that email clients possess can easily be implemented on-server for IMAP email. Most organisation have some kind of junk mail filtering — I have Spamassassin on my IMAP server — and you can very easily add a virus scanner. This combination stops many threats even before they get to a users desktop. I think that a transparent setup of this nature with emails viewed via a file-manager would work just as well as a dedicated client, with testing and tuning and some time for users to adjust. It is perhaps not a universal solution, but one I would like to see implemented sometime.
Another thing I noticed after posting about email is that most of the applications I use daily save their position on screen. This led me to the idea of spatial applications. This idea does fall down when the window manager has too many windows and so has to place applications where they are most visible. It could work in the main, however, especially using a virtual desktop manager.
As I’ve mentioned before, I don’t think that the taskbar is a very good method of managing programs. I much prefer spreading my windows out over various virtual desktops. Combine spreading out applications over various desktops, a visual pager for those desktops and finally applications that remember where they are and you are fast reaching spatial applications.
My Gaim window, for example, always occupies the same place; to the left side of desktop 6. I always know where it is. No need to scan the taskbar to find it; no need to minimise it at all, in fact: it has a desktop where I can leave it where it won’t distract me.
The main problem with virtual desktops, in my experience, is that they are not very discoverable. Put a user in front of a computer and they will, almost universally, do nothing with the virtual desktop pager that is sitting in front of them. A few will ask what the seemingly useless widget is for, especially after they see their programs appearing there. The Gnome pager displays icons on windows which helps to show what it is.
After five minutes showing them how it all works, pretty much all these users will be using at least two desktops. This leads me to think that it is a good way to manage windows; people seem to like using it. The problem is most people never discover it. The taskbar has an advantage here, there is a label that says “Gaim” and you know you just opened a program called “Gaim” so it makes sense that the new button that appears on the taskbar is related to that program.
It is also disorienting when you change desktops and your programs all seem to “disappear”. This is also a problem with a taskbar based system, I have seen many people get tripped up when they minimise a window by mistake. I remember using Windows 3.1 and getting rather confused when I minimised a window there. The taskbar improves on that, but it still is not ideal. Even now, if I accidentally click minimise there are a few moments of disorientation whilst I work out what I did.
One program I have seen provides an animation when you change desktop. All your windows slide out to the side and the new ones slide in. I think this is a great help as you know that all your programs have just been “swept” off to one side. Combine this with changing desktop when your mouse hits the appropriate side of the screen. You then have a reasonable system of discover-ability.
Take an example. You move the mouse to the right side of the screen and you see your programs disappear off to the left. What would be the most obvious thing to try? Perhaps it would be moving your mouse to the left to try and get your programs back. If testing showed this was the case, then you have a much improved system. Perhaps have small windows that appears to tell the user what has happened, “You have changed to your second desktop. To go back to your other programs, move your mouse to the left of the screen and they will slide back in. If you open programs on this desktop, they will stay here for when you come back”. That is probably to verbose, but it gives you some idea of how virtual desktops could be made more discoverable.
I think that once people are used to the idea, it will feel much more natural as programs do not move around and disappear. You know where you left them and they are still there waiting when you want go back to them. I see taskbar vs virtual desktops more as “make my windows disappear so I can see others” vs “move my windows to one side while I do something else for a while”.
I think that a full implementation of this, with hints to help new users would be a very interesting idea to try out. It is a major application management paradigm change, however. Given the furore that greeted the introduction of spatial nautilus, this could be a problem. Maybe I can do some hacking myself to try out this idea…