Months ago Joel Spoelsky wrote about the API wars and how MS is losing them. While I felt that Joel
was mostly wrong some software is effectively being left behind.
While .NET has brought great advances in the platform API accessibility notably most Windows desktops apps
are being left almost untouched by the much welcomed .NET (r)evolution. Some time ago I mouned about Outlook; that
is being addressed by a late inclusion in VSTO, even if IMHO the update in the OOM (outlook Object Model) does not go
far enough. What I'd like to see is the possibility to have e.g.
a programmable MAPI pipeline ie. being able to easily intercept incoming messages by adding rules for spam detection, classification and other
a provider pattern for archiving/publishing mails to a persistent store (SQL Server, NTFS, Sharepoint, ...)
Another app, part of Office, is Access. While it is not one of the most strategically important apps it has
this unique appealing combination of a DB and a GUI, which has helped many hobbists getting into proper RDBMS.
While I surely don't rate it as a "enterprise" DB, it offers anyhow a convenient persistence store for many
desktops apps. Therefore I don't understand why no effort was made to get .NET to run in it, perhaps by
abstracting the code running engine to keep the existing VBA running and adding the necessary .NET support.
Other two apps which need desperately some rework are the MSN Messenger and IE.
While the first one is still very COM based and allows some customization, the IE browser needs desperately
to expose better .NET API both for it's own sake, but also to fend off competition by Firefox which has already
tens if not hundreds of plugings. While it is true that OS client programming hasn't beeh fashionable in the last
several years, but also why not take advantage of 700 milion + computers running it. Even IE like Outlook needs to get a .NET friendly
programmable "pipeline", to e.g. allow a .NET plugin/proxy like pre-check an URL before rendering it in the browser
or just plain simple applications safely taking advantage ot the browser bar's real estate.
IMHO, fixing up the .NET programmability of these 4 client apps would be more than welcome to many developers
wanting to add some cool little apps to the desktop and generally broaden the appeal of Windows and Office to developers
and end users alike.