Tuesday, April 27, 2010

Workspaces, Part iv - The things I heard from you

A few days ago, I asked OMG!Ubuntu! readers how they used their Virtual Desktops. The results were, ultimately, very very interesting and not exceedingly surprising; at least not generally speaking. I've been talking quite a bit about workspaces (i, ii, iii) here on my blog, and I have to assume that you're at least somewhat interested if you're here. :D

So what did I find out? I asked 6 questions, and I want to look in particular at the results of 4 of these questions. For a review, the 4 questions I want to look at are:
1. How many Virtual Desktops do you use?
2. How do you navigate within them?
3. What method do you use to use them?
4. What features do you want in virtual desktops?

The first of these questions is the easiest to look at. 37 of you used 4 workspaces, far and above every other number. Check out the chart:

So, admittedly a small-ish sample size of 84 users in this graph (I got another 4 or 5 late admissions, but I already had these saved to png and everything! Ok, so really there was just nothing very different about the late entries). Theres actually more to this than just which one has the most users; theirs definitely some other information we can pull from this. First of all, not a single person used 7 workspaces. Not one. For much of the way across the board, odd numbers have less users than their even counterparts (2 has more than 1, 4 more than 3, 6 more than 5). But once we get up to 9, it has more users then 8. What does that mean?

Quite honestly, I think this speaks to one very clear point. Users want order in their desktop. For most people, it makes the most sense to use even numbers. A majority of users who used 4 desktops had them laid out in a wall, not in a cube or even a line. 16 used a wall, 12 used a line. This is not, by any means, a conclusive study, or a conclusive poll. But it does show an interesting trend, especially given many of the people who used 4 desktops had set applications or tasks assigned to the workspaces, but usually one was set to miscellaneous use, or they stated that they didn't use the 4th one at all.

So, is there anything conclusive? I think that it shows peoples basic trend is towards even number of desktops, and regardless of even or odd, 4 and less are the most practical for most users use.

Lets go back to the charts! Heres one, which looks at peoples basic mode of use for their workspaces:

Use number one, again with a huge margin, is having Assigned Applications or Tasks to workspaces. I know, thats vague. But what we often got was something similar to this: "I keep my browser in workspace #1, put my current documents in workspace #2, Email and IM in #3, and my media player in workspace #4."

Especially once you consider that basically all of the statements really say the same thing. Virtual desktops are being used often for one application, run fullscreen, just to get it out of the way. I mean, that really makes sense, considering you can only use one workspace at a time. But I was surprised that there weren't more people who were running 4 or 5 or more documents all at the same time, and switching entirely based on the exact task. But it seems my original assumption was off; While I tempered my original analysis by saying that it was not either or, it seems that no is really either or when it comes to task-centric or workspace-centric. Rather, it seems a very large majority of users (contained within the polled group of, notably, nerds) have some applications which claim their own space, and use one or two workspaces only for varied, task centric use of virtual desktops. So, while not directly lining up with my original thoughts, it does line up with some more underlying thoughts: that users of Virtual Desktops are using them basically to keep full screen apps like evolution, rhythmbox, and pidgin open and running.


This shows the primary ways of control that users make use of. Now, this one is not a 1:1 chart, as many users use two or more of these control systems. However, we do see some trends. As a whole, its all about the keystrokes. Expo is up there, but there were only 6 people who only made use of Expo, while the other 21 people mentioning expo use it in addition to keyboards shortcuts and/or dragging windows. I would say, easily conclusively, that almost everyone uses keyboard shortcuts the most. Many users only used something besides the keyboard to take a window along with them, such as dragging a window to the screen edge or using expo.


These are the things people want. Honestly? I only see two things here: People want to be sure that their work flow won't get totally screwed to crap by gnome-shell, and some people recognize a desire to see their workspaces be distinct in some ways: Some, just to be distinct in appearance, some, to be totally distinct in terms of appearance, controls available, basic set up. This, for some people, is app specific, some task, some actually work and social specific, giving the user easily switchable workspaces for different uses.

Well, thats some good quality info, in my opinion. More, later!

Saturday, April 24, 2010

Inspiration and Nautilus Elementary

Lets talk about file browsers, shall we?

Yes, I know, I'm interesting in talking about what might otherwise be considered boring, or at least less then exciting, since all you've heard from me so far is talking about workspaces and how we use them, and now I want to talk about file browsers? Boooooring.

Although we are Ubuntu users, so maybe this isn't so boring. What I want to take a look at is not something that hasn't been looked at before, Ian Cylkowski took an extremely detailed look at Nautilus, and OMG! looked at his post as well. DanRabbit has taken a shot at simplifying things, and the result is Nautilus Elementary, a revision that has been received with many cries of OMG! Just like finder!

So me, being exactly what I am, decided to do a comparison of the 3 filebrowsers that I see the most, Windows Explorer, Nautilus-Elementary, and Finder, as well normal Nautilus.

First up, lets look at what all of these have in common.

Nautilus Elementary:

Windows 7:


(Standard) Nautilus:

Those different red outlined areas? Those show these different areas:
1 - Navigation
2 - Sidebar, with bookmarks, devices, networks devices, places, and or recent files
3 - View options
4 - Preferences and option menu
5 - Search (bar or button)
6 - Current folder information
7 - Zoom slider
8 - Location Heirarchy
9 - Content of folder

So, what do we see? Well, lets compare some things. First up is navigation controls. All of the different file browsers have a back arrow and a forward arrow, and some have more. Finder keeps it just at the two, Explorer adds a little drop arrow for recent locations and a reload button in the location bar, Nautilus-Elementary doesn't have the drop arrow but does have a reload icon next to the arrows, and... then theres standard nautilus. Back, Forward, (both with drop down menus) up, stop, reload, home, and computer. Yeesh.

#2? Sidebar. Explorer and Finder both have a tree-like navigation, at least to some degree, allowing the user to hide categories they aren't using. Finder organizes into Places, Explorer uses Libraries, and both have secondary drives, as does Nautilus. However, Nautilus, as default, does not have hidden options, but instead lists the home folder, desktop, file system, network, trash, all connected drives, and all bookmarks. Not inherently that different, as all 4 show devices and places of documents, just in slightly different ways.

3 is View controls. Nautilus and Explorer share a drop-down menu listing different view options, while Nautilus-Elementary and Finder have a set of buttons, 3 and 4 respectively. Interestingly, Explorer combines the zoom slider within its view control, different from the other 3.

4: Preferences. Nautilus has preferences for it hidden within the edit menu, a few clicks from the user. At the other end of the spectrum, explorer puts a whole lot of options out in the open. However, it too hides menu items behind a keystroke. Finder has a drop button, as well as options in the global menu. Lastly, Nautilus-Elementary hides the menu behind a menu button which then unhides the menu.

5. Search. Windows Explorer and Finder both have search bars on the upper right, while Nautilus and Nautilus-Elementary both have a search button to activate a search bar over the breadcrumb trail. (Yes, the screenshot of Nautilus-Elementary from my desktop is modded with a different breadcrumb trail, thanks to Gnaag).

6. Current Folder information. This lists how many items, and how much available space is in the current folder, while when a folder or program is highlighted, it shows the content size. All 4 basically do this the same, although windows explorer goes waaaaay more in depth with the available information.

7. Nautilus has a plus and minus set of buttons, while Nautilus-Elementary and Finder have a left-right slider in the bottom right. Explorer combines the zoom with the view options drop menu.

8. Where are you at? The breadcrumb trail shows you where you are in the hierarchy of folders. In Nautilus and Nautilus-Elementary both (keep in mind that mine is slightly modded), there is a clear heirarchy visible, which, when clicked, goes to the selected folder. Windows Explorer shows this heirarchy in plain text, much like a web browser. Lastly, Finder does this in sort of a hybrid spatial view, which slides over the previous folder when a new one is opened.

9. Your content! This is basically all the same, everywhere.

So? Well, we've looked at whats the same, and whats different. Overall, I think that in terms of use and features, Finder and Explorer are the most similar of the browsers, while Nautilus-Elementary and Finder have some of the most similar visual stylings of minimalism. I think that Nautilus-Elementary and Explorer has the most balance in its design, as you can see by where all the red ink on each, and the basic clean feel of the layout, even if Explorer is (upon closer inspection) the most complex in terms of most information in sight.

My conclusion? Theres still way to much going on in all of these designs. Nautilus is straight up a joke, with overlapping and repeated functionality, information all crammed to the left margin, and overall just a lot of clutter. Explorer has far more information, yet doesn't feel anything close to as crowded or overdone, mostly because it is actually really well designed. But really, do I need an open menu at all times? just double click, right? Do I need a print and burn option at all times? Theres so many buttons that neatly blend together and sit in good balance, but are simply not necessary. Yet Nautilus seems to have learned nothing from them.

Nautilus-Elementary is really a fantastic example of a nice clean interface, with a very nice balance. Especially considering the building base of Nautilus and its mess, this design has really done much to bring a new balance previously missing from the file browser, and to clear away many of the options we simply do not need. But is it a little to much of a Finder clone?

I personally don't think so. To me, it behaves the most like Explorer, in a good way. Its looks have only one thing in common with Finder: cleanliness. The rest is simply shared heritage of file browsers, working the way file browsers ought to. I'm a huge fan of bringing file browsers back to where they ought to be on my computer: connecting me to my documents quickly, and without getting in my way.

I gathered screenshots from:

Workspaces, Part iii - Square Block, Round Hole

I just finished creating a rather large and messy looking spreadsheet, collating date from the first approximatively 24 hours of responses to the questions I posted on OMG! Ubuntu, and the results have been rather interesting. While I don't have all the hard facts and numbers completely added up, there were some very distinct trends that I found, even from several people who read the previous two posts and disagreed that their use lined up with the paradigm I had discussed. I'll put another post up with the hard facts at some point tomorrow, once some more responses are in and I have time to count them all (seriously, it was about 2 hours of scrolling and reading and retyping summaries and whatnot) and present them in a nice visual way.

But I wanted to look at some basic issues going on here.

Virtual Desktops are supposed to expand the visible work area, to increase ability to work in multiple areas in the same way that some would just use one. But what did I see? Over and over and over again, I saw users who explained their use of multiple desktops in two ways; as a way to basically just avoid minimizing particular apps, and when the first workspace gets to crowded or cluttered.

Why is this bad? Its overkill. Its suboptimal. Its using a sledge hammer to build a birdhouse; pruning shears to trim hair. Its a weak visualization and more complicated then it needs to be.

Why, do you ask? Doing a rough estimate of the responses I have thus far, I'd guess that about %75 use an entire workspace for a single full screen app, which is not accessed or looked at for any reason during much of the work flow, unless the song in rhythmbox or banshee needs changed, or if a new email shows up. Probably %80 put some sort of IM or social on its own workspace, just hanging out in case some new notification showed up, again, in the form of one app for one whole workspace.

This is, really, indicative of the silliness of how we are currently using virtual desktops. I've had 75 people respond so far, and only 3 stated they did not or didn't need the virtual desktops. Many were in a glee about their desktops, but then admitted they only use 2 or 3 of the 4, 5, or 6 they had activated. These were also most likely to have workspaces devoted to only one app.

So what makes more sense? It seems clear to me that the paradigm of switching to an identically-equipped workspace, with the same available tools and decoration and appearence, for the sake of one simple quick task, makes no sense, yet we do it anyway. I catch myself making use of a second desktop to simply hide update manager from having to have one whole icon in my dock or panel. Isn't this rather silly and a poor application of spatial constructs?

I think we're trying to make our need, lets call it a need for a focused workspace, be forced into the only solution we have, which is simply a separate workspace. There is overlap; there is shared functionality, but they are not suited to one another to begin with.

So what do we need? Its a question I've repeated over and over again, and will continue to do so as I look at what we try to use desktops for, and what we really desire.

I'll be crunching numbers basically all day tomorrow to show you guys some graphs and percentages and what not of what I've found this far from your responses. If you want to take a look at the responses everyone gave, take the link above, or heck, this link works too.

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.

Thursday, April 22, 2010

Introductions and Workspaces

Due to a recent conversation stemmed from the announcement by Canonical that they will be removing the notification area from Ubuntu over the next year, an interesting discussion arose due to one current helpful use of the notification area, that of a place to store applications so that they are available to multiple compiz virtual desktops. In response, Mark Shuttleworth wrote back, saying:

"It's a good point. The workspaces experience has languished, and I'd
like for us to climb in and improve it substantially. At the moment, we
do a half-hearted job - we ship what's there but as you say, only
configure two workspaces. I'd be inclined to say "ship without
workspaces" so that we are at least definitive about the position for
the moment.

I'd welcome a discussion about how we could make workspaces *great*. If
we can do that, then we would make more of them. And your contribution
above is a useful start: great workspaces give you easy access to some
apps regardless of the workspace you happen to be in."

This sparked a continuing conversation that quickly grew unwieldy for a simple email mailing list, and particularly in me, it started a new found desire to actually finally begin a blog on, hopefully, usability and design within the world of Linux and Ubuntu. I am not a designer, a programmer, or a developer. I am simply someone who switched to Ubuntu some time ago, and have been happy using it as my primary operating system for just over a year now. Many such Ubuntu blogs have been started, but my hope and goal for this blog is to foster and process discussion and proposals about new functions, features, and tweaks in Ubuntu. While occasionally I may link blog posts from other blogs, my primary goal to begin with is not to give how to guides or instructions (although, I will try to as it is still not natural for me to think in terms of terminal commands, so I won't expect you to either), but to really get to tear apart how we use our computers and come up with new exciting paradigms.

That said, the first idea on the docket is that of making multiple desktops the best that they can be. So for this first post, I'd like to take a look at why we use multiple desktops, how exactly they are useful, and possible goals for improvement.

A bit of information about myself: I use 4 desktops, laid out in a square grid. This is accomplished by setting 2 options within CompizConfig Settings manager, under General Options. Set horizontal desktops to 2, and vertical to 2. I do no use the desktop cube any longer, something I'll explain a bit later. To access these different desktops, I either: 1., Drag a window to the top, bottom, left, or right of the screen to take it with me to the next desktop, 2., move my mouse to the bottom edge of the screen to activate the Expo Compiz plugin, or activate Expo using Win-E, and then clicking on the appropriate workspace, or 3., by pressing win-1,2,3, or 4 to go to the assigned workspace, or pressing Win-Tab to cycle through them.

I primarily use the first desktop for whatever is active at the moment, such as a browser or document, and the desktop to the left and below are for secondary reference documents, file navigation, terminals, and or update managers. In other words, anything secondary to what I'm doing, but that I want totally out of the way. The bottom right workspace is home to Evolution Mail client, and Liferea, which are both set to auto-open there.

Now, we have the basic idea of how I use workspaces. Lets talk about why we use them.

The way I see it, there are two primary ways that Linux users use multiple virtual desktops (please, forgive me and inform me if you have other uses for them). The first is to reduce clutter on the primary workspace by have task-centric workspaces, such as one for school, one for work, one for a current project and so on, and the second is for application-centric workspaces, such as one for an always on Email client, one for terminals, one for gwibber. This is not to say its an either or situation, far from. I am about halfway in between, using the bottom right desktop on my setup as a home for email and RSS feeds, and the top left as a browser home, while the other two get populated with more task-specific documents and programs. So the why becomes apparent through these two uses. People want to spread stuff out.

Its certainly not a new idea, or an astounding discovery. I want the ability to not close what I'm working on, but also to not have it currently present and staring back at me. I don't want the distraction of what I currently have open, and so I switch to a different, clean, open desktop. This concept has been around since 1986 by Xerox (then called Rooms. Yes, I used wikipedia), so its obvious that people have always desired a way to expand the computers ability to display more then just the current screen size, although not necessarily at the same time.

Currently, Ubuntu ships default with 2 desktops, side by side. These are generally discovered by accident, which is usually a horrifyingly frustrating thing. I remember my first Ubuntu install, in which I had no clue about how virtual desktops worked, or that there were already 2 turned on by default. I lost the restricted hardware driver dialog, and then the network manager, and I was at a utter loss as to where my windows were going to. While eventually I got the hang of it, it was still a serious matter of trial and error to remember where I was already and whether or not there were several dozen accidental file browsers orphaned in some other desktop.

So for Ubuntu, Linux for Human beings, what should multiple workspaces look like?

While I'm interested in other opinions (and seriously, I've got time on my hands, send me links to huge reports, I'll do my best to read anything sent my way), I've obviously got some of my own, thus the blog. :D

Optimally, I think that this is what virtual workspaces should work like for Ubuntu.

First of all, they need to be easily visualized. It needs to be instantly understood where it is that you are going when you flip around to different places. This is actually rather well done currently, by way of a small little graphic that pops up on desktop change:

This captures well the current idea: You are viewing the top right quarter of your workspace.

And I know, we're all thinking "Duh"

But Ubuntu is linux for human beings. Guess what? My mom doesn't understand it. My Dad doesn't. They use computers every day, they own 3 of them, they use Firefox and Hulu. They are actually rather adept for average users. But virtual desktops is too much. Why?

Because even though we've made this visualization work, and we make it easy to understand what is happening, the very nature of what is happening is not easy to understand.

AKA, we've done a decently good job of explaining what is, by essence, more complicated then necessary and in need of more explaining then it ought to be.

My solution? Well, we'll talk about that later. :D

Please, share your thoughts about what I've posted so far. I'll be back with the next bits of what I think virtual desktops should optimally be, and then eventually my concept of how to fix them.