Joe Gregorio has a new blog post entitled Longhorn versus the light of day where he makes some valid points about three of the major technologies mentioned at the Microsoft's Professional Developer Conference (namely Indigo, Avalon and WinFS) such as the fact that they are anything from two to three from shipping then it'll be a number of years after that until they're usage is widespread enough to make a significant difference. However he claims that the technologies aren't even worthwhile specifically he states
Three major components, all useless in their own right, now stacked together on a shaky foundation to make an even more useless heap.
Now this statement doesn't seem to jibe with any of the opinions I've seen of people who actually develop for Windows and have heard of the three aforementioned technologies. Below are my one sentence summaries of all three
-
Avalon: A set of new UI widgets for the operating system and a managed programming model for accessing them.
-
Indigo: The next generation of DCOM except this time it is built on open standards and will interop with any platform with an XML parser as opposed to the old days when it was mainly a Windows<->Windows thing.
-
WinFS: A consistent way to add and query metadata to files.
As a hobbyist Windows developer who's built a Windows rich client application using C# (i.e. RSS Bandit) all three of the above are very useful advances.
- Avalon: Now I can actually build a rich UI in C# without (a) having to use P/Invoke or COM interop to talk to native Windows widgets or (b) using a third party library that uses P/Invoke or COM interop to talk to native Windows widgets. Currently for RSS Bandit I use both and the free third party UI library I was using (the Magic Library) just went commercial ($200 a pop). I don't see why after paying money for Windows and Visual Studio I still have to cough up dollars or jump through hoops before I can build a UI with dockable Windows. Anything Microsoft does to remedy this is a good thing as far as I'm concerned.
- Indigo: RSS Bandit already uses Web Services to talk to servers, for instance I use for subscription harminization where I can post my feedlist to my dasBlog weblog I talk to the ConfigEditingService it exposes. However there is a lot more that I'd like RSS Bandit to be able to do when communicating with weblogs such as query what services they support (i.e. WS-Policy) and then when communications occurs doing so in a flexible yet secure manner (i.e. WS-Security, WS-SecureConversation and WS-Authorization). Indigo will give me all this stuff as operating system facilities and they will interop with any platform where an implementation of these specs exists.
- WinFS: The most frequently requested feature for RSS Bandit is for the ability for users to search the feeds they've downloaded on disk. Currently I have two choices here, store all the XML in objects then loop over them to perform searches or store them on disk as XML then fire up an XPath engine which loops each directory and queries each file. The first is fairly memory intensive while the second is slow. I suspect SharpReader does the former
second which explains why people regularly complain about the fact that it sometimes uses over 100MB of memory. With WinFS I'll be able to do the latter and stuff like performant query will be handled by the OS and the metadata to search against will be added by RSS Bandit.
Even as a hobbyist developer working on Windows technologies, all three of the technolgies Joe Gregorio calls useless will be of use to me. I can only assume that Mr. Gregorio is not a Windows developer which would explain his point of view.