Microsoft At War With Self
Last year, Joel wrote a widely read post on “How Microsoft Lost the API War,” concluding…
Much as I hate to say it, a huge chunk of developers have long since moved to the web and refuse to move back. Most .NET developers are ASP.NET developers, developing for Microsoft's web server. ASP.NET is brilliant; I've been working with web development for ten years and it's really just a generation ahead of everything out there. But it's a server technology, so clients can use any kind of desktop they want. And it runs pretty well under Linux using Mono.
None of this bodes well for Microsoft and the profits it enjoyed thanks to its API power. The new API is HTML, and the new winners in the application development marketplace will be the people who can make HTML sing.
Last year, I attended a Dev Days conference, focused on Smart Clients, which are network-aware desktop applications that provide many of the advantages of web applications, such as automatic-updating, simplified deployment, and offline caching.
Smart clients are the precursor to future WinFX applications that eliminate much of the distinctions between Web and desktop applications. ClickOnce applications provide web deployment, automatic updates, and security. Avalon Express applications add richer installs, richer presentation, navigation, and others.
It seemed that in the battle for the hearts and minds of developers, Microsoft and rich client development was leading with upcoming Avalon and Indigo APIs. (It’s not entirely clear, since I don’t know if Avalon Express applications also supports the traditional browser model of pulling new pages from the server.).
Now, Scott Guthrie of the ASP.NET team announce the Atlas initiative, which attempts to integrate rich clients and thin clients from the other direction—offering rich desktop capabilities and caching to web applications. If so, Microsoft is preempting the Internet insurgency and there isn’t really going to be a war.
Blurring the line further, Atlas also makes some of its services available to Avalon applications, such as the Client Building Block. In fact, in this year’s PDC, ASP.NET moved from the web track in 2003 to the client track alongside Avalon.