Project ToPaZ is the collection of blue-sky ideas and more serious plans that people have thought up for the as-of-now mythical Three Point Zero (ToPaZ) release of GNOME. I personally don’t think that GNOME 3.0 will be a huge change in the nature of the desktop interface; instead, ToPaZ ideas are penetrating the current desktop, and 3.0 will simply mark incompatibility with 2.x, caused by migration to GTK+ 3.0 one of these days.
The best part of ToPaZ, however, is the very fact that it doesn’t exist. So, we are all allowed to dream up our own vision of what it would be like. In my own opinion, ToPaZ means first and foremost a non-interface that is as invisible as possible, leaving only the user and her data into the desktop computing equation. I have been experimenting with existing GNOME technology to achieve a task-oriented environment where I can ignore the interface as much possible.
So here goes. Presenting the topyli Non-Interface, where people, documents and events are first class objects. Ideally, you should never start an application on the topyli desktop, but simply work on tasks, contact people, and find information.
Here’s what you should see when you login to the topyli desktop in the morning:
In other words, not very much. A transparent panel at the top of the screen, with a few objects. It is important to place the panel to the top instead of the bottom of the screen. We still won’t be able to get rid of windows and applications, and those will have their controls at the top. Therefore, it makes no sense to make your mouse travel all the way to the bottom of the screen to work with panel objects.
According to Fitt’s Law, the corners of the screen are the most important spots of the whole desktop, because they are the easiest to hit with your mouse. The current GNOME default layout takes this into account and tries to use the four corners as efficiently as possible, and Ubuntu does even better, moving the trashcan from a desktop icon (where it would be covered by windows most of the time anyway) to an applet in one of Fitt’s corners.
The topyli desktop only has two widgets for interacting with the system, so I only use two corners, saving valuable screen space. At the left Fitt’s corner lives the Deskbar Applet, my primary “interface”. This is where you enter commands for the machine to act on. Next to it is Tomboy, a brilliant, Wiki-like personal note taking application. At the right corner sits the window selector applet, which lists all your open windows, including minimized ones. Next to it is the notification area, where applications will notify you of events that need your attention. In my case, it permanently houses the XChat systray and Gmail notification icons, which tell me about new IRC and email messages.
Notably, the window list (or “taskbar” to Windows users) is gone, as well as the workspace switching applet. I can switch windows with the window selector on the right or by typing a window’s title (say, a document title in a word processor’s titlebar) into the deskbar applet. Pressing Ctrl+Alt+UpArrow brings up the workspace selector to the middle of the screen. The calendar applet in the middle is big enough to hit quite reliably even if it’s not in the corner.
Naturally, the action of focusing the deskbar applet is bound to a key, so you don’t actually have to use the mouse to reach your primary interactive device. I recommend the Menu key between the right-hand side AltGr and Ctrl button, or the Windows logo button on the left if you have those.
One thing I definitely don’t want is persistent icons on the desktop, where they would be inaccessibly buried under windows most of the time. The deskbar is smart enough to find the folders in the root of my home directory, because I keep a rather flat hierarchy, like so:
Of course, I use the Nautilus file manager in spatial mode by default, so that all my folders open at the same place and size where I last left them. Sometimes an old-fashioned file browser is still in order, but that’s no problem since we can order one from the deskbar:
Of course, I almost never want to browse my files. I want people, documents, and events, right? Well, the previous screenshot should show some promise of that, with the deskbar in all its glory. It reads what i’m typing at real time, and will happily
- search all my files for whatever I type in. Not just filenames (who remembers those anyway?) but their entire contents, which are constantly indexed by the Beagle daemon,
- browse all the installed applications (and their descriptions) for matching ones and offer to start them,
- go online to search the mail in my Gmail account and search for matches (thanks Stuart’s Gmail plugin),
- find names and addresses in my address book,
- see if any events in my calendar match what i’m typing,
- see if any open windows have titles similar to the typed string,
- offer to find the definition of my search string in the dictionary,
- see if anything in my Epiphany web browser bookmarks, or browsing history rings a bell. Epiphany works much better than Firefox here!
- if i enter a calculation, perform it (with Spooky’s calculator plugin)
- do drastic system stuff such as logout, reboot or shutdown the machine
- and of course offer to search google, and my vast collection of online bookmarks on Diigo, by tag or full text search
Keeping an address book, mailbox and calendar locally on my machine would be rather silly. The Deskbar can search my Gmail account, and Gmail is accessible from any machine or handheld device. The Evolution Data Server can fetch information from online sources, so I keep my calendar and address book on Scheduleworld‘s servers, and subscribe e-d-s to their iCal and LDAP services. Scheduleworld supports SyncML, which means my Nokia E70 phone always has the same information as my desktop:
And while we’re at it, why not integrate everything with the Google personalized home page itself as well since Scheduleworld supports it :)
All in all, while not ToPaZ, I find my topyli desktop experment rather successful. Using no non-existing future technology (which is very difficult to come by anyway), I think I’ve greatly simplified the typical workflow, compared to anything I’ve used before:
- Press the Menu button, tell the Deskbar what you’re thinking about
- Do your stuff
Any suggestions for improving the system are welcome of course!