Spring has sprung: a new desktop era for the Mac?
Objects über alles
We all know what's wrong  with personal computers, and we must all at some time despair at the lack of imagination of modern UI designers, who offer us ever more creative ways of futzing.
These 2D desktop architects started from what Neal Stephenson called "massively promiscuous metaphor-mixing" [download here ] ... i.e., sticking my document on my window sends it to a folder? - and went downhill from there. The Mac's spatial desktop fared best, because it was the most consistent to being with, but there really hasn't been a major advance in twenty years.
Well, rejoice. Spring is here early, and while this new desktop environment for Mac OS X isn't nearly as original as its author and principal architect Robb Beal would like to think - the ground-breaking DesktopX has ploughed a similar furrow on Windows for a couple of years now [see Microsoft's Cairo reborn as killer eye-candy  [June 2000] - it's nevertheless a bold and beautiful in its own right. And if you're an OS X user, you should scoop it right now.
Spring has sprung
What Spring (Mac OS X only) does is what we wish Apple had been bold enough to do with OS X, and make a really radical departure from the 2D file/folder office automation metaphor of the 1970s into a more loosely structured and spontaneous UI more appropriate to an always-connected world. Even when I'm connected by a 20kbps piece of wet string, via GPRS - I use very different software. These days Google makes software more important to me than any "office suite". But it doesn't give me what I've always needed - and only Mitch Kapor's Lotus Agenda has ever come close - which is an ad hoc database where you define relationships on the fly. (Agenda is being revived as an open source PIM Chandler  ); Of course you can do this with a conventional RDBMS. Agenda and now Spring make it easier and prettier.
DesktopX and Spring, are like the OpenDoc and Cairo before them, and like Agenda, and like w-way back - PARC Smalltalk, and Lisp and Pick hardware before them, the designers are looking for a machine that can walk on its hind legs. Computers are tools, but they get in the way much of the time. It's an accident of history that we've ended up using massively wasteful x86 processors and silos of data in incompatible formats, and I'm sure Lisp-powered Martians will, if they ever materialize, find this all hugely amusing.
("Ha, ha! A most primitive people - they peel potatoes ! … They have lots of separate programs! They can't find anything!")
But that's the way it went, so let's see how they're gonna fix it.
Evolution baby, makes your heart strong
Spring doesn't take over your desktop, it's a multi-window information organizer. Like DesktopX, it uses icons as representations to make connect ions (but not transformations) using the underlying plumbing. For example, you can join a person icon to an AIM session by linking them. This seems a tedious way to do a chat, which you already know how to do, but what if that person has a birthday coming up, or needs to be kept up to date with a set of files. Here, the 2D metaphor breaks down, and where a more flexible and spontaneous filing system (we use the term in the loosest sense) should offer some interesting possibilities.
Spring gives you a variety of panes, with object inside them that can be grouped. These can tap into the underlying infrastructure - the OS X address book, or AIM, or iTunes, or the Sherlock web services client - thanks to the much underrated power of AppleScript. It's exceedingly well done and Spring offers you a way of organizing your life, and files, as you wish.
Spring's designers cite a few examples: using Watson to create "Visual Amazon" objects, one-drag flight booking, and mapping people and places.
In a neat integration trick, you can pull objects - such as people - off a webpage and onto your "canvas". Like Stardock's DesktopX, it's community oriented - Spring has an "Object Garden" - and it also has "grouping" it calls layers, but there are important differences.
DesktopX was designed to achieve similar goals, only using the COM object plumbing that's in every Windows system. DesktopX users can automate their applications using simple scripting to tap into this. It's easy as creating a blank object, and giving it actions to respond to. It's like a Visual Basic for the system, and a very familiar development environment for developers and novices alike.
DesktopX scores on raw functionality and flexibility, too. It's all but a true IDE. However, Spring has tapped into the existing Mac services and exposed very specific functionality which is extremely useful.
Spring doesn't try and take over the Mac shell. DesktopX, although it runs on top of explorer.exe - has greater potential for specific applications. You can run DesktopX in a kind of "kiosk" mode, which it gives it much broader commercial reach. You can make a kid-safe Windows that looks like a playpen, if you wish.
DesktopX is rare in eschewing icky New Age metaphors, and that's a plus. Inventive personal software designers always seem to overreach with their choice of metaphors. Remember how Lotus Agenda was a "spreadsheet for the mind"? Well, Spring comes with a "Tao of Spring", suggesting too long spent in the hot tub.
The next challenge for Spring is to make searching by content as deeply integrated into the experience as other functions. Here, attributes would help. It shouldn't be difficult to tap into the Mac's FBC engine, but searching for "people and people-related objects" is trickier.
If these two projects sound similar, it's not by accident. Both pay their dues to the object wars of the early 1990s which if you remember, pitted Microsoft's Cairo against the OpenDoc coalition of Apple, IBM and Novell. Say, you don't remember? You got off lucky. For an interminable age, the object wars filled the trade press to the exclusion of almost everything other than pen computing, and then, as now, it was an industry in recession looking the next wave to carry us to great riches.
But the two camps lost interest, mutually, at about the same time. Microsoft was blindsided by the Internet, and had to catch up fast. So it slung the Cairo PowerPoints overboard. At the same time, OpenDoc was under pressure of mundane financial realities: Apple and Novell suffered catastrophic financial results, with Apple's market share collapsing, and with OS/2 going down the pan, IBM concluded there was no longer a viable alliance, and mothballed its side of the party; SOM objects and all.
The object war still filled the trades in 1995, but by 1997 had been all but been forgotten.
Spring captures the zeitguest, however. Expect to see Clay Shirky dust down his "P2P/blog/blank as revolution" essay once again. Expect to see lots of self-serving posts mentioning "Cluetrain", "weblogs" and "revolution". But the software is strong enough to survive being lauded by the bullshit circuit.
It's got style and imagination, makes great use of Cocoa, and the worst you can say about it is that it's fun. Give it a roll. ®
"We need to establish OLE protocols as the way rich documents are shared on the Internet" - billg. [a 1998 gem]
 Windows on a database - sliced and diced by BeOS vets [Benoit and Dominic, with minimal intervention] 
Kapor's open source 'spreadsheet for the mind' 
DesktopX goes public 
Microsoft's Cairo reborn as killer eye candy