Dynamic workspaces

Here is a small idea I had regarding the workspace behavior. I was going
to refine the 'proposal' and the idea a bit more and post it to the
usability mailing list, but due to recent discussion on this mailing
list, I thought it would be more relevant if I posted it here. I tried
to make it short and to the point.

* Problems with current (traditional) workspace behavior:

A user has to preset a number of workspaces that he might use in the
future. This means that two types of usages are possible with this
current setup.
1) A user designates each workspace for a certain usage (based on type
of work or on app used). This is not something that most beginner users
can do naturally, and it expects being able to predict exactly what the
usage will be.
2) A user just uses the next available workspace for whatever they want
(this is what I use, so I hate it more ;). In this type of behavior,
similar to the first one, the user suffers from needing to pre-guess how
many workspaces he will use.
If a user uses the first 3 workspaces, and then dosn't need to use the
second workspace anymore, then to move between the first and third
workspace requires to move across an empty workspace. This issue becomes
even bigger once a user uses more workspaces and things become more
fragmented. Users have to guess where their apps are, or move a possibly
large number of windows between workspaces to 'defrag' their workspaces.

Other problems include:

-If a user temporarily needs another workspace beyond what he normally
use, then he actually need to go into the preferences and add a
workspace. When he is done, he, once again, needs to explicitly remove
it, or suffer from having another workspace lying around that he uses
once a month.

-Even though there is no major visual clutter with having extra
workspaces around, it does provide a distraction. Think of it as similar
to browsing the web while having 10 extra tabs just laying around doing
nothing. If a user wants to use workspaces and get familiar with it, its
extra overhead that his memory needs to remember.

* Suggested solution - Dynamic Workspaces:

The idea is fairly simple, there is always an empty workspace at the end
of the list of workspaces. We can think of this workspace as a special
empty workspace. When a window is created in the special workspace a new
workspace is added at the end to be the new special workspace.

Also workspace is automatically closed when a user closes all the
windows in a workspace and leaves the workspace.

* Use Case:

A user starts up with only the special workspace. As a user opens a
window in the workspace, another workspace is added at the end to be the
'special' workspace.

The user now wants to open a new workspace to work on something else.
They move to this special empty workspace at the end (the user dosn't
know this is a special workspace it looks like a regular empty
workspace), and opens a window. Think of the action of moving to the end
workspace like opening a new tab in the web browser before entering the
The user now has three workspaces, the first two with some work, and the
last is the empty workspace.

Now say the user wants to move some dialog or window from the first
workspace to a new workspace.  They click the window's menu, and select
"Move to a new workspace" to move it to a new workspace at the end. Now
the third workspace is a regular workspace with the window, and the
forth workspace is the special empty workspace.

The user now finished using the second workspace, so they close all the
windows on the second workspace and move back to the first one. The
second workspace gets removed, and the third one moves to be the second,
and the special empty workspace moves from the fourth location to the
third. (Maybe a nice MacOSX style animation of the workspaces sliding to
the left might help the visual metaphor in this case.

With this method, there is always an empty workspace for the user to
start working from at the end. The user dosn't have to manage and assign
roles to workspaces. He uses them in an on-demand way, and they go away
when the user dosn't need them anymore automatically.

Due to the dynamic nature of workspaces in this suggestion, I think the
workspace selector would need to allow some easy way to swap workspaces.
This will allow users to organize their workspaces more easily and wont
have to get stuck with tow work workspaces with a procrastination
workspace in between.

I am sorry that this came out to be somewhat longer then I expected.

Daniel Brodie

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]