Why Apple Spaces is broken

Space: they way I would like to set up my workspaces

I have been using virtual desktops, what Apple now calls Spaces™, since 1995 on X11 Unix. So I have quite good experience with this feature. I know what it needs, and I can tell very clearly that although Apple's implementations is the most beautiful version available, it clearly has not been thought through correctly. As a lot of Apple users will be novel to this, they may not quite understand what is broken immediately, but may come to the conclusion that it is not very useful. So first we have to explain why virtual desktops are useful. Then I can explain why Apple's implementation is broken.

The use case

The reason for developing multiple spaces is to be able to clearly separate one's work. I for example, have one desktop for Mail and other communication related activities, one for programming, one for blogging, and one for other tasks such as giving a presentation.

When I read mail, I sometimes need to browse the web to check up on links that people may have sent me. I don't want that to make me jump over to the browser I opened in my development space where I was reading javadoc. That would both mess up my development environment, and switch the context I was in. If no browser is open in my mail environment I would like to just be able to hit ⌘-N and have a new browser open up there. Then pressing ⌘-⇥ (command-tab) - which should only list applications available in that space or at least offer those applications available there in priority - I should be able to switch between my mail and the browser instances open in that space.

Having read my mail, especially the mail by my manager, telling me to stop helping Apple improve its copy of something that was available over 12 years ago on unix, and to get working on the next great ideas, I switch back to my NetBeans space, where I am developing a Semantic Address Book. Here I would like to switch quickly between the applications that are open in that space: Netbeans, my AddressBook, the shell, Safari and Firefox. So at the minimum, I would like the applications that are present in that space again to be the first in the ⌘-⇥ list. And! I would like it that when I switch to Safari to read the docs, I don't get thrown into my communications space.

There is no way I can have only one browser open for all of my work. I need different browsers open for different purposes in each spaces. The same is true with the shell. Sometimes it may even be true with Mail. Perhaps someone sends me an email relating to a piece of code I am working on. I would like to move that window to my editing environment (easy using F8 of course), in order to be able to switch between it and my editor with ease.

What's broken

So currently it is not possible to work like this with Apple's Spaces™. When switching between applications using ⌘-⇥, Spaces™ throws you across virtual desktops without any check to see if a window of that application is not already open in your space. Spaces™ always switches one to the virtual desktop that an application was first opened in, or where the first opened window from that application actually is. One cannot use the F9 or F10 Exposé keys either. Even though they only show the applications open in one space, they will still in some unpredictable way, switch you to a different space. They do this even if you clearly select a window from the space you are working in. So there is no way to switch reliably between applications open in one virtual desktop space, and so there really is no way to separate your different work related tasks. The way it is set up you need to have all your browsers in the same space, all your shells in the same space, etc... etc... So really these Spaces™ are not designed around a person's work habits, but around software components. That is the most basic of all User Interface failings.

Updates

30 May, 2008 Many, if not most, of the issues I complained of in this post have been fixed with release 10.5.3 of OSX. It seems useable now. ⌘-⇥ no longer randomly switches between workspaces, which was the biggest problem. John Gruber explains how 10.5.3 fixes spaces in detail on his blog.

Nov 20, 2007 eliottcable proposes a solution on quintessentially open. I am not convinced that ⌘-⇥ should create new windows on a space by default if there is non there. It should certainly not switch to another space if there is a window on the current space. In any case I find that the F9-F10 expose keys are clearly broken, since they do have me jump across spaces, when they never should.

This post received a huge number of readers from daring fireball. Thanks. Dave Dribin has a good write-up on this issue. Some further discussion is developing on the reddit discussion forum.

Comments:

Urg. I didn't yet update to Leopard so I didn't yet make your experience but, yes, the workflow you describe with multiple spaces matches the one I developed over many years in an X11 environment.

Especially browser and terminal are apps I use all the time and in many different contexts, so it is laughable if I must constrain them to a single space.

Posted by marko on November 08, 2007 at 09:09 AM CET #

> The reason you have multiple spaces is to be able to clearly separate your work.

Another reason could be lack of display space. In this case it isn't broken.

Posted by beza1e1 on November 08, 2007 at 10:40 AM CET #

>> The reason you have multiple spaces is to be able to clearly separate your work.
>
>Another reason could be lack of display space. In this case it isn't broken.

From the apple space page:

"You do a lot on your Mac. So how do you keep order when projects pile up? Easy. Use Spaces to group your application windows and banish clutter completely. Leopard gives you a space for everything and makes it easy to switch between your spaces."

Posted by guest on November 08, 2007 at 10:45 AM CET #

Couldn't have said it better myself. Apple... Listen up!

Posted by dbolene on November 08, 2007 at 01:21 PM CET #

Actually, if you right click on the Safari icon at the bottom of the screen you'll see that one of the options listed is "New Window", which opens a new browser window into the current space. Solves at least one of your problems.

I've also found that the key to using Spaces lies in properly organizing your spaces and in assigning your main applications to specific spaces so that after a very short while you always unconsciously "know" where you're at and where you need to go.

Using "hot" corners to open the Spaces metaview is a must too.

There are quite a few more tips on this at: http://www.isights.org/2007/11/confessions-of-.html

Posted by Michael Long on November 08, 2007 at 09:37 PM CET #

Michael,

thanks for the "New Window" trick. That's useful.

As you mention there are some apps that you need to have windows open in every space, like Safari and the shell. But I find that quite often when I use Exposé F10 to tab between applications in the same virtual desktop Spaces™ jumps me to another space. It does not always do this, which makes it more frustrating.

Try opening up a Safari window in Space 1, 2 and 3 and a shell in each of those windows (but perhaps in a different order, in case that makes a difference). The also open mail and some other space specific app.
Try switching between them using Exposé. I find that it does not do anything that one can rely on.

Posted by Henry Story on November 08, 2007 at 11:35 PM CET #

Henry,

I use virtual desktops exactly the way you describe. I expect that most long-time users do, too. It just seems natural.

Right-clicking on the Dock does partially address the issue, but it contravenes one of the most important reasons I use virtual desktops: to maneuver through my workspace with the keyboard as much as possible and to use the mouse as little as possible. I will probably continue to use some other virtual desktop program unless Spaces can be fixed, which disappoints me a lot because I have been looking forward to Spaces since Leopard was announced all those months ago.

Isn't there some way to disable Space-switching during alt-tab application-switching? My Internet searching hasn't turned up anything yet.

Posted by Greg on November 11, 2007 at 05:44 PM CET #

Um...

1. Open System Preferences
2. Choose "Expose & Spaces"
3. Select the "Spaces" tab

From here, you can assign specific applications to a certain space, or assign it to \*every\* space...

Posted by Lee on November 12, 2007 at 05:33 PM CET #

two or three things:
• what bugs me the most is when I open a large PSD document and then switch spaces - when the document completes loading it springs to the 'work' space, even though I am reading in the 'other' space
• applications can be set to only exists in certain spaces, or can be set to exist in all spaces, which I understand to mean that the same windows are carried across all spaces - this might help your issue by using a tabbed browser in all spaces, although my own work habits are closer to what you described
• you can use expose in a funny sort of way, because you can actually invoke view spaces (F8) first and then do F9 for all windows (great parlor trick)

All in all, I like Spaces - to me the problems you describe are subjective, as other people have said it works exactly as they prefer. I think the whole virtual desktops model is kind of broken - there are too many justifiable use cases to pick a proper one.

Posted by mike on November 12, 2007 at 05:38 PM CET #

I tried to love virtual desktops, but couldn't see the point. With Exposé and the CMD+Tab vs. `+Tab, I never felt overwhelmed with running tasks. Spaces is a great compliment to my workflow, mostly because I'm always a quick swipe from all my running apps. I'm a hardcore multitasker though. I can't stand doing one thing at a time.

Posted by t3knomanser on November 12, 2007 at 05:44 PM CET #

If you open Spaces preferences, under the per-app settings, simply choose "Every Space" for Safari for example, to solve your problem. Also, I found my F9 and F10, etc., Exposé keys mysteriously disabled in preferences... I reenabled them using the Keyboard preference pane, and F9 and F10 do indeed work with spaces.

Posted by Niels on November 12, 2007 at 05:45 PM CET #

In addition to the change you mentioned, Leopard’s Spaces needs these features:

In the Spaces pager, application windows that are configured to appear in every space should actually appear in every space.

It should be possible to name the individual spaces and to assign unique desktop backgrounds to each one.

It should be possible to move windows from one space to another without using the keyboard or resorting to the the Spaces pager, for example switching to the adjacent space if the user drags a window to the edge of the screen and waits a few moments. Ideally one should also be able move a window to another space using menu commands (probably best placed in the Windows menu).

It should also be a user-configurable option to allow windows to span multiple spaces.

Posted by Michael A. Lowry on November 12, 2007 at 05:45 PM CET #

Spaces is one of the features of Leopard that I most use and love.

A key point of the concept of a personal computer is its flexibility, the ability of one machine to do many things, and all in compatible ways. (Thank you Alan Turing, with your idea for a universal computer). To understand the power of Spaces, you have to think that computers are meant to be flexible, and to think flexibly.

I'm a university student and do a lot of segregated work on my iMac, but I also use it for casual stuff live reading blogs, listening to music. It's also my only tv (with EyeTV). In other words, I'm usually doing a variety of things at once.

Some of the apps I run can largely have their dedicated space (EyeTV, for instance). But even there, it's quite likely that I will occasionally want to look up a tv show on the net.

So do I attempt to make strictly regimented divisions between which apps go on what space? Generally, No! Absolutely not!

Well, actually, it's more sophisticated than that. Spaces lets you have a multi-tiered range of how regimented the location of an App is. The stuff I use most widely is set to appear in every space. This is stuff like Safari or Skitch (the excellent screen capture app that I invoke from the menu bar). I use SKitch in just about every app designed to let me communicate text or images, so I want it to appear wherever I want it, even in EyeTV. Slightly more idiosyncratic apps like Mail or Word are grouped in their particular space.

I see it as a meta-extension to Exposé. Clicking the middle button of my mouse invokes "Show all open windows;" squeezing the sides of my mouse invokes Spaces' overall view. It takes well under half a second to squeeze the mouse, move it over the desired space in the overview and release the squeezing. If that's a bad implementation, then I don't know what a good one is. If a window is in an inconvenient space, it takes only a moment longer to squeeze the mouse, and drag a window between space. Generally, pauses like this are good thinking breaks. I'm not a machine that has to work every possible second producing something concrete: little breaks are good in general. The other thing I tend to do is to click on the app's icon in the dock, if I'm feeling lazy: if an app is only open in a different space, that space is brought to me.

When I first used Spaces I thought it was an obvious omission that you cannot have different backgrounds for the different spaces. I've changed my mind though, I think it is best by far to have the one background. Why? Because having the apps rapidly sliding in and out emphasises the paradigm that what seems to be completely segregated spaces are in fact just adjacent windows onto one very large desktop. And that is why I think of the sliding around as spaces being brought to me, rather than me to them.

Posted by Jonathan Christie on November 12, 2007 at 05:47 PM CET #

dragging a window to the edge of the window moves it to the next space

Posted by chan on November 12, 2007 at 05:50 PM CET #

Two other helpful tips:
-When clicking a link in Mail, hold down the command key to open a new Safari window behind the Mail window (and in the same space).
-You can drag windows between spaces easily—simply drag to the appropriate edge of the screen and it will slide over to the next space. This way if you get bounced to, say, safari in the wrong space, you can command-N then drag to the right space.

Posted by Rory on November 12, 2007 at 05:55 PM CET #

I agree with you.

Also, when a window is minimized in the dock, and we click on it, it begins to appear in the current space, then we're warped to the space where the window was originaly. This doesn't seems very intuitive.

I've been using the contextual menu for new windows, but it slows me down in my workflow.

That and the disappering windows bug. Very annoying.

Posted by Leonel on November 12, 2007 at 05:57 PM CET #

Actually I find that spaces remembers which window was active in an application and jumps to THAT space not the space that the first window was assigned to.

Example, Terminal.app is assigned to space5, mail to space1. Open a term window in space5, open a second term window and drag it to space6. Cmd-tab between mail and term takes be back and forth between space1 and space6. I did get once where it went back to space5, but then it started behaving as I expected.

So, spaces remembers the top window of an app, and when switching to that app goes to the space with that window active. If it behaved any other way, it would be problematic. Behaving this way it seems to "read my mind" as it were.

Posted by KiltBear on November 12, 2007 at 06:09 PM CET #

have you tried setting certain apps like Safari in System Preferences to open in "Every Space" instead of one of the numbered spaces? that works for me.

Posted by Eric on November 12, 2007 at 06:10 PM CET #

I totally agree. I've been using virtual desktops on Linux and Windows (via VirtuaWin) for a few years and had high hopes for Spaces. Its a start but misses the idea. Unfortunately the changes necessary to make it work correctly are fairly big and not something I imagine we'd see in a simple point update from Apple.

Posted by Wes on November 12, 2007 at 06:20 PM CET #

I'm a longtime virtual desktop user
(aging unix sysadmin with graying hair), and Spaces works fine for me the way it is. I \*want\* Spaces to jump me to wherever my Safari window was, etc. For those apps that I want on all my desktops (eg: instant messaging), I just tell Spaces to make that app available everywhere.

Posted by Mike K. on November 12, 2007 at 06:30 PM CET #

I don't really use virtual desktops that way, so I haven't had much of a problem there.

However, Spaces does something none of the other virtual desktop solutions I've used do: it occasionally and arbitrarily loses windows. As in, the application they're from still knows they're there, I still know they're there, and Spaces has no idea where they went; they're just apparently invisible. Through trial and error, though, I've found out that they're "there" enough to be closed with -w. It's very odd, and if it continues, I may revert to DesktopManager, which works with Leopard just fine so far as I can tell.

Posted by Jonas Wisser on November 12, 2007 at 06:37 PM CET #

How about _not_ assigning a specific space to the browser, but assigning _all_ spaces to it in the Spaces preference pane? Could this mitigate the issue somehow?

Cheers
Rick

Posted by Riccardo Mori on November 12, 2007 at 06:46 PM CET #

I agree. Unfortunately, setting an application to be in 'All Spaces' literally puts it in all spaces... at all times. Apple really needs to refine this!

Posted by Brian Rice on November 12, 2007 at 06:48 PM CET #

I'm glad that people are finally bringing this issue into attention. Personally, I find that the problem with Spaces is the lack of intelligence inherent within it. I've used Spaces, quite a bit since I've installed Leopard and while it has reduced desktop clutter, it has actually hampered my productivity. For example, I have my multimedia applications privatized to one space. If say, I wanted to open a media file in VLC from the Finder, Spaces will automatically switch to the space that VLC is located in, and after a second or two, switch back to the space from where I double clicked the file, which I assume is because the Finder is trying to alert me that the preview of the file is ready since I was working in column view. A simpler version of this problem is when a dialog box pops open in an application located within another space. Spaces will automatically switch to that background application. Worse yet, it seems to do this with alerts that are low on priority, i.e. when I have a new feed in my RSS reader. This is especially apparent when first logging in and multiple applications are set to launch at log in. If you have each application within a different space, it's a dizzying nightmare as Spaces constantly switches between applications.

What I do like about Spaces is it's elegance and it's capacity to complement my neurotic tendencies for tidiness. I've assigned a mouse button to activate Spaces and in conjunction with Exposé, manually switching between a number of different windows has never been quicker. I tried Virtual Desktops and a few other third party solutions but for one reason or another I was never quite sold.

I guess the difficulty lies within the ability to not only categorize applications, but separate windows as well. Adding intelligence and differentiating -tab so that you can scroll through a list of windows, applications within the current space, and all applications is one way but really does complicate things.

Here's to hoping that Apple can offer up an intuitive solution in upcoming updates.

Posted by Patrick B on November 12, 2007 at 06:51 PM CET #

I've never bothered with virtual desktops, never saw the point or felt the need, but I agree that Apple's implementation is horribly broken. It sounds like more of a hindrance than a help.

This is the most motivating discussion of the feature I've seen and makes me want to play around with desktops (on Linux!) when I have the chance.

Posted by Paul on November 12, 2007 at 07:29 PM CET #

Maybe I'm not quite on the same page here, but I've solved these problems by assigning certain apps (namely Mail and Safari) to every Space. Would that not help the situation?

I'll admit that I haven't been completely crazy about how Spaces has been implemented. Or perhaps it'll just take me some time to get accustomed to working that way.

Posted by Nick del Castillo on November 12, 2007 at 07:55 PM CET #

Is it Spaces being broken or -Tab being an outdated way of thinking? Is your problem really that you can't stop yourself from thinking of OS navigation except in one particular way?

To me the issue is this: "Old" virtual desktop managers behave almost literally as distinct desktops and don't really take into account that they are part of some larger picture (unless you specifically tell them otherwise). Apple's implementation is the opposite: each Space is aware of the others and thus it will shift you around to the "appropriate" space when you ask it to do certain things, like use a specific App. This is mostly subjective: both methods have pros and cons (you focused only on the cons of Apple's method, failing to note that the opposite behavior can also be a con for scenarios other than the one you describe).

You have been using an App switcher (-tab) as a "kind-of" window switcher, which is kind of a kludge. It's not all that surprising though: pre-expose, there wasn't really a "window" centric way of navigating: it was all App-focused and thus App-switching pretty much was window switching. All Spaces has done is highlight that switching between "Apps" is not always the most effective way to be thinking (in fact, it may be the worst way to be thinking). You want to be thinking in terms of windows or Spaces first, and apps second. Apps serve a task, and if Spaces is supposed to be putting tasks first then it is right to behave with Spaces/Windows taking precedence over the Application itself. It's a subtle but important change: you need to stop thinking "I'm browsing, but now I need "Mail" and start thinking "I'm browsing, but now I need that "Mail window".

Apple's philosophy with Spaces is that each App gets assigned a "primary" space, which is simply the space in which the app was launched. This follows perfectly with the "certain apps in certain Spaces" philosophy. However, if you want a certain aspect of that app to be in a non-primary space you can do that too: just open a new Safari window and drag that window to the new space. So now you have two Safari windows, equal in avery way except that one is the "primary" window because it's in the "Safari" space. So if you tell OS X "I want this particular window, which is a Safari window" it will whichever one you specifically ask for. But if you tell OS X "I want Safari, but I'm not going to tell you which window I want (which is what you are saying when you -tab)" then OS X has to make some guesses. Pre-Spaces this wasn't so bad (just give you the most recent window) but post-Spaces it now has to make another difficult decision: which SPACE do you want? Here Apple does what I think is the right thing: since you asked for an APPLICATION and not a specific window (aka specific function of the application) it takes you back to that application's "primary" home. If you anthropomorphize things, I imagine it goes something like this: "Oh, you want Safari do you? But you won't tell me which window? Okay, well I'll just send you back to Safari's main home and let you figure out what you want from there."

Notice that if you avoid using -tab and instead use Spaces/Expose all the problems you are having vanish because you are no longer asking the OS to guess. Opening a new browser window will open it in whatever space you are in (because you told the OS "I want a Safari window RIGHT HERE). Now if you want to switch between Mail and Safari (for example) in that window you just need to use expose and pick your window. Using -tab for this is a bit backwards: you don't want an "App": you want a specific window.

Your post could just as easily have been called "Don't use an app-switcher as a window-switcher". The subtext is that operating systems have evolved past the "applications are primary, windows are secondary" behavior of the last 20 years, but not everybody is having a smooth tome evolving with them (which is totally natural and expected: 20-year old habits won't break easily). And this isn't to say that "App-centric" navigation doesn't have it's place, just that perhaps it shouldn't be the primary cue by which we navigate.

Also: did you notice that if you have windows from the same app open in multiple Spaces you can simply tap on the app on the dock and it will cycle through them? Each successive tap takes you through each Space in which the App is currently active. To my eyes, this makes mouse navigation far superior to keyboard navigation because you can use the dock to accomplish both App-switching and Spaces-switching. Dare I say that mouse navigation has actually become more efficient than keyboard navigation? I do dare, which the Art guys are probably happy about but the code guys are less happy about.

Posted by Padriac on November 12, 2007 at 08:03 PM CET #

I am still trying to experiment with Spaces to see whether I can get something out of it.

It seems that for you Safari is kind of the application that you want to be visible in every space.

Why won't you configure Spaces to display Safari everywhere? I did this for Finder and it worked ok.

Posted by Roustem on November 12, 2007 at 08:16 PM CET #

Why not just set Safari to show up in all tabs? That would let it show up in whatever tab you are in and not send you wizzing around the virtual desktops.

Posted by Kurtis on November 12, 2007 at 08:30 PM CET #

I guess it comes down to habits. I had forgotten that Command-Tab switches apps. I have assigned Expose (and Spaces Expose) to extra mouse buttons and I almost always visually switch apps now. I love that you can use Expose while in the Spaces view.

I can see your keyboard problem though... I hope this isn't solved by the Windows way by having one icon for each window instance on screen... I would rather the app switch to an instance running in the current space as the first choice, but how to pick one that would lie an an outside space? It would seem odd to have two key combinations to switch apps -- one within a space, and one in all spaces.

Overall... I don't think this is a bad first-attempt at virtual desktops. I've tried many others, and this has been one of the most usable for me.

Posted by Ryan Dobson on November 12, 2007 at 08:32 PM CET #

Couple of shortcuts that help with this:

First, you can set an application to be visible in all spaces simultaneously in the Spaces pref panel. I do this for activity monitor an iTunes.

Second, there are several ways to move a window to another space, but my favorite is to click and hold on the window's title bar and press Control-1 (or whatever space number you want) to instantly take that window to the new space. You can also drag and hold at the edge of a space but I find that to be pretty cumbersome.

Posted by Dave on November 12, 2007 at 08:35 PM CET #

Henry, you've articulated every single one of my gripes about Spaces. As one of the other commenters also said, I've been looking forward to Spaces since Leopard was announced. But the inane way in which Command-Tab works makes them almost useless.

It's funny, because in almost every case, Spaces seems to do precisely the exact opposite of what I want it to do in any given circumstance. It would be nice if, like you said, Command-Tab gave priority to apps in the current space. I think it would be even more useful if Command-Tab always left you in the current space, and then you could, for example, switch to Camino and hit Command-N to create a new window in the current space, even if there isn't already one. Then, for those cases when you did indeed want to Command-Tab to a different space, there just needs to be another keyboard shortcut that says 'Bring me to this app's active window, whichever space it might be in.' Similarly when switching spaces manually -- if I'm in Terminal and I switch to a different space, it would be nice if Terminal remained the foremost application, and then I could just hit Command-N to create a new window in the new space.

I also find it highly annoying that keyboard shortcuts like Command-Left and Command-Right in Terminal switch between spaces. If I'm in a space and I open multiple Terminal windows, I don't want to cycle through all of them. The Command-` shortcut seems to behave nicely in this regard, but apps like Terminal should have brought their own keyboard shortcuts into compliance too.

One thing you didn't mention was that clicking on an application's Dock icon initiates the same asinine behavior as Command-Tab. While I don't by default use the Dock for switching apps, when I'm in 'mouse mode' (e.g., such as when browsing the Web, or working in Photoshop), it's quicker to leave my hand on the mouse and use the Dock than it is to switch from the mouse to the keyboard to the mouse again.

In regard to the comment about right clicking on the Dock icon for and selecting 'New Window' -- that works great, if the app has a 'New Window' option in the Dock menu. But many apps, like Stickies, don't.

Posted by Cody Robbins on November 12, 2007 at 09:01 PM CET #

@ greg

Don't know if this helps, but you can switch focus to the dock with ctrl-f3, then cursor up to activate context menu on any highlighted app or icon. details:
http://www.mactips.org/archives/2007/10/11/get-easy-keyboard-access-to-dock/

Posted by jeremy on November 12, 2007 at 09:28 PM CET #

Have you tried ctrl-F4? It cycles through the windows in your current space.

My guess, if you mention X11 you won't like Apple's implementation of virtual desktops. If you have no idea what X11 is Spaces does what you want it to do. Why? Simple human nature... it doesn't work like you're used to.

Posted by Brian Yamabe on November 12, 2007 at 09:41 PM CET #

You can also set an app to appear on all spaces if you like. I don't know why I'd ever want multiple browser _windows_ when the one windows can hold like 12 tabs with no problem. So just have firefox or whatever appear on every space and use it's tab's feature as it was intended. Same deal for terminal.

Posted by ryan on November 12, 2007 at 10:13 PM CET #

Spaces allows some applications to exist in every space. Set Safari or FireFox or OmniWeb to work in every space in the preference pane and you won't be shot across the Spaces universe when you Command-Tab.

Posted by mistersquid on November 12, 2007 at 10:22 PM CET #

I've never used anything like spaces before, so don't have any inbuilt prejudices.

I like spaces, I've got the F6 key set to activate it, and Control-arrow keys on mine flip between spaces, as well as the shortcuts in the menu bar.

As well, I've got certain Apps set up to open in certain spaces, such as Dictionary in space 2, so when I want the Dictionary from window 1, window 2 flips open, shows me the Dictionary window, I close that window, and I'm automatically flipped back to window 1.

I've got Safari set to open in any window, and just pick 'new page' to set up in each.

Command-tab flips me to whatever space the next App opens in, and selects the same space if the App is open in the present space already. If something like Safari is only open in space 1, spaces will flip to it if I pick it.

It's just a matter of setting up the preferences for every App that you want to open in a single space, or in every space (the default).

Posted by Brian Christmas on November 12, 2007 at 11:17 PM CET #

My favorite use of Spaces: Assign Parallels to a Space and run Windows in it.

Otherwise, I agree that some stuff is broken. I'm still using Spaces pretty regularly, though.

Posted by flysi on November 12, 2007 at 11:57 PM CET #

Perfect, succinct summary. All of the free workspace-wannabes from before the release of Leopard suffered from similar sorts of problems.

This could have been a killer feature, and they've botched the first release sufficiently to mean it will never work.

I think the major problem on the Apple platform is the insistence that workflows are application-centric rather than window centric. As you say - flawed thinking about user interfaces. You can also see signs of the same problem by the fact that you can't have two terminals and a web browser open and switch between them all as you like using a single key combination as you can in Gnome or Win32 with alt+tab. Be had a less pronounced version of the same set of problems because it was also application-centric.

This issue has been annoying me since I first bought an Apple. I was open to the possibility that Leopard would get it right and have been using Windows in vmware (and ssh) to get by in the meantime. I've been looking at thinkpads recently - time I moved on I think.

Posted by Craig Turner on November 13, 2007 at 01:52 AM CET #

As a man with a single brain and only two hands on one keyboard I can hardly multitask at the same time, as a consequence my workflow is to accomplish one main task with several applications all spread along four Spaces - and it works like a charm.
For sub tasks like reading email or rss feeds only one application is needed I have no need for Spaces at all, but for my main task I do for living Spaces (like VirtueDesk) is perfect.

Posted by Oliver Michalak on November 13, 2007 at 02:16 AM CET #

The application Witch,

http://www.manytricks.com/witch/

Almost solves this. Its an alt-tab switcher, but can display all the windows of an application, not just the applications.

Unfortunately, although it runs in Leopard it is not really Leopard aware and seems to miss some windows out when Spaces is being used.

A little encouragement to the author may help in bringing Spaces nirvana!

aid

Posted by Adrian Bool on November 13, 2007 at 02:43 AM CET #

Give Apple some slack here: there are a few rough edges that will be smoothed out over time with proper user feedback... though clearly, some use cases are conflicting.

There are actual bugs also. For example in Numbers (the spreadsheet app), if you launch it in one space and move the window to another space, something wrong happens with the "already-typed-in" pop-up menus (those which appear when you type a list of values: it shows the list of existing values that match the characters you've typed so far): this pop-up menu appears in the original space, not the current window space. I kind of understand the technical reason, but it's a bug nonetheless.

Posted by Jean-Denis Muys on November 13, 2007 at 02:55 AM CET #

If you only want to get rid of the windows clutter, try SpiritedAway instead of Spaces.
It's sound stupidly simple, but works very well.

Posted by Schlaefer on November 13, 2007 at 03:11 AM CET #

Wow, quite a few comments. Conceptually, however, I have to agree with Padriac above. Spaces is about integration, not separation.

Windows can be moved back and forth, clicking an application on the Dock takes you to the right "space" automatically, and so on.

As I rarely used command-tab, I can't comment except to say that I suspect that there's someone who thinks they got it right for everyone who thinks they got it wrong. Personally, I'd find it odd to do a command-tab and NOT see the application I know is running... somewhere.

Posted by Michael Long on November 13, 2007 at 04:16 AM CET #

I totaly agree. Spaces is useless the way it behaves now. I'm not convinced of multiple desktops anyways: Handling apps and windows is bulky, having a third layer involved does not seem to solve the problem. Spacial memory get's even more confused. Apple should go directly to a zoomable desktop. Spaces seems like a excuse not getting it ready on time.

Posted by Moritz Zimmer on November 13, 2007 at 06:03 AM CET #

I agree that Spaces is very suboptimal in its current form. I'm still using it, but going back to Desktop Manager is tempting (if it actually works on Leopard).

Another aspect of Spaces behavior is the following: When you close an application, it is very possible that the next app in the front-to-back stack is not "at home" in the current space. It will then "swoof" you to whatever space that app is attached too. Very surprising when the space you are in still has perfectly fine apps. For example, I open Dictionary to look something up, close it, and "swoof" it sends me back to Spaces' idea of the browser location, even though the space I was in still had a browser window.

Posted by Daveed on November 13, 2007 at 07:39 AM CET #

[Trackback] Why Apple Spaces is broken I’ve been using Leopard for a few days now, and believe this captures Spaces pretty well. I don’t believe it’s broken, and I still find it quite useful, but it could certainly be better, and he explains wh...

Posted by Mark Powell's Dev Journal on November 13, 2007 at 07:56 AM CET #

Spaces...so close, yet so far. I agree with the downsides posted here, so I won't repeat them. My biggest gripe is that there's no way to not have an app that gets focus to force a switch to that space. For example: I may click on a hyperlink in mail, but I don't necessarily want to switch to the Safari space at that point - it's something I just want to read later.

Also, I may be working along happily, but am jarred by unexpectedly switching to my 'chat' space if someone new sends me an iChat message.

This behavior need to be configurable.

Posted by Edward Marczak on November 13, 2007 at 08:02 AM CET #

Why your argument is broken:

I have used Solaris 10, Linux, Windows, Mac OS, IRIX and BSD OSs and NEVER been able to use any of them. Why? Because they involve thinking about stuff!

I don't want to have a 'oh that's on desktop 2' \*switch\* moment every time i want to change workspaces.

The brilliant thing is that Spaces opens stuff on the desktop you want it on, it stays there, and you can CMD-Tab to it wherever you are and get landed where you want to be. No thinking is required! It takes another conscious thought process out of the workflow. Less thinking which desktop you left an app on = less effort = more work done doing stuff you want to do.

I think Spaces' simplicity it the genius to it. It works. It's only jilted folks who are used to the old way of using virtual desktops, which is from a new user POV clunky and non-intuitive.

Sorry - I disagree - Spaces is NOT broken, IMHO it's FIXED everything that was wrong with Virtual Desktops.

Posted by Mark Benson on November 13, 2007 at 12:30 PM CET #

@Mark Benson: You oversee the simple fact, that working processes are not connected to applications. You can "work" on totally different things in the same application. That's why _any_ virtual desktop paradigm fails. Just try this: Put a Safari-Window on your "work" desktop and another on your "leisure" desktop and watch the confusion, if you click the safari icon in the dock. You end up anywhere, and get zapped through all the spaces with a Safari window on it. Virtual desktops are the badest thing one could event concerning spacial memory - one of the most important principles in GUI design. I'm waiting for the zoomable desktop before getting even more distracted while searching for "lost" windows.

@Jean-Denis Muys: I totaly agree. "SpritedAway" helped me a lot to save energy otherwise wasted dealing with window-cluttering and visual overstimulation.

Posted by Moritz Zimmer on November 13, 2007 at 02:07 PM CET #

I want Adium, in particular, on 'Every' space - but it won't behave!

After assigning it to 'Every' space, it shows my contact list (and message windows) on every space when I switch between them, until I put the MBP to sleep or restart - then the contact list only appears on the first space!

Anyone got a fix for this?

Posted by Tim on November 13, 2007 at 09:06 PM CET #

[Trackback] Like a lot of folks, I’m not quite happy with the implementation of Spaces in Leopard. Overall, I think it’s a beautiful solution, but as Dave Dribin points out, Apple is trying to make an advanced feature accessible to the masses, and as a...

Posted by Pascal's Diary on November 14, 2007 at 10:47 PM CET #

The folks who say things like "assign Safari to all spaces" seem to be missing the point entirely. No one wants all of Safari's windows following us around from space to space. Each space needs its own unique (set of) Safari windows, each with a context-specific set of tabs.

Furthermore, manual window navigation via the dock or expose/spaces keys doesn't address the problem in which spaces zooms off from one space to another when one app invokes another, as in when one types command-shift-I in Safari to email a link to a page. Spaces zips off to the space on which mail is running rather than popping up the compose-mail window on the current space. Spaces forces the user to lose the context of the original page, and that's just not nice.

Henry hit many spaces nails squarely on the head. If you think he's missing the point, my guess is that you are the one missing the point.

Posted by Fred Desmet on November 15, 2007 at 01:17 AM CET #

Great post. I too use virtual desktops in the same way. I have been looking for alternatives since upgrading to Leopard. I'm close to finding one: http://beyondthetype.com/2007/11/21/virtuedesktops-alternative-for-os-x-10-5-leopard

Posted by Martin Sadler on November 21, 2007 at 04:21 AM CET #

I've used virtual desktops in Unix and on OSX for many years, and I generally think Apple has great UI design. However, they've missed with spaces. Here's how to fix it:

- Add 2 checkboxes: global preference for "Navigate on window open", and "Navigate on app select".

- Add a per application preference (override) for the above 2 items

- Add multiple transitions

Then everyone could have what they want, and Spaces would catch up to the open source VirtueDesktop product.

PS - Apple, please add tabs to your finder windows. It would unclutter my desktop tremendously.

Posted by Vince Marco on November 21, 2007 at 07:41 AM CET #

The ability to make an individual window sticky (as opposed to a whole app) would go a long way to getting me to shut up.

Posted by Georg Nikodym on November 21, 2007 at 02:18 PM CET #

Hi, I'm glad you blogged this so I don't have to. If you really care about this, one way of making your voice heard \*at Apple\* is to file a bug report.

http://bugreport.apple.com

You'll need a free ADC account, but it's an easy and useful thing to get. Various people at Apple have mentioned that duplicate bug reports are considered votes for fixing bugs or changing behaviors, so cast your vote today!

Posted by Nathan Gray on November 22, 2007 at 03:53 PM CET #

I totally agree. I in fact came upon this article while searching for a solution to this very problem. It's definitely a problem! I can't make sense of spaces when I can't truly separate my work.

Just thought I'd provide my comment in case just one more makes any difference to Apple. :)

Posted by Daniel Parker on December 04, 2007 at 08:11 AM CET #

I agree with this article wholeheartedly! As someone who has been using virtual desktops for about a decade, I was very disappointed to find that Apple had dropped the ball so badly with Spaces. I had been blissfully using Desktop Manager prior to 10.5, but as it does not work with Leopard and development has been frozen for two years, it looks like I will be forced to endure Spaces' broken interface until Apple takes the time to cobble together a real Preferences pane for it.

Spaces feels like it was coded by people who didn't use virtual desktops to get anything done, and merely thought about the problem in the abstract. My every move seems to do exactly what I don't want it to. I haven't said that about an Apple product, ever, in my ~25 years of Apple and Macintosh usage.

Posted by pete gamache on December 13, 2007 at 07:51 AM CET #

I couldn't agree more. The Spaces application assignment option does not help at all, the current window just slides to the next space.

And this is unbelievable, since I was completely happy with Desktop Manager in Tiger, it provided the basis but it worked.

The main issues are:
if you open a new window, it MUST be on the current space
you could send a window to another space

Resuming, using leopard is being too frustrating simply because of that.

Posted by Hugo Pacheco on December 15, 2007 at 01:13 PM CET #

Someone might have posted this already but if you are unhappy with the way Spaces works, try You Control Desktops. It does not look like much at first, but once you have spent some time with it, you probably will be amazed by the simple yet elegant way it works (you just have to love the way it lets you assign virtually any shortcuts).

I have returned to YCD now (be sure to check out the \*beta\* version: http://www.yousoftware.com/beta/).

Posted by Eberhard on December 29, 2007 at 11:04 AM CET #

What I would like to do is to run my Emacs editor on multiple multiple desktops simultaneously, but with DIFFERENT emacs files (actually tex files) open on each desktop. That is, I would like to work in space 1 on some paper, and in space 2 on some book, and in space 3 on, say another paper, using my emacs editor (actually Aquamac Emacs). I do not see how to do this in Leopard using Spaces. Is there a way of doing this? In Linux this is quite simple. In Leopard, the emacs editor will not allow me to simultaneously open different files in different spaces, so I can go from one prject to the next by jumping from one space to the next. If this is true, the Spaces in Leopard is very inferior to the virtual desktops, say, in Linux.

I really would appreciate some help with this. Thanks.

Posted by Herbert Korte on January 02, 2008 at 10:03 PM CET #

If you can open two emacs windows on one space then you can open two emacs windows and put them on different spaces.

Simply open two windows and hit your spaces hotkey, drag one or both of them to whatever space(s) you want them on.

'Problem' solved.

If you can't open more than 1 emacs window at all then this is an issue with Aquamacs not spaces, try Vim instead.

Posted by ryan on January 04, 2008 at 06:29 AM CET #

I have found this annoying as well, namely cmd-tab favouring windows in other spaces to the current one - which seems completely backwards to me. I have sent feedback to apple of a proposed solution. Basically this:

Perhaps in addition to being able to choose an app to be in "Every Space", which i don't find very useful at all\*, you could have an option "Each space" which would mean that it would always be in whatever space you're in, i.e. if you choose cmd-tab it would ALWAYS stay in the same space. If there is no window in the current space for that app, it would open a new one. This would seem to fix the main issue here...no?

\*incidentally the only app i would find useful to be in "all spaces" is the activity monitor - but even when chosen to be all spaces the processor window is always tied to one space!! Dumb.

Posted by Elliot on January 11, 2008 at 06:59 AM CET #

Hugo P is spot on. Application centric is for your average users. If you are someone who has a workflow, you must be able to do two things:
1) open in the current window
2) move the opened app where-ever with ease, ala unix workstations.

I'd also add,
3)naming spaces
4)different wallpapers.

My thought is you can't have it all-ways. Your average user will be happy (as I am) to always know itunes is on screen 2 - there's no need to open it twice. But if you are using multiple instances of apps - in particular "terminal" you must be able to open a new instace directly in the current window... I haven't tried this - what happens if you run the app from a terminal in the space? Does it still jump to where another instance is open?

There is a simple way to solve this, always open a new instance (irrespective of the program) or space and give a keyboard shortcut for moving selected apps. I don't care how much you use workspaces in uinix you always mistakenly open an app in the wrong space eventually and might change what you use the app for so might want to switch rather than open a new instance.

cheers

Posted by John Wilson on January 12, 2008 at 06:07 PM CET #

OSX 10.5.2 is out today but this problem has not been fixed. Not surprising if I go by the response to the bug report I sent a few months ago. On Feb 1st 2008 I received the following message

"Hi Henry,

This is a follow-up to Bug ID# 5610888. Please know that our engineers have not been able to reproduce this reported behavior.

Should you continue to encounter this issue, please provide any information that would assist engineering in reproducing this reported behavior.

Thank you for taking the time to notify us of this issue."

This was the bug report I sent in

"This is a summary of a long thread here:

http://blogs.sun.com/bblfish/entry/why_apple_spaces_is_broken

If you open a safari in one space then open a new window and place it in another space, then do the same but perhaps in the reverse direction with a terminal, add perhaps a few other apps. You would like at the minimum to be able to switch using F9 or F10 between the windows open in the space you are looking at. Expose does show you the right windows but selecting one of them will mostly jump you to another space, where that application is open, but not that window. That is seriously broken, as even your most ardent apple defenders have agreed

http://blog.elliottcable.name/articles/2007/11/spaces-solution

Further it would be good to think about making command-tab more sophisticated, or at least giving users the option of making it more sticky to one space. But perhaps the Expose keys will give me what I want when they start working correctly. "

Perhaps I did not write the steps out in a clear enough sequence. You'd think there was enough material on this thread for someone with a little bit of a brain to work out what the problem was.
So if anyone who participated on this thread wants to submit a bug report please mention my bug number, and try to be even clearer than what I was. I think you will need to start from an empty desktop, and proceed step by clear step. Ask your grandmother to follow those steps. If she can reproduce the behavior then you have it. Add as a PS that your grandma followed those steps.

Posted by Henry Story on February 12, 2008 at 03:08 AM CET #

Fresh off the hint mill:
http://www.macosxhints.com/article.php?story=2008021122525348

Summary: There is a hidden preference which can disable Spaces' default behavior of throwing you around from space to space when you didn't ask it to. Lovely. Maybe Apple will stoop so low as to give us worthless customers a checkbox in the Spaces preference pane by 10.5.8 or so.

Posted by pete gamache on February 13, 2008 at 11:47 AM CET #

Thanks Pete for the pointer to the hint. For those on case sensitive file systems the correct call is
defaults write com.apple.dock workspaces-auto-swoosh -bool NO

Sadly this hint will in fact make command-tab useless in certain circumstances. Before applying the above command, try this:

1. login to a clean workspace

2. in space 1 open Safari
2.1 create a new Safari window with ⌘N
2.2 Press F8 and move that window to Space 2
2.3 Move to space 2

3. in Space 2 starup the Terminal program
3.1 create a second Shell with ⌘N
3.2 Move the second Shell to Space 1

4. Now use ⌘-tab to switch between a Safari instance and a shell instance
Sometimes you will get the Shell or Safari instance on the same desktop, sometimes it will switch to another desktop
You may have to switch between desktops to see this. What this shows is clearly that the behavior is unpredictable.

5. Use F10 to Switch between the Safari and the shell on the same desktop. Here clearly you should always remain on the same desktop, since you are given a choice of a window on that desktop. I find that from time to time, or regulary, but not always predictably, I get swooshed over to the other desktop

6. Apply the hint by writing the following in a shell
> defaults write com.apple.dock workspaces-auto-swoosh -bool NO
> killall Dock

7. Now ⌘tab never forces one to change desktop. At least we have consistency. But it does not necessarily bring the window of the application you have switched to to the foreground. So while typing this in Safari I typed ⌘tab and though the shell application was selected it did not appear in the foreground. Again this behavior is not consistent. You may have to switch spaces to get it. Right now it does suddenly switch the terminal to the foreground, but when I then ⌘tab I no longer get Safari in the foreground.

8. F10 does now do the right thing. It allows you to get the window you want to the foreground and it does not switch you to a different workspace.

CONCLUSION: This hint helps a little bit. F10 exposé key now works.

Posted by Henry Story on February 14, 2008 at 02:54 AM CET #

I've gone back to using Tiger 4.11 with Desktop Manager. I like the way it works much better than Spaces. Alt-tabbing to an application goes to a window of that application in the current space. If there is no such window, it makes that app the active one, and new commands will open windows in the current space.

Posted by Rick Taylor on February 28, 2008 at 01:55 PM CET #

Relating to the hint:
As for the odd window behaviour, I haven't had it, and neither have some of the people over there, so it's probably worth a try.

Posted by Benjamin on March 01, 2008 at 04:51 PM CET #

Looks like the main problems are fixed with update 10.5.3 that just became available today, 28 May 2008. See the full report at

http://support.apple.com/kb/HT1141

Posted by Henry Story on May 28, 2008 at 05:23 PM CEST #

If you click and hold the top a window and press your space switching shortcuts it takes that window with it.
Much faster than dragging it to the sides of the screen till you get to the space you want it in or opening the view all spaces screen and dragging it to a space.

Posted by robbie on June 09, 2008 at 06:08 PM CEST #

How do I unsubscribe from getting new comments by email? I'm pretty much content with Spaces as-is now and don't need to read more about how it is broken/fixed.

Posted by Rory on June 09, 2008 at 06:32 PM CEST #

Well I think it is time to close this thread. The problems are now mostly solved, and even if there are problems nobody is going to scroll through all these answers here to find answers to any questions they had. 10.5.3 pretty much fixes the problem and I recommend people read the write up here

http://daringfireball.net/2008/05/spaces

There is no way to unsubscribe people from Roller, so closing this thread is also the polite thing to do for them.

Thanks a lot everyone for your comments. And thanks Apple for getting to doing the right thing in the end.

Posted by Henry Story on June 09, 2008 at 11:53 PM CEST #

Post a Comment:
Comments are closed for this entry.
About

bblfish

Search

Archives
« April 2014
MonTueWedThuFriSatSun
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
    
       
Today