I've watched over the past several years as developers of new applications have abandoned traditional software platforms, such as Windows, in lieu of more modern platforms, such as online services and the web and (more recently) mobile devices. And I've bemoaned here and elsewhere that in doing so, they've seriously crippled Microsoft's ability to set the technology agenda.
Microsoft has plans to reverse this situation, or at least embrace and extend current trends in online and mobile development. Some of these plans are obvious, such as the Windows Azure platform and the migration of Microsoft's many business servers—Exchange, SharePoint, etc.—to hosted online services. And some are less obvious. For example, according to my sources, Microsoft is seeking to essentially combine the user experience models for traditional Windows client OSs with Windows Phone in Windows 8, providing a single OS solution that will run across the widest possible array of device types.
All of these strategies make sense, and speak to how nimble Microsoft can be when forced by outside market conditions. But Microsoft's roots as a platform company expose themselves in many ways. And this past week, somewhat coincidentally, I was reminded that this company still gets platforms. And while it's still unclear what kind of developer pick-up they're going to get with these solutions, it's obvious that some of Microsoft's least well-known platform solutions are, in fact, first rate.
For example, last week Microsoft released near-final RC (release candidate) versions of its so called "Colorado" servers. This is a new family of related servers, more specifically Windows Home Server 2011 ("Vail"), Windows Small Business Server 2011 Essentials ("Aurora"), and Windows Storage Server 2011 Essentials ("Breckenridge"), or what Microsoft calls the Windows Server Solutions line.
These servers are currently most famous, or infamous, because one of the key Colorado technologies, Drive Extender, was cut from the product line at the last minute. But what's often forgotten is that the reason this technology was cut is because Microsoft discover incompatibilities between applications running on the servers and Drive Extender. http://www.windowsitpro.com/article/windows-server/Drive-Extender-and-the-Future-of-SBS-and-WHS.aspx And the extensibility model for these servers, which works through a new add-in functionality, could really drive server sales in the small business market in which these products compete.
Microsoft has released a software development kit, or SDK, that developers can use to create Colorado add-ins. It's a modern affair, with an object model and support for modern programming languages such as C#. But the important bit here is that this add-in model is surprisingly rich. You can extend the server, of course, in various and powerful ways. But you can also extend the client user experience (on Windows PCs) and, most excitingly, build in integrated support for online services.
Microsoft showed off a number of add-ins that it is creating and a few are worth highlighting. The first is an Office 365 add-in that will integrate the on-premises Active Directory user and security management with cloud-based Exchange, SharePoint, Office Communications, and Office Live Meeting functionality. So instead of having two management end-points, one on-premises and one in the web, everything can be managed from a single place: the SBS Essentials dashboard.
The second add-in that caught my eye was a Windows 7 Professional Pack add-in that provides a super simple way to apply policy across Windows 7 Pro–based clients in the environment, including those for software updating (Windows Update), security (Windows Firewall and Defender), folder redirection, and offline files. The add-in provides a number of templates, which the small business can use as is, or they can be modified.
Other add-ins that are coming from Microsoft and various third parties include some tied to Windows Phone (for administration on the go), power management, and cloud-based backup. It's all very exciting, and while the newer Solution Server products are a far cry from the on-premises–based, traditional SBS offering, they are very much in keeping with the general mantra behind SBS, which is to take Microsoft's enterprise technologies and make them more approachable to smaller, less technically sophisticated businesses. And the add-in model makes it all possible.
Another example: With Microsoft ready to rev its Windows Phone platform with its first major software update, the software giant released a major update to its Windows Phone SDK that gives developers a chance to check out new features and functionality and start integrating them into their own apps. And in installing and exploring these tools anew, I'm reminded of how superior the Windows Phone development environment is to everything else on the market.
Coincidentally to this, I recently started another of my routine explorations of Apple's in-beta development tools for iOS 4.3, which targets the next version of the OS behind the company's iPhone, iPad, and iPod touch products. Few ever discuss this, but iOS is shackled by a byzantine and unfriendly developer environment, despite years of improvements. This platform's real strengths are the sheer popularity of the products (which causes developers to just grin and bear it, no doubt, when it comes to the tools) and an admittedly excellent collection of free (and paid) developer documentation. But the tools themselves? It's like going back in time.
The Windows Phone developer environment, by contrast, is vastly superior. Not just the tools, which include more logical and usable code (Visual Studio) and UI (Expression Blend) environments, but also superior and familiar programming languages and language choices (including C#, which is far more elegant and less cryptic than Apple's horrific Objective-C, and Visual Basic), and excellent documentation (including a plethora of free video series from Microsoft and others).
What puts Windows Phone firmly over the top is the incredible Windows Phone OS itself, which provides the same in-out, in-out "whack a mole" app usage model as iPhone (if you want that), but also gorgeous panoramic experiences and deeply integrated online services. Like everything else related to Windows Phone, the potential of these features remains largely untapped by third-party developers. But that's got to change. The tools are all there.
OK, these are just two major examples, and there's more to discuss but I'm out of space. As I look over Microsoft's recent initiatives, I see hope for the future. And while the sheer number of platforms out there will result in developer confusion and indecisiveness, I think it's pretty clear that Microsoft's core strength—its ability to create useful platforms—remains strong. It's just up to developers to see these capabilities for what they are, and then take advantage of them in their own apps and service. Will you rise to that challenge? Or is the lure of the web and various dominant mobile platforms, whatever the issues, too much to overcome?
- Yes, I Still Love Windows Phone
- SharePoint Integration with Windows Phone 7
- Windows Phone 7: Is Microsoft Presenting the Right Message?
- Will Enterprises Adopt Windows Phone 7?