By Tim Landgrave
At its recent Mobility Developer conference, Microsoft laid out its strategy for enabling developers to create next-generation location-aware applications. The new platform includes some existing hardware, software, and services, as well as new server products designed to decrease the time to market for corporations that want to offer products based on the platform to their customers. I’ll describe the new Microsoft Mobility platform and discuss the Microsoft strategy for helping corporations to move into this important new market.
The mobility landscape
With the number of new PCs purchased each year (as opposed to those purchased to replace existing systems) beginning to decline, Microsoft recognized that the next battle will be fought for the software that runs or is accessed by the millions of portable devices that will be purchased over the next decade. Cell phones, BlackBerrys, pagers, Palm-powered PCs, Pocket PCs, and most laptop and tablet PCs will make up the vast majority of new computing devices. And they all have one thing in common—they're designed to work when not connected to the corporate network. Moreover, the vast majority of the devices will also not be running a Microsoft operating system. This means that Microsoft has to figure out a way to generate revenue from the devices, and it has to provide its customers with a way to use its software to provide services on the devices.
It’s not that Microsoft isn’t trying to get a version of its operating system on each phone. At the Mobility conference, every major mobile phone carrier announced or showed support for a version of the full PocketPC operating system combined with a cell phone. Many announced support for the Microsoft SmartPhone OS, a scaled-down version of the PocketPC operating system designed for the average user. But the market-leading cell phone manufacturers still prefer alternate operating systems for their devices, primarily relying on the Symbian OS. Symbian is a joint venture of several major mobile computing and telecom device manufacturers. They joined forces to develop not only the EPOC mobile wireless operating system but also an entire system designed to create and support Symbian OS phones. Unfortunately for Microsoft, it also appears that Symbian will implement Java as the language of choice (in addition to the existing support for C++) for applications built on the Symbian platform. Given that Microsoft will likely have only a small percentage of the overall phone market, how will it help corporations extend their existing Microsoft infrastructure onto these devices?
The .NET services play
When Microsoft introduced the .NET platform last year, one of the most underhyped technologies was its support for wireless devices. Microsoft extended ASP.NET with technology that allowed a developer to create an application for any mobile device that supported WAP, MHTML, or other mobile rendering technologies. Moreover, developers can write the application once, and the ASP.NET mobility libraries will interrogate the device and present the appropriate user interface based on its capabilities. With this spring’s release of a new version of Visual Studio and version 1.1 of the .NET Framework, developers creating mobile applications will have all of these features plus a released version of the new .NET Compact Framework. The .NET Compact Framework allows VB or C# developers to create rich mobile applications for Windows CE-based devices without having to use the arcane C++ tools required today. (There is a VB version of those tools, but performance and distribution issues have kept it from being widely used.) The .NET platform provides all the tools necessary to create applications that target mobile devices whether or not they’re using a Microsoft OS.
But that’s only part of the strategy. When Microsoft introduced and then later cancelled its “HailStorm” strategy of providing a broad set of general-purpose Web services, many companies assumed that the shared .NET services were dead. Nothing could be further from the truth. Microsoft has steadily been building support for its MSN Alerts service, providing toolkits and direct support to corporations that want to integrate applications with the MSN Messenger service. But it has really created a niche by building a business around hosted routing and location services on MapPoint. NET.
The location services platform
Microsoft MapPoint .NET is a hosted service that provides maps, driving directions, distance calculations, and proximity searches. By exposing MapPoint as a programmable XML Web service, Microsoft makes it simple to integrate this data into your own corporate applications and Web sites. In fact, many companies now use MapPoint as part of their standard business processes. For example, I’m working with a company to develop a dispatching and truck-routing application that relies on MapPoint to provide directions to pickup and delivery locations optimized for the device that accesses it. Cell phones will get text directions from their current location (using the GPS capability built into the newer cell phones), and PocketPCs or laptops will get maps showing how to go from their current location to the destination. These GPS-equipped devices can even track and display the driver’s progress locally and report the truck location remotely so that the home office and the end customer can track the vehicle’s progress online.
Mobile devices key to Microsoft future
By combining the power of hosted MapPoint services and the development tools provided by Visual Studio .NET, corporations can now develop location-aware applications that make their internal corporate data available to a wider range of customers on a broader range of devices. For example, customers using cell phones can use a dealer locator to find the closest dealer for your company’s products based on their current location. Restaurants and movie theaters are already using these services to allow patrons to find them, and soon you’ll also be able to order tickets or make reservations.
Microsoft hopes to increase corporate adoption of these services by providing a rich, easy-to-use platform. Perhaps more important, Microsoft wants to use these types of services to replace revenue lost by the aging of the PC infrastructure. Corporations that want to develop location-aware applications will be the primary beneficiaries.