Huddled Masses
You can do more than breathe for free...
Browse: Home / The Developer View: Why Vista

The Developer View: Why Vista

By Joel 'Jaykul' Bennett on 02-Jan-2007

In the midst of all that’s going on this week, being the first week back at work this year, as well as the end of Winter Break for school, and really the first week of 2007 — the first week of the year I expect to finally finish this Masters of Computer Science I’ve been working on for several years … I’ve been doing some reading, and some thinking, and suddenly this morning I had a tiny spark …

I suddenly saw how Vista is going to be(come) important, and how it can be the tool that (once again) deflects the latest “thin client” attack on Microsoft’s dominance, and could keep powerful PCs on the desktop.

This latest thin client attack has come in the guise of the so-called Web 2.0 model of almost (but-not-quite) rich-interface web applications which some people think are threatening to dethrone even the king of all rich client apps: Microsoft Office. If those people are right, Google Mail or Zimbra could upset Exchange, and Writerly and the like could one day overthrow Microsoft Office’s hold on business users … there’s even been some speculation that Microsoft’s “Live” initiative could be a play to get into that space.

Now, although I know that some people are still speculating that Ray Ozzie has something up his sleeve that will ultimately lead to some sort of “web operating system” ... I’m quite comfortable predicting that this isn’t going to eliminate a next version of the desktop OS, but rather, depend on it.

Lets take a short break here to look at what’s new for developers in Vista.

  • There’s .NET 3.0, which is really just .NET 2.0 with the addition of:
    • Windows Presentation Foundation – a revolutionary way to write rich user interfaces in Windows, which includes standard UI portions as well as media and documents, and produces scalable vector graphics in three dimensions with full hardware acceleration in the main Windows UI (that is: there’s no need to use a special OpenGL or Direct X surface, no need to go full screen … it’s hardware accelerated automatically.
    • Windows Communication Foundation – a framework for the development of … distributed applications (when you read that, you should think SOA and WebServices, but not Web Apps). This includes PeerChannel, and support for the new Network Location Awareness, PNRP, and IPv6 …
    • Windows Workflow Foundation – this is, frankly, “just” some background stuff to help developers write business process and workflow oriented apps faster and with clearer adherence to “The Process.”
    • Windows CardSpace – Wait, it’s not a foundation? Cardspace is about identity management. This is going to be either a huge, big, groundbreaking change in the way we handle filling out forms and giving companies and individuals access to our personal information … or it’s going to vanish so thoroughly that 2 years from now when someone mentions it you’ll say: “Isn’t that the follow on to that Passport thing?” To me, it looks like a huge ground breaking thing. In .NET 3 it’s just an implementation of some specifications, but the the specifications are supported by all the right people, and this could be the federated identity scheme that we’ve all been waiting for. There’s already a Firefox plugin.
  • A new ClickOnce).aspx

  • There’s a Transactional File System and Registry.
  • There’s an amazing overhaul of the Event Logging System and Task Scheduler which is now properly scriptable and can fire more types of events (like sending an email) — and the two are tied together, so schedules can be based on event triggers.
  • Vista has some new interfaces for enumerating networks, or network connections which provide information such as authentication levels, and connectivity, and there are events for connection and disconnection which allow multi-state apps to easily rely on data caching, and postpone data transfers …
  • Vista’s Restart Manager is a great improvement, allowing updates to shared files, and the Application Recovery options are much improved.
  • Vista has a boatload of enhanced search abilities available to applications available to apps via a simple SQL/OLE/ADO -like interface, with a much improved indexing mechanism (which can still be extended easily using IFilter extensions).
  • On top of the peer-to-peer features, Vista also has an RSS Platform for which killer applications (and uses) have yet to be developed, but which works well along side the peer-based publish/subscribe model.
  • The XML Paper Specification is something like what you would get if you imagined PDFs as a subset of the Windows Presentation Foundation (which incidentally is what Apple did with PDFs in Quartz).
  • Vista has most of the Tablet PC features, including the InkAnalysis APIs and the recognition portion of the Speech APIs which now support W3C XML speech grammars and the definition of context-free grammars, and semantic interpretations, as well as drastic improvements in the .NET speech namespace. Maybe once these APIs are available off of tablets, we’ll see enough use of them to make tablets more desireable and bring their price down within reach of normal people. Some of these API’s are pretty useful, even without a “pen.”
  • New APIs for Cryptography, Authorization, and Parental Control …
  • There are virtual folders, which are basically pre-indexed search queries, but which are available for apps to use …
  • And of course, there are Live Icons and Rich Previews and various other ways you can enhance your application

So, wow. That was a fairly long break, and the last couple things on it may provide more work for developers than they do opportunities for clever new features (that is, your application’s files will have to have live icons and rich previews if you want to compete in the brave new Vista world).
However, what I’ve noticed … is how none of this is about the web. Yes, there’s a new version of IE in Vista (well, a modified version of IE7 — with parental controls, naturally), and yes there’s built in RSS support.
But the RSS support isn’t there for the browser, it’s there so other apps can consume it. And WCF is about getting data from web services and other network sources into rich client apps, not into web pages.
There is supposed to be (eventually) a portable (ie: runs on Mac) version of the Presentation Foundation available, but that’s a subset of the full thing (and obviously not hardware accellerated).

All in all, a lot of work seems to have gone into creating a platform for the creation of applications like those of thirteen23, which depend on the network for their magic, but which work very hard to deliver an interface and a look and feel that you can’t really duplicate in a simple web application. That is: Vista is (primarily) a(n excellent) platform for the (continued) development of rich-client applications which will differentiate Vista from Mac OS X and Linux Desktops by their ease of development and by their style. Whether this platform is sufficient to get developers excited about writing rich, WPF-based applications or not, only time will tell. But it seems very clear to me that for the time being, Microsoft is very much in the business of providing a platform for the development of heavy-duty applications, and not ready to morph over to a web applications developer or a thin client solution.

As a side note, one of the other interesting things in Vista is that this inherent peer-to-peer support includes support for distributed computing, which, with network awareness and idle-awareness, may provide a way for enterprising corporations to put the extra processing cycles of these bigger badder multi-core systems to good use…

Similar Posts:

    None Found

| Tagged Rants, Software

« Previous Next »

Lijit Search

Tags

.Net .Net 2008 Scripting Games Automation Bugs Design Development Funny Gadgets GeoShell GUI Huddled Masses Internet licensing Microsoft Modules My Software News Personal PInvoke Pipeline Politics PoshCode PoshConsole PowerBoots PowerShell PowerShell Functions PowerTips Rants Recommender Repository Scripting ShowUI Software Solutions Textile Tips User Group UserInterface WalkThrough WebHosting Windows 7 WordPress WPF Xml

About Huddled Masses

This is web site is dedicated to the musings of Joel Bennett (aka Jaykul) about technology, software, software development, the web, and the world.

Any resemblance of the views expressed and the views of my employer, my terminal, or the view out my window are purely coincidental. The resemblance between them and my own views is non-deterministic. The question of the existence of views in the absence of anyone to hold them is left as an exercise for the reader.

P.S.: I occasionally link to things I think are great. When I do, I occasionally find a "referral code" so I can make a little cash. I promise that I don't link to anything just because of that cash (I wouldn't cross the street for the amount of cash those links bring in, never mind write a whole blog post) ... but I do not promise that things I link to will stay great as time passes, nor that you will agree with me about their greatness!

Archives

  • April 2012
  • February 2012
  • January 2012
  • October 2011
  • August 2011
  • July 2011
  • June 2011
  • March 2011
  • February 2011
  • January 2011

Copyright © 2012 Joel Bennett.

Powered by WordPress and Hybrid.