WinFS, WinFS, WinFS *blam*permalink
I am so tired of hearing about Longhorn. It’s a shame that the blogs that are updating most frequently in the last few weeks are the ones from the .NET-praising crowd. Information addiction can be a painful thing sometimes. My inspiration for this rant comes from this article.
Anyways, I hate to burst everyone’s bubble, but it seems like all of the arguments I’m hearing were made a few years back. What was that technology again? Oh yeah, XML.
Let me quote some of ozzie.net’s points here:
No - the “big deal” about WinFS IMHO isn’t “search”. Like Web Services - it’s about the fact that it’s an attempt to get a higher level of interoperability between programs through agreement on schemas.
Hrm. Sounds a little familiar, eh? Yep - that was what we were saying about XML. Now, I’m not putting XML down. It’s a great tool and I love it (and use it often). But how much agreement have we got on schemas? Look at the example mentioned in this article: RSS. I can’t even get my feed to validate with a .dtd reference in it. Each RSS feed-reader needs its own set of hacks to ensure that it can read every RSS page out there. XML is even an open standard, too! I’ve been in the Oil & Gas industry through the entire lifetime of the XML revolution and I have yet to see a strong common schema emerge. I can’t speak for other industries, but does the phrase “yeah it’s nice, but we need something just a liiiiiiiitle bit different for our data” sound familiar?
Agreement on common formats and protocols can yield powerful network effects and unintended positive consequences: this is already quite apparent in how people are beginning to leverage Amazon’s Web Services…
Now if there’s anything Web Services has taught us, it’s that each vendor will describe their own Web Services API. The real benefit of Web Services is that it’s easy to “consume” them. How many companies use Amazon’s Web Service API? Hmm…. Oh yeah, one. How many companies use the same Google’s Web Service API? One! See a pattern here? The only thing common here is that they use Web Services and SOAP. It’s a If-We-Want-To-Communicate-I’ll-Use-Your-Schema sort of thing and When-I-Want-To-Communicate-With-The-Other-Guy-I’ll-Use-His too.
I hate to let everyone in on a secret here, but the only way two systems can communicate is if they agree on a common format and protocol. Nothing special here.
I’m sure Microsoft can define a couple of schemas for the “easy things”: address book contacts, images, music and video files, but what good will this deliver for us? Perhaps we might benefit slightly from uniformity with a single standard instead of vCards, EXIF and ID3 tags, but I can’t see how calling the WinFS APIs is any different than calling the vCard/EXIF/ID3 APIs directly.
Another question: why isn’t Microsoft driving these common schemas though a common standards body? Yet Another Windows-Specific Format?
Longhorn still doesn’t solve the problem that many of the relationships between our data objects are human-based. Some relationships are specific to a single individual. Human names are so context-specific that it’s virtually impossible to describe links using this attribute. But what else do we have in some cases? How does the record executive get his contact for “Marvin Gaye” to link to a list of albums and lyrics, while ensuring that my friend Marvin Gaye’s address isn’t associated for any of the same things.
Or the mobile client for Siebel, SAP, Great Plains, or salesforce.com, with all client-side data now open and available to VARs and other solution developers?
Yeah right. Just like XML has allowed me access to the proprietary data of each application I’m using. The existance of an open data format doesn’t mean that your favorite (or mission-critical) application stores its data in the open! I’m sure that all that raw, unfiltered, proprietary data within Microsoft Encarta is itching to get out.
This brings me to my final point - what use is the data on my WinFS drive if it can’t interoperate with my Linux box. Yep, that’s my Linux box. Next to my Windows 2000 box. The Linux box that I do all of my word processing/spreadsheeting/surfing on. What I see in WinFS is the Windows-centric design philosophy: everyone is using Windows, so we can just assume that all of their data will be somewhere in the Windows domain!
I’ll conclude with this juicy tidbit from ozzie.net:
And in each case, the designer ended up saying “now that we’ve invested in this framework, let’s offer it as a platform so that other developers can plug in their own modules and custom schemas, and a powerful ecosystem will naturally emerge!” But it hasn’t happened. No single framework has achieved PC-like or browser-like ubiquity; as powerful as they are, these environments have and will likely remain islands of function and islands of users.
Unfortunately, I don’t see how WinFS and Longhorn are any different than any of these other frameworks.Read full post