Round 8: Third-party software compatibility
When Microsoft first started marketing its next-generation desktop OS project (Vista), it trumpeted a number of foundational
technologies that were destined to usher in the next wave of killer applications. Some, including WinFS, fell by the wayside.
Others, including Windows Presentation Foundation (WPF) – which was quickly back-ported to Windows XP when developers balked
at the idea of Vista exclusivity – have proven to be nothing more than the extensions to the .Net Framework. In fact, when
Microsoft made these pronouncements, those of us "in the know" (software developers and programmers familiar with the intricacies
of .Net coding) had a good laugh. Nobody in their right minds would produce any complex piece of traditional, fat client software
using the sluggish, bug-ridden .Net Framework, let alone a set of even buggier and less proven extensions.
A year later and you'd be hard-pressed to name a single commercial WPF application. In fact, I can't think of any third-party applications, outside of a few DirectX 10-specific games, that run better on Vista, never mind requiring it. Whenever Vista-specific development work has been done, it's usually been to fix problems created by the introduction of UAC. I personally spent several hours in Microsoft's compatibility lab at last year's TechEd conference working out UAC kinks that were affecting my own applications. In such a climate, where Vista is the outsider and represents a tiny fraction of the installed base, targeting it exclusively is tantamount to committing commercial suicide.
New applications that do ship are still typically native Win32 applications, written in C++ using tried and true technologies such as Microsoft Foundation Classes (MFC) or Application Template Library (ATL). This, for better or worse, is the state of third-party development for the foreseeable future. And, of course, these applications all run great on Windows XP, and will continue to do so for a long time to come.
Decision: ISVs go where the money is, and right now that's still the generic Win32 API (plus MFC/ATL) running on the range of Windows platforms. The only exceptions to this rule are tools or utilities that target Vista-specific functions such as the new boot loader and sidebar widgets. The risk of missing out on important third-party application functionality by sticking with Windows XP is next to nil.
Round 1: Security
Round 2: Manageability
Round 3: Reliability
Round 4: Usability
Round 5: Performance
Round 6: Hardware compatibility
Round 7: Microsoft software compatibility
Round 8: Third-party software compatibility
Round 9: Developer tools support
Round 10: Future-proofing
Talkback
E-mail
Printer Friendly
Reprints




