I was one of the lucky souls who saw the only public demonstration of Microsoft's object-oriented file system, code-named Cairo, at the 1993 Professional Developers Conference. A decade later, in a column entitled "A Tale of Two Cairos, I reflected on Cairo's historical context and the modern context into which its successor, WinFS, would emerge -- which was, of course, the Web. Here's what I said three years ago:
"[The Web] is an ecosystem whose social and information structures co-evolve. Innovation bubbles up from the grassroots; integration can happen spontaneously; relationships cross borders. Cairo Version 1 wasn't designed to nourish that ecosystem or to flourish in it. Let's hope Microsoft remembers the past and avoids being condemned to repeat it with Cairo Version 2."
On June 23, WinFS Program Manager Quentin Clark announced that the product, already withdrawn from Vista, was now also aborted as an XP/Vista add-on. The following Monday he added that WinFS technologies will migrate into future versions of Microsoft's premier database engine, SQL Server, and its data management class library, ADO.Net.
Technology pundits love to pronounce things dead, and sure enough, "WinFS is dead" became a favorite tech meme. I've learned to take these pronouncements with a grain of salt. Sun blogger John Clingan once recalled how Byte's 1990 cover story, "Is Unix Dead?", prompted his girlfriend to say: "Uh oh, are you going to have a job next year?" Of course he did, and noting that it was ultimately Byte, not Unix, that died, Clingan made a modest proposal: Analysts should be held accountable for their predictions. I agree. And although I've blundered in the past, most notably when I evangelized NetNews as a platform for what we now call social software, I've often been right. Java's future really was in servlets, not applets; peer-to-peer technologies really did matter; scripting languages really are important; tagging really does work. And last but not least, WinFS really did, and still does, need to embrace the Web.
The central premise of WinFS, as originally planned, was embodied in its notion of relationships. Because these were first-class constructs in the database, you would be able to answer questions such as, "Where are the recent documents related to project X?" The relationship here between documents and projects can exist because documents and projects (and people) are formally represented as first-class constructs in the database. But where do these constructs come from?
Relationships among items begin as relationships among people that form in fluid and ad-hoc ways, across platform boundaries, mediated by open protocols. I find things mostly by recalling who, and then by searching e-mail and the Web -- ideally aided by tags -- to discover what and when. Designed in the waning days of personal computing, WinFS failed to acknowledge the emergence and transformative power of social computing.
If there must be an epitaph, let's write it for personal computing rather than WinFS. What Quentin Clark calls the "object/relational/XML trinity" of data management technologies can still bear fruit --- if they're cultivated on common ground. Six months ago I'd have doubted that could happen. But now that Ray Ozzie has announced Simple Sharing Extensions for RSS, demonstrated LiveClipboard at ETech, and inherited Bill Gates' old job as chief software architect, I'm thinking maybe it can.