Of course, that title is a play on Joel's api war post a few years ago but it seems fitting. Last week was a veritable bonanza of Microsoft beta's, alpha's and futures with all the "news" coming out of MIX07. To be honest, I'm not so sure what to make of all this stuff, heck in many ways I'm still back here. It seems Redmond has one-upped Google by putting out alpha software and beta software with "Go Live" licenses. How long will it be before we see alpha software with a "Go Live" license? Are we to believe businesses today are betting their future on all of this pre-release code?
Will there ever be some sort of stabilization period where apps can mature and the technology settles into a known state where developers are comfortable about the foundation from which their working? I suppose that's the Win32 system referred to in the following quote from the article on MSDN titled "Top Ten UI Development Breakthroughs In Windows Presentation Foundation":
"The current Win32-based Windows UI graphics subsystem, found in Windows® XP, has been around for nearly 20 years. It's aging and limited, and as a result, user interface development has been somewhat, well, constrained at best."
- MSDN Magazine January 2006
Is that implying that the new Office 11 Ribbon UI is "constrained? Ah, but it's not .NET so it must be constrained. And what about Vista's fancy new albeit unmanaged UI surely that must be constrained right? Btw, where is Microsoft's developer support for the new Vista UI? That's not due to arrive until Orcas ships. Didn't the MFC guys know when Vista was going to ship? Or was it that it just didn't matter until recently?
It's almost as though the Microsoft factory is stuck on hyperdrive. They're competing with Linux, Apache, PHP, Flash, Eclipse, Java, Oracle/MySQL/DB2/etc, Google, Mozilla, Open Office, MySpace, Yahoo and over the past 12 months have released betas in nearly all of these areas.
But what does this mean? That seems like some technology for the "real world" where the abandoned VB6 developers are struggling to move their applications to .NET enough so that perhaps "one form at a time" might be a bit better pace. I almost feel bad for the VB6 guys since it has to be difficult deciding which direction to go when faced with rewriting your apps. Staying with Microsoft tools will undoubtedly mean moving to .NET and seemingly lots of change in the coming years which I'm sure has been causing some headaches. It makes me wonder how many of these guys know that there are tools that value compatibility while still moving forward.
Does anyone know what will really happen to WinForms with WPF being touted as the new UI for Windows? Will there be an Interop WPF toolkit available to move your WinForms apps one form at a time to XAML/WPF?
And checkout this smorgasbord of pre-release/beta/CTP software you'll need just to get you started with SilverLight (formerly WPF/E). If you've ever gone down the path of installing CTP's I'm sure you know the hassle that can be.
Oh, I almost forgot, what about those 7000 new API's in Windows Vista?
The sad thing is that I'm actually interested in several of these technologies but the field is increasingly looking like the slide from Stephen Colbert's The New AT&T (see about 50 seconds into the video). I've been trying to keep up though it seems a lost cause with each passing day I'm falling further behind.
What about you, how are you dealing with all of this? Or are you dealing with it?