Friday, April 23, 2010

Workspaces, Part ii - The Workspace Metaphor

Part i is Here

So, based on the last post, I think there is a basic understanding of why and how we want to use workspaces. We want to use them to avoid clutter, using workspaces as either task centric, application-centric, or a combination of the two. We want to be able to spread out and understand clearly what it is that we are working on, and to see all that we are doing. In the compiz-enabled Gnome desktop used in Ubuntu, this is accomplished by virtual desktops which act like viewports to one large desktop, sort of 'zooming' in on equal parts of the desktop while leaving other portions out of view. This has been modifiable for some time, by number of workspaces available, the layout (either adding horizontal desktops or additional rows of vertical desktops), the structure of either a cube or wall, and many many other variables concerning basic layout and in use. However, the basic paradigm in place is, in many ways, sub-optimal. This post is about my ideas about what the most optimal use of virtual workspaces should be, and in future posts, I will look at how this can actually be implemented.

So how should workspaces work? Lets look at the current paradigm in a little more detail concerning the basic metaphor of virtual desktops. I want to look at the current default Ubuntu setup, as well as my own current usage, and we will also take a look at other popular and common custom uses.

In a default Ubuntu install, there are two workspaces. These are laid out side by side, like this:

These two workspaces are identical, with the same panels, launchers, desktop icons, and wallpaper. The only different between them is the open documents and programs on one, are not on the other.

The metaphor in place here is 'desktop' or 'workspace.' Unfortunately, this metaphor does not carry well, and being a very avid user of multiple workspaces, it becomes quite clear that there are serious shortcomings involved in calling it a desktop. Where are your tools on a real desktop? In one particular place, such as a drawer or a pen holder or something along those lines. If you have something similar to what I have, you have a very clear computer portion of your desk, and a portion for writing, a place for documents to get dropped and sorted, and any other variations of the sort. This makes sense: if I'm using my computer, I have my computer peripherals at hand, if I'm writing by hand, then I have a space dedicated to that task.

But when this metaphor is applied to the desktop, it falters. If my goal is to be a desktop environment, then it doesn't makes sense to have the exact same tools in every place. Far from it; I discussed in my previous post how the primary uses of virtual desktops are to spread out according to either task, or by application. Yet in the Ubuntu desktop environment, the tools are identical in every place.

I know, I'm really carrying out this metaphor idea, and I'm really stretching it to the furthest extent. But I do believe that this metaphor (which every new user will at some point scratch his or her head at) is a weak one, that has limited innovation to some degree.

If the primary use of virtual desktops is to separate by task or by application, but the primary application currently available is to create an identical area with the exact layout and tools, then we are really not being optimal. At all. This would be like setting up a second desk, next to my current one, so that I could stand up and walk to it to read a letter, then stand up and walk back to my first one to get out paper to write a reply, and stand up and walk back to start writing.

Ok. Lets put aside the weak metaphors that I am taking way to far and worrying way to much about and think about other uses. I currently have a set up slightly different then the default, with 4 workspaces aligned like this:
This basic configuration is more or less just more of the same from the default, with minor tweaks. Using compiz, I have set programs like Evolution and Liferea to automatically open on workspace 4 and 3, respectively, out of the way from my basic work flow, but still easily accessible.

So now perhaps you begin to see my desire for a different use. It makes no sense that in my primary workspace, I have browsers with multiple tabs all stacked up, file browsers and video players aplenty, download dialogs and anything else I might be working on, some of which bleeds to 2 and 3, but in 4, its an entire workspace with one full screen app. Its silly. And its more then just my silly way of doing things, too. Its really the only way I've found to make these things work.

And I'm certainly not the only one that does this. I've read plenty of forum posts and blog posts wherein the author talks about how he likes the workspaces soooooooooooooo much because they can always leave their music player open, or their email, or a terminal, or whatever. But does that really make sense?

The problem is a failed attempt at a literal desktop metaphor. The fact is, in real life, if my desk gets too full of tasks that I am working on, I must simply put things elsewhere, not set up a second desk. While for some major tasks, it makes sense to have that clean, brand new area to set up a whole new environment in, for many of the things we use it for, it makes no sense whatsoever to use the whole 'second desk' idea. There is a better way of doing it, in my opinion. This better way requires an entire rethinking of much of the way we use windows, how we close things, and where things go when we aren't looking at them. I'll be looking at that in Part iii.


  1. What about GNOME-Shell? I don't think one can properly consider plans for this without considering GNOME-Shell integration.

  2. That will be part of the consideration. However, from what I've seen and experienced with gnome-shell, its little more then a new way to manipulate the same paradigm that we already have. Admittedly, its been a few months since I've given Gnome-Shell a run, but from what I've kept up on with reading is that is use its little more then expo with the added ability to add workspaces on the fly.

    My long-term solution should not directly interfere with whats happening with gnome-shell. Indeed, it would actually work quite nicely with it, although it would require integration from them.

    I made some drafts a while back when shell was first broke wind. Concerning workspaces what are your opinions on ShellDesktop.jpg Its a very basic representation on how I feel workspaces should be implemented. Thanks.

  4. I read both posts and I'm eagerly waiting for your proposal. With the thing about ditching notification area I've been thinking as well that the best way to avoid the need of tray icons to hide windows is having them on virtual desktops.

  5. rkademaster: interesting, although I am having a little bit of difficulty understanding what exactly is all going on. I do really like the over all feel, reminds of console gaming ui's, or windows mobile 7.

  6. daniel: well i'm glad you enjoyed it! Its definitely a complicated subject, as there is so much overlapping possibility going on. Its more then just a new way of managing windows, its really got to go deeper then just rearranging the taskbar. I'm trying to really take my time with it and make sure that I'm covering all my bases.

  7. Tyler:not much to it, just mouse over the bottom left corner, current workspaces appear, click the one you want. Plus icon to add another workspace.

    The mini workspaces shown in the bottom left are Exposé'd, as is the whole desktop (when the bottom left corner is hit).

  8. my-bad your trying to replace(remove) the old workspace idiom. palms face. well, I guess instead of separate workspaces showing up in the bottom left it could be a zoomed out continuous(large) desktop view. Clicking on part of the image zooms in to a spot on the desk. Much like a map overview.

  9. :D. No worries. Honestly, seeing anyones thought on the matter helps clarify. I can't approach this thinking that my way is the best way; I have to look at how everyone (or at least a very large number) of users use workspaces, and how to accomplish those uses in a way that makes sense. I actually really do like the look of what you have here, particularly for larger monitor use (or at least as I'm envisioning it.)

  10. "If the primary use of virtual desktops is to separate by task or by application, but the primary application currently available is to create an identical area with the exact layout and tools, then we are really not being optimal."

    I can't really disagree enough with this concept. The fact the physical metaphor is limited should not be a design limitation for workspaces. I would posit that, in fact, it is a great example of how the virtual desktop can overcome limitations of the physical workspace. I would love it if I could have my cup full of pencils follow me everywhere. And that's how the gnome panel following focus works. I could not live without it.

    It is possible that the reason your parents don't have a grasp on virtual desktops is that they don't have a reason to use it. If all they are doing is essentially watching TV or just using a browser, the physical metaphor is...watching TV. What you are proposing is that they have 4 TVs so that they don't have to change channels. And that is really suboptimal.

    I agree that the default of two is probably a mistake. It should be a question asked during configuration. But the essential metaphor, while it can improved for sure, isn't fundamentally broken.


Note: Only a member of this blog may post a comment.