What? They cut WinFS??


There has been a great deal of hubub about what Jay Greene’s BusinessWeek article means for Longhorn, and WinFS in particular.  I’ve been surprised by the general silence on MS blogs on this topic – which is perhaps an indication that I ought to be careful myself ๐Ÿ˜‰  But let me throw caution to the wind and get to the punch line: I, from my vantage as a Longhorn Evangelist, haven’t seen any changes that significantly impact anything we’ve said at PDC, or since, about the WinFX platform.  You won’t see me editing my slides, changing my talking points, or cutting back my demos, because the message about WinFX’s capabilities hasn’t changed.


 


The line that got everyone thinking was Jay’s comment that.  “The current plan calls for the file system to work on PCs but not extend to files shared over a corporate network.”  Note that although he writes this immediately following a quote from an internal mail, this sentence is not in fact a direct quote – it’s Jay’s interpretation.  MaryJo Foley picked up the thread, and added her own interpretation that Microsoft is “holding off on allowing WinFS to work over a corporate network”.


 


Scoble weighed in here and here.  But I haven’t seen any other MS comments on this (and Technorati is no help).  The article is clearly causing a lot of confusion, as evidenced by the customers who have been writing to me over the past few days asking for an explanation.  Part of me wishes we’d just publish the entire text of Joe Peterson’s original email that Jay drew from, as well as the latest data on what’s changed in the platform.  But someone above my pay grade will have to make that decision.


 


Instead, let me tell you about what I learned about changes to the platform recently.  My blog has been quiet the past few weeks because I was working on assembling a presentation for Jim Allchin, Senior VP of Windows.  As it so happens, the subject of the review was an update on WinFX platform capabilities, with a specific eye towards whether anything we discussed at PDC might have been cut since then.


 


Understand, of course, that it wouldn’t be a big surprise if things we showed at PDC in October ’03 weren’t in the final product when it eventually ships in…whenever.  Anyone who’s worked on a software project knows that the only thing you can say about a pre-Alpha release like the one at PDC is that it’s guaranteed to change before RTM.  And it wouldn’t be the worst thing in the world to take a serious step back, realistically evaluate what could be built and shipped in the next two years, and just focus on that.  That’s how you ship software.


 


But the good news is: I found that the vast majority of the WinFX technology we showed at PDC is still on track.  I had conversations with product team leaders around the company to try to ferret out any recent cuts.  We also just had a week of quarterly Longhorn Reviews, where each team presented their latest plans, including risk items, to the leadership team.  And having gone through all that data, my conclusion is that the platform we showed at PDC is intact.


 


WinFS hasn’t been cut.  WinFS hasn’t even really been scoped back.  Hillel showed an amazing demo at PDC of using WinFS to build a new document experience in the shell – real time word-wheel filtering, dynamic queries and organization (aka Stacks), the CaseBuilder demo showing off relationships between items, and more.  These things are all on track.  Take a walk through the WinFS talks from PDC.  Are we still building an extensible synch architecture for bringing data from remote servers into WinFS?  Yup.  Will we have a default synch adapter to help one WinFS machine talk to another?  Yup.


 


Two questions might come to mind.


 


First is: what were Jay and MaryJo talking about when they said WinFS wouldn’t work over a network?  I’m not entirely sure.  We’re talking about one sentence from a sidebar, written by the same guy who was no doubt focusing his energy on the cover story he wrote for the same issue of the magazine.  Perhaps that line got mangled, or he meant to say something else, or he just misinterpreted some snippet he saw in an email somewhere.  I went back and read the Joe Peterson mail of March 19 that Jay quotes right before his WinFS corporate network quote, and the only instance of the string “WinFS” is in the paragraph where Joe talks about the core pillars of the release remaining the same.


 


It’s possible that Jay had some confusing information about Longhorn Server – a product whose feature set, particularly around WinFS, has not been the subject of any public comments that I know of.  We recognize that for WinFS to be really interesting in the enterprise, it needs to be able to scale up to a server environment.  And we know that the Longhorn client version of WinFS is not optimized for that kind of scale – it’s tuned for client scenarios instead, which makes sense.  At PDC, I think we were consistent in saying that there are set of interesting enterprise scenarios which won’t be enabled until Longhorn Server comes out, and we’ll talk about the specifics of that product when we have a firm plan in place.  I suppose you could hear that statement, and end up deciding that WinFS won’t work over a corporate network, but it’s the wrong conclusion to draw.


 


OK, so the second question that might come to mind is “well, is there anything that you did cut?”  The answer is yes – features get cut all the time in a software product.  We’ve had two milestones since the PDC build, which means two opportunities to find features that weren’t working as expected, or couldn’t get the right performance level, or otherwise proved to be untenable.  But the scope of these cuts is so small that it’s barely worth mentioning.  I really wish we’d just publish the whole darn list to stop the speculation, but since I can’t do that, let me be bold and mention at least a few by name.  I’ll stick with WinFS, because it’s the area I know best (and the team I know best, which means perhaps they’ll be less likely to tell my boss to fire me ๐Ÿ˜‰


 


One feature the WinFS team cut was around how granular you can make schema change units.  Change units are a nice trick to avoid conflicts during item synchronization — by default, the entire item is treated atomically and any change to any property on the item marks the whole item as changed.  But the schema designer can break the item down into sub-units that are likely to change independently, so that only part of the item gets marked dirty.  For example, the designer of the contact schema might make Business Phone and Home Phone distinct change units, since it’s likely that you only edit one number at a time.  By marking them as distinct change units, you can change the Business Phone on machine A, and the Home Phone on machine B, and you won’t get a conflict the next time the two synch.


 


Nice feature – and it’s still shipping.  What’s gone is the ability to divide complex properties (aka nested collections) into their own sub-units.  By way of (an oversimplified and not accurate with our actual schemas) example, while Age might be a simple Integer property, Name is likely a complex property that actually includes Name.FirstName, Name.LastName, Name.MiddleName, etc.  The cut is that you can’t say Person.Name.FirstName is in a separate change unit from Person.Name.LastName.  You have to put all of Person.Name in the same change unit.


 


Raise your hand if you knew this was a potential feature.  If your hand is up, put it down unless you planned on using it.  Still up?  Put it down unless the absence of this feature impacts your ability to use WinFS.  If your hand is still up, let me know and explain your scenario.


 


Another “feature” that’s been cut: it looks like one of the internal schemas, for natural language user interface, has been dropped.  I gotta say, I’m not even sure what this thing was used for in the first place, nor how a 3rd party developer might have benefited from it, and it’s something that has come up exactly zero times in my discussions with developers over the past six months.  Again, if you were counting on this, let me know why.


 


I hope that gives you an idea of how things are changing — and staying the same — in WinFX.  The teams are looking at trimming out the features that might effect performance, or significantly increase the test burden, or other factors that might unreasonably delay the release of the product.  But everyone is committed to keeping a viable platform with compelling new functionality for developers, and I’m feeling really confident that they’re making exactly the right choices.

Comments (32)

  1. Thanks for helping to clear the confusion! Your hypothesis on the "no networked WinFS" certainly seems plausible.

    I do hope that you guys figure out a decent way to persist non-native WinFS metadata (the kind that isn’t just indexed from the original files) to non-NTFS file systems, be it via DESCRIPT.ION-style, per-folder exports or whatever, otherwise backup to standard CD/DVD media will be difficult.

  2. Thank you for a clear explanation of what happened. Great job utilizing blogs for exactly their purpose: to use human voices to cut through the BS in today’s media and PR.

  3. milbertus says:

    Thank you so much for posting this. I have Feedster feeds set up for both "Longhorn" and "WinFS", and you wouldn’t believe how many items have come down which say (to paraphrase), "WinFS has been cut from Longhorn". Just reading the original article carefully will show that isn’t the case, but it’s even better that someone at MS can publicly say that WinFS is still in Longhorn.

  4. Ray Schraff says:

    THANKS for responding so quickly.

    I concur with Robert McLaws…a great example of why blogs are critical communication channels for corporations.

  5. Dylan Greene says:

    Has anybody written letters to BusinessWeek asking them to print a correction? The article on the web surely could be changed.

  6. For the record: You might have missed this story (http://news.com.com/2100-1008-5183385.html): we spoke to Jim Allchin a few weeks ago (before the BusinessWeek story appeared), and he mentioned "minor" features being cut from Longhorn, but nothing about WinFS/network capability, etc.

  7. Douglas Husemann says:

    Jeremy,

    Ok I will say I had and Idea of the Potential of the feature with the Name. Ok so now my arm hurts.

    Although I could use a feature that allows for the Unit change over time in a name structure. (genealogy) not sure if it is best to tie the relationship of the structure to an event. and then have the name be tied to it.

    Christianing for example would be where in some cultures that a Name is assigned. In other areas a birth event. Marriage usually causes a the womans name to change (last name for instance)

    Will have to think more about it. as events can cause a name change to occur but is it a full name change or handleing instance change.

  8. Michael says:

    Question regarding "backwards compatability" and distribution of WinFS objects.

    Jeremy, my question is this: Say I have a Word document that has some extended metadata, perhaps describing what Client/Project the document is related to…

    …if I email this document to a colleague of mine (within the same network), do these properties persist or are they native to my instance of Longhorn?

    I guessing this sort of relates the the way the WinFS would behave in a collaborative/networked environment. I can certainly see the personal benefit of being able to describe files and search for them based on such attributes – but the collaborative nature of today’s computing environment should demand such persistance. What are your thoughts on this?

  9. What? says:

    "One feature the WinFS team cut was around how granular you can make schema change units. Change units are a nice trick to avoid conflicts during item synchronization …Nice feature โ€“ and itโ€™s still shipping."

    Was it cut or is it shipping.

  10. n4cer says:

    "Was it cut or is it shipping."

    Both.

    The feature is shipping. It just won’t be as granular as the initial version.

    From the post:

    "Whatโ€™s gone is the ability to divide complex properties (aka nested collections) into their own sub-units."

  11. Didactic Grammarian says:

    Last paragraph …

    There is a difference between "effect" and "affect". You EFFECTively chose poorly ๐Ÿ˜‰

  12. BLR says:

    Douglas: the feature that’s been cut is irrelevant in your example. The probability that two parts of the name will be quasi-simultaneously changed from two different places is very small. So conflict would be really exceptional.

  13. What? They cut WinFS?? — sounds like maybe WinFS hasn’t been scaled back much, tho this posting is pretty vague about how it works on legacy media and networks (a reasonably hard problem). It certainly hints that WinFS will work…

  14. Scoble claims Jeremy Mazner clears up the WinFS confusion. Read his post and see if you agree. I’m not confused, but I am of the opinion that WinFS has been cut back, despite both evanglists’ protests to the contrary…

  15. There has been a great deal of hubub about what Jay Greene’s BusinessWeek article means for Longhorn, and WinFS in particular. I’ve been surprised by the general silence on MS blogs on this topic – which is perhaps an indication