Leopard Bits: Spaces

Spaces is very well the feature that’s had the biggest impact on my day-to-day use of Mac OS X, even though I was initially unexcited about it.

Spaces is an implementation of virtual desktops. Virtual desktops are essentially duplicates of your desktop. You can switch your view to these other desktops and use them just like you do any normal desktop. If you don’t quite understand yet, just continue to read my explanation of Spaces below.

Probably the greatest thing about Spaces is it’s similarity to another major feature of OS X, Exposé. In fact, Spaces feels like a straightforward expansion on Exposé’s capabilities; along with tiling and organizing windows, one can now tile and organize desktops. This is probably the smartest aspect of Spaces; it takes something that OS X users have been using for two iterations of the OS (Exposé was introduced with 10.3 Panther back in 2003), and applies the same concept to a feature that most users would find inaccessible.

Each one of those 4 rectangles is a desktop with it’s own set of windows. I can easily move to any space by clicking on it (this all encompassing view is activated via the F8 key). Furthermore, if I want to see all of the windows in each space, I just have to activate Exposé.

From here, I can click on any window and immediately be taken to it.

I can also move windows between spaces and they’ll properly re-tile themselves to accommodate for the space they’ve gained or lost.

There’s only one major issue I have with its implementation, that being the way it treats multiple windows of the same app in different spaces. For instance, if I have a window of Safari in Space 1 and I’m in Space 2 with the currently focused app being the Finder, switching to the Safari app forces my view to change from Space 1 to Space 2. In essence, Spaces is dependent on application windows as opposed to being dependent on the individual desktops themselves, regardless of the contents.

The way I’d like Spaces to work is where each individual space works entirely independently of the other spaces. For instance, in the situation above, switching to Safari would cause the application to become focused, but not change my view of the current space. In the case of a one-window app, where no two windows can be the same (e.g. iTunes, iPhoto, or in the Windows world, Windows Media Player and Outlook), calling the window would move it to the current space, accompanied by an appropriate sliding effect.

However, the way Spaces works now, being application-based rather than desktop-based, is more accessible to people who haven’t used such a feature. For more seasoned users of virtual desktop implementations, it makes sense to provide a simple checkbox that changes the functionality to what I’ve outlined above. But even in its current form, Spaces, is a far more usable and solid implementation of virtual desktops than any I’ve used in the past.