Redmond Review

Innovation in the Margins; Adaptation in the Spotlight

It's been a real whistle-stop tour. Through rapid-fire demos between May 24 and June 6 at events in New York, California and Taiwan, Microsoft publicly disclosed its plans around the Windows Phone 7 "Mango" release, "Windows 8" and the next platform update to Xbox 360. And it wasn't just the sequence of dates that was coordinated. Audiences have seen that Microsoft's offerings across the "three screens" -- phone, PC/tablet and television -- are becoming unified in numerous ways.

By standardizing on the tile- and gesture-based panoramic Metro UI, the online marketplace business model and certain social-networking functionality, Microsoft is rationalizing its strategy in each screen category and conforming them to a strategy across all three.

That's noteworthy all by itself, but there's a specific piece of the strategy that's most uncanny: Microsoft is taking its wildly successful Windows and Xbox 360 platforms and remaking them in the image of their unproven young relative, Windows Phone 7. What does this say about innovation at Microsoft and what does this mean for developers?

Small Is Beautiful
At first blush, it's hard to believe a smartphone platform that's sold a few million handsets -- and will have maybe 30,000 apps by the time this column is published -- could be setting the trends for Redmond's desktop OS and game console juggernauts. But let's turn this on its head: Maybe Windows Phone 7 has been influential because of its small market share.

Microsoft's success with products like Windows, Office and SharePoint have made it more conservative and arguably less innovative. Meanwhile, changes in computing are threatening the relevance of those franchises. Microsoft needs big change, but has been unable to risk disrupting its traditional revenue streams to get there.

Within that seemingly bleak situation has emerged a possible solution. In areas where Microsoft's revenue is small, the company has the freedom to be innovative. There's aspirational pressure to do something new, and a lack of financial pressure to do things the old way. That lets smaller markets act as labs, of a sort, where Microsoft can experiment and innovate. It lets the big corporation dare like a small company. And when a change works with users, as Windows Phone 7 and the Metro UI have, Microsoft can bring the change to its bigger platforms, such as game consoles and PCs.

Developers Need Change Too
On the developer side of things, we have similar innovation challenges. As the Microsoft .NET Framework turns 10 years old, it has an entrenched status that inhibits its ability to change and stay relevant. In the face of industry trends like dynamic languages, multicore and parallel computing and RESTful services, is .NET learning new strokes, or is it just adding features and libraries that help it tread water? Most likely the latter, but Microsoft can't do a complete reset on .NET any more than it could obliterate Windows and Office.

Again, Redmond must preserve an important franchise, but somehow respond to market changes that threaten it. So here, too, maybe Microsoft needs small markets in which to incubate breakout solutions.

Where will that laboratory be for the Microsoft dev stack? It seems like the cloud and Windows Azure are candidates. While the foundational technologies in Windows Azure are Windows and .NET, there's also a culture of cross-platform tolerance that's healthy and encouraging. We're seeing innovations, like Service Bus Queues and Topics, show up in Windows Azure AppFabric, and we may see them move to Windows Server AppFabric subsequently. The cloud is also having a positive impact on Microsoft's speed of iteration and release.

The Windows 8 "Tailored" app area may be another incubation opportunity. Certainly support of HTML5 and JavaScript as first-class technologies represents a departure from old thinking. But we may yet see Windows 8 app dev incorporate the developer tools and languages we've used with Windows 7 and earlier versions. That could provide a platform Microsoft developers love and Web developers from outside the .NET world find attractive and exciting. If it did, it would show us that speculative efforts into smartphones, the cloud and tablets -- where Redmond has been an underdog -- were the path to revamping conventional efforts on the desktop and in the enterprise, where it has been the top dog.

Sometimes a detour is necessary to reach a destination. That may be Microsoft's lesson here, and it may be the lesson for .NET developers too.

About the Author

Andrew Brust is Research Director for Big Data and Analytics at Gigaom Research. Andrew is co-author of "Programming Microsoft SQL Server 2012" (Microsoft Press); an advisor to NYTECH, the New York Technology Council; co-moderator of Big On Data - New York's Data Intelligence Meetup; serves as Microsoft Regional Director and MVP; and is conference co-chair of Visual Studio Live!

comments powered by Disqus

Featured

  • Creating Reactive Applications in .NET

    In modern applications, data is being retrieved in asynchronous, real-time streams, as traditional pull requests where the clients asks for data from the server are becoming a thing of the past.

  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

  • .NET 9 Preview 3: 'I've Been Waiting 9 Years for This API!'

    Microsoft's third preview of .NET 9 sees a lot of minor tweaks and fixes with no earth-shaking new functionality, but little things can be important to individual developers.

  • Data Anomaly Detection Using a Neural Autoencoder with C#

    Dr. James McCaffrey of Microsoft Research tackles the process of examining a set of source data to find data items that are different in some way from the majority of the source items.

Subscribe on YouTube