With the release to manufacturing (RTM) of Windows Vista, the pressure is on developers to get their applications, old or new, ready to go. Both situations present their own set of challenges and opportunities. Why should you care about Windows Vista if you develop and deliver software? The most obvious answer is you'll be missing out on a large chunk of business if you don't. A second and equally important answer is you won't be able to take advantage of all the new capabilities that Windows Vista brings to the table.
Some companies may be hesitant to migrate; Vista is a major shift in Microsoft's thinking, after all. But there are many resources for new designs, identifying problem areas, and implementing the appropriate changes to help get legacy applications up and running on Windows Vista faster.
Interoperability is a key part of making Windows Vista applications work well. Each of the key foundational pieces works together via an integrated architecture to help make the job of developing next-generation applications easier. These new features will make building the next generation of compelling applications not only possible, but also doable.
Windows Vista ships with a number of new foundational pieces including Windows Communication Foundation (WCF), Windows Presentation Foundation (WPF), Windows Workflow Foundation (WWF) and Windows CardSpace. Each of these pieces delivers an entirely new approach to the fundamental way that software is built. Understanding how these pieces work together and taking full advantage of each of one is key to building new applications that really shine on Windows Vista. The following are some of our recommendations.
Existing Apps
Microsoft has gone to great lengths to make Windows Vista as backwards compatible as possible. That being said, there are some things you need to be aware of. Security measures will more than likely require you to tweak your app some. This is especially true for the installation process. Any installation requiring access to the registry or other locked down system resources will require at the least an acknowledgement dialog. This could get really tedious for the user if your program makes a large number of system resource modifications.
Microsoft has provided a number of resources to help get your existing applications running on Windows Vista. Some of the handy ones include:
The Innovate on Windows Vista portal site (www.innovateonvista.com) represents a significant investment of time and effort on Microsoft's part to help developers get their applications built and delivered. Innovate on Windows Vista has links to all the information you'll need to migrate old apps or create new ones. You can register for the Works with Windows Vista program and get access to guided information and help forums as well as start the process of submitting your application for approval.
The "Application Compatibility Cookbook" presents a step-by-step approach from building test machines to dealing with the new security model. The first section of this document describes a 30-minute compatibility check. Testing existing apps on Windows Vista will hopefully reveal any area of concern. Microsoft recommends testing on a machine with a clean install of Windows Vista and a machine that has been upgraded from Windows XPSP2.
A Windows Vista compatibility hands-on lab is available for download to help developers understand the issues involved with moving legacy applications over.
Next-Generation Applications
Taking advantage of the newest Windows Vista features and capabilities will present a creative challenge for developers. Microsoft has a large number of resources on MSDN and elsewhere to help make the learning process easier. Presentations from the last Professional Developers Conference (PDC) on all different aspects of Windows Vista development are available for purchase.
The Innovate on Windows Vista portal (www.innovateonvista.com) includes an area devoted exclusively to getting new applications built and certified. Microsoft's Certified for Windows Vista program provides a wealth of resources to ISVs looking to get their applications certified. Some of the resources include:
The Jump Start Toolkit is another resource designed to get you up to speed building applications for Windows Vista in short order. You'll find videos, presentations, whitepapers, and tools that should kick start your education process. If you don't find everything you need there, you can always try the MSDN site.
One article on the MSDN site you'll want to be sure and check out is entitled "Top 10 Ways to Light Up Your Windows Vista Apps." You'll find all the top issues developers need to consider when building new apps for Windows Vista along with pointers to sessions that were presented at the 2005 Professional Developers Conference. While that content is no longer available online, you can order the DVD.
Microsoft's .Net Framework 3.0 is the latest release of their managed code library that serves as the basis for all the latest programming languages. The current version includes support for all the new foundation services and Windows Vista features. MSDN has all the information on this release.
Windows Vista will ship with version 3.0 of the .Net Framework delivered as part of the operating system. For developers it means you can use the latest Visual Studio tools and languages to build applications that install and work without the need to download and install the framework for every client.
Understanding the new security model will help avoid some of the pitfalls that could present themselves. The Windows Vista developer center on MSDN has links to presentations and the appropriate documentation sections to help you gain the understanding you'll need. You'll also find a link to a .Net show on Vista readiness.
Targets of Opportunity
Windows Vista includes a number of new capabilities, or targets of opportunity, for developers to utilize. Gadgets are tiny applications residing on the desktop and built from HTML, JavaScript, and XML. Check out the description of Gadgets and the Windows Sidebar. For a quick overview from a developer's perspective you want to check out this whitepaper.
Subscribing to information using RSS is another area that has really exploded over the last year or so. Using RSS for things other than the latest sports scores or news headlines represents another area yet to be fully exploited. RSS provides a mechanism to send information out to anyone that's interested in receiving it when something new is available.
Search is another area where Windows Vista will enable developers to do new and innovative things. Windows Vista changes how users work with files and delivers things like search folders, grouping and filtering not previously available. Developers can take advantage of these capabilities in their applications to make finding things easier.
Presentation and user interaction is probably the single biggest change in how applications will be developed for Windows Vista. WPF represents a new way of thinking about how applications present information and how you decouple the presentation portion from the code behind it. Spending time on learning WPF and how to take full advantage of its capabilities will be time well spent.
Adoption Makes Sense
Much speculation has been made in the general press and on the Web about Microsoft's ability to deliver Windows Vista and Office 2007 on time. With the RTM of both products, those doubts have been put to rest. The fact is that most major OEMs will begin shipping new machines with Windows Vista shortly and users will be hungry for new applications that exploit the new capabilities.
The race is on to see who will get new Windows Vista optimized applications out the door. If you don't get going now, you will be at a competitive disadvantagebecause your competitors will. Most importantly, your customers will be supporting Windows Vista with each new machine they purchase. If you want to keep those customersyou'll want to adopt now so that you can better support them.
Bottom Line
Analysts are predicting large numbers of users moving to the Windows Vista platform in a very short period of time. The market opportunity will be huge. First movers with applications exploiting the new features of Windows Vista will have a distinct advantage. The question for you iswhat are you waiting for?