In-Depth

Microsoft's Cloud Vision

Why Windows Azure and Windows 7 will change the way you work.

After more than a year of speculation, Microsoft has laid out its roadmap for how it will deliver its next generation of software and services. The company unveiled its emerging services-based operating system -- called Windows Azure -- and the Azure Services Platform for developers at its Professional Developers Conference (PDC) 2008 in Los Angeles last month.

It could be years before Windows Azure and the Azure Services Platform reach any level of critical mass, observers say. The platform could substantially change over that time. But the company that came late to the Internet is re-jiggering its entire product line to embrace the figurative "cloud."

"It's the transformation of our software, it's the transformation of our strategy and our offerings across the board to fundamentally embrace services," said Ray Ozzie, Microsoft's chief software architect, who described the new Azure platform as a turning point for Microsoft.

Formerly code-named project "Red Dog," Windows Azure provides compute and storage services for services-based applications running on Windows 2008 servers in Microsoft's data centers.

Developers supply Microsoft with the code for the service and the architecture of the service model, and the company provides automated service management. The Windows Azure software development kit (SDK) offers a simulation of the cloud for debugging and testing on the local development desktop.

Ray Ozzie, Chief Software Architect, Microsoft

Windows Azure is Microsoft's operating system for the Web tier, Ozzie explained during the opening keynote, and it joins Windows Server in the enterprise and Windows Vista and Windows Mobile in what he called the "experience" tier. "Windows Azure is our lowest-level foundation for building and deploying a high-scale service," said Ozzie, "providing core capabilities such as virtualized computation; scalable storage in the form of blobs, tables and streams; and, perhaps most importantly, an automated services-management system -- a fabric controller that handles provisioning, geo-distribution and the entire lifecycle of a cloud-based service."

Windows 7 also made its debut at PDC, but Windows Mobile was MIA outside of one session and the Silverlight for Mobile version 2 announcement, causing many to wonder how Microsoft could possibly catch up as smartphones such as Apple's iPhone are rapidly gaining momentum.

First Look at Windows 7
While Windows Azure represents the new Web tier articulated by Ozzie, Windows 7 will be the successor to Microsoft's Vista. Attendees at PDC were given pre-beta copies of the new OS. A broad beta is expected either later this quarter or early next year, and many believe Microsoft would like to deliver it before next year's holiday season.

Given that most enterprises have passed on Vista, many are expected to go right to Windows 7, which sports some changes to the user interface, support for touch computing and a new set of Web services APIs.

When Dan Thornton, business analyst at North Reading, Mass.-based Teradyne, Inc. saw Microsoft demonstrate Windows 7 for the first time at PDC, he was impressed with the changes to the UI-particularly the new task bar. Rather than have multiple places to launch and toggle between apps, Microsoft has brought the Start menu, Quick Launch and the taskbar into a common view. When a user points to an icon it presents what Microsoft calls Jump Lists, which present files, URLs, tasks or other components of an app. It's automatically populated based on how often a given item is accessed, and developers can build their own Jump Lists.

"It's a lot easier to use," Thornton said after a session highlighting the new UI. The interface has other nuances, such as a new Windows Explorer that creates "libraries" pointing to information regardless of where it's stored.

For Thornton these new interfaces are critical: He's responsible for the user experience of employees at Teledyne, a semiconductor test-equipment manufacturer. "I'm pretty excited about the possibilities of using Windows features instead of inventing our own," he said. "There's some pretty good stuff there."

On the systems side, Windows 7 includes the same kernel as Windows Server 2008, can run on up to a 256-core system, has an improved memory footprint and offers easier setup of networks and printers and improved power management, among other things.

"The core is solid," says Peter O'Kelly, principal for O'Kelly Consulting, who has tested the Window 7 pre-beta.

Despite these and other improvements, most analysts describe Windows 7 as an incremental upgrade to Vista. "It's more evolutionary then revolutionary," says Forrester Research Inc. analyst Jeffrey Hammond in an e-mail. Nonetheless, given the fact that many organizations have bypassed Vista, Windows 7 is likely to play a greater role, observers say.

But what does this mean to developers building to Windows 7 who may be considering running those same applications on Windows Azure? "I'm expecting a consistent programming model to evolve that ties Windows 7 to Azure through successive evolutions of .NET Framework," says Forrester's Hammond. "In a sense it's really the new platform and programming model, which gives Microsoft the ability to vary the actual implementations under the covers."

New Services Platform
Developers can build .NET-based Azure services using models and APIs in the Azure Services Platform with familiar tooling such as Visual Studio 2008 as well as the new "Oslo" modeling platform.

The Azure Services Platform is comprised of several existing components, some of which have been renamed. The app building blocks include Live Services, .NET Services (formerly BizTalk Services), SQL Services (expanded beyond SQL Data Services [SDS] to include reporting and analysis), SharePoint Services and Dynamic CRM Services.

Last month's PDC attendees got the first look at the Windows Azure SDK and key platform components, specifically Live Services, .NET Services and SQL Services.

Live Services consists of user-specific data and shared resources used by Microsoft's Windows Live family, which includes Hotmail, Live Messaging, Live ID, Live Maps and Live Search. A new Live Framework was unveiled by Microsoft's Corporate Vice President of the Live Services Platform David Treadwell during a keynote at PDC.

.NET Services, for now, includes a service bus for connecting on-premises apps to the cloud, access control that enables federation across existing identity providers into the cloud, and workflow that will be extended to cloud services.

SDS is the relational-database component of a broader suite of planned data-related services called SQL Services. A closer look at some of the projects that Microsoft has underway is available at the SQL Services Labs portal, which went live at PDC. Microsoft is working on several incubation projects, many of which are likely to become part of SQL Services, the Microsoft Synchronization Framework or Live Mesh in the future. These projects include work on a data-access interface for ADO.NET Data Services (JSON and AtomPub), as well as offline data synchronization using the Microsoft Sync Framework. Other projects focus on reporting against SDS and Data Mining.

SDS is designed to enable companies to access relational data that's stored in Microsoft's data centers, but it's not simply SQL Server in the cloud. It uses a hierarchical data model that will eventually support access from other platforms, according to Microsoft. SDS, which supports SOAP and REST wire formats, is described by Microsoft as an open platform. To that end, the SDS team announced support for a Ruby toolkit at PDC. SDS is separate from Windows Azure storage, which is not relational and is based on what Microsoft calls a "RESTful" approach.

The community technology preview (CTP) of the Azure platform, which supports ASP.NET and .NET languages, is now open to all MSDN subscribers, according to Microsoft. Support for native code and PHP are planned, but not in the initial CTP.

The first CTP showcases a "fraction of the features," according to Microsoft. For example, the Windows Azure storage features in the CTP support blobs, queues and simple tables, but more advanced features such as field streams, caches and locks are not exposed in the preview.

Unsold on the Cloud
"It was a surprise to me that they labeled it Windows," said one developer attending PDC, who works for a Fortune 100 tech company. "It wasn't Microsoft Azure, it was Windows Azure. I see this as a direct competitor to Google Code to some extent, and obviously Amazon Elastic Compute Cloud.

"When you think of it, it's physical, but I can't see how people can shift their trend reports from the service architecture to the cloud," he continued. "[Microsoft has] shown a Web site that says, here's how you run this thing, but we haven't seen a lot of the application lifecycle, so there's a promise and it's very easy to get in, but what happens then?"

Security and connectivity issues were the top concerns of many developers. "I'd say it's a nice piece of software -- it's very attractive, but there are some security issues that I'm very concerned about," said Petri Niiranen, project manager at Sesca Mobile Software Oy. "I'm not so sure that this will be a solution for midsize and small companies. From my point of view, I can see opportunities in the places where we utilize some access to third parties or subcontracters specializing in some part of the ecosystem."

Despite reports of some success from companies like Amazon.com Inc., IBM Corp. and Google Inc., data in the cloud is a nascent market that most often garners a wait-and-see attitude.

"Windows Azure is a great idea," said Morten Damgaard, VP of front-end and Microsoft tools at Danske Bank Group. "But we'll live without it until it's released and we can't base anything on it. Big companies are going to build their own cloud.

"Would outside governments accept this?" he added. "Do we trust Microsoft? Not now, but maybe in the future. One of the challenges we're facing is, how do you ensure the integrity of your contacts?"

Other developers had questions about more advanced functionality and Azure's usage in production environments despite its status as early preview. One of the most frequently asked questions was: "Will I be able to run Windows Azure in my data center?" The answer is no, according to Manuvir Das, director of the Windows Azure platform at Microsoft, who said he could not comment on whether or not that will change.

Early adopters that showed Silverlight applications running on the Windows Azure platform during the PDC keynote and a followup session included Bluehoo, which highlighted a social-networking mobile app that uses Bluetooth to find people in close proximity with similar interests; and FullArmor Corp., a start-up that created a Policy Portal already in use by the Ethiopian government.

"Azure will be extremely popular over time with software vendors who want to get into Software as a Service but don't want to build their own data centers," says Tom Bittman, Gartner Inc.'s chief of research on infrastructure and operations.

"This is a great start, but Microsoft has a long way to go. For example, one of the aspects of cloud computing that is appealing is elasticity -- the ability to grow and shrink very easily," he says.

Tom Bittman, Chief of Research, Infrastructure and Operations, Gartner Inc. "Azure will be extremely popular over time with software vendors who want to get into Software as a Service but don't want to build their own data centers."
Tom Bittman, Chief of Research, Infrastructure and Operations, Gartner Inc.

Azure in its current instantiation lacks that elasticity. If a customer asks for a server from Microsoft with the current CTP, they get a fixed-sized virtual machine. "I don't get something I can flex up and down, I get a server. If I want to have a server that grows and shrinks over time, I can't do that," Bittman says.

"If I have a scale-out application, with trillions of consumers accessing it, that's probably a non issue," he continues. "But if I have a scale-up application -- maybe it's a small workload, or maybe it's a service that has maybe 20 servers that are all different sizes -- I don't have a lot of flexibility there."

Microsoft will be unlocking access to new capabilities in the coming months. The Windows Azure and Azure Services Platform roadmap will be determined in part by developer feedback. Microsoft will not charge developers during the CTPs, although there is a quota for service usage. The business model for the commercial product, which is expected in the 2009 calendar year, will be based on applications' resource consumption and service-level agreements.

For the next year, Azure is a good place to experiment as a developer, but it's not ready for a production workload, cautions Bittman. "Right now you have to write the application targeting the cloud, using specific APIs that are Azure-ready, and then you host that application in the cloud, so the developer makes the choice," he says. "In a year we'll also see changes, and I'm expecting that elasticity will be one of the changes. Of course, with the other changes there will be a price associated with it -- then it becomes real."

Expect to hear about some of those changes at the next PDC, which is planned for November 2009. Is the future bright for Microsoft, Windows Azure and Windows 7? Developers' reactions to the early CTPs may help determine the next developments in Microsoft's unfolding Software plus Services strategy.

Desktop in the Cloud

Whatever happened to Live Mesh, the Windows ladder in the cloud that Microsoft's Chief Software Architect Ray Ozzie announced in April?

At the Professional Developers Conference (PDC) 2008, Microsoft released the first public beta of Live Mesh, its PC software that extends parts of your Windows desktop to the Web to enable synchronization and sharing of data, apps and devices. Mesh is described by some pundits as an evolution of sorts of Groove Networks' peer-based collaboration software, which was acquired by Microsoft. Live Mesh is integrated with Live Services.

New Framework
Part of the new Azure Services Platform, Live Services are the shared user data and resources used by Windows Live apps such as Hotmail, Live ID and Live Messenger in Microsoft's Web tier. The first community technology preview (CTP) of a new Live Framework that provides a "uniform" way for new and existing apps to access Live Services via HTTP was announced at PDC and delivered to attendees as part of "the Goods" -- the portable hard disk full of preview software. Live Framework replaces the various Live Services APIs -- part of the Windows Live Platform -- used by developers to expose data today. Any app with permissions can, in theory, access Live Services. The Live Framework can also be used to synchronize data among desktops, laptops and mobile devices.

"The Live Mesh application is built completely on top of Live Framework," says Ori Amiga, group program manager of the Live Developer Platform at Microsoft, who expects independent software vendors to build Live apps.

The Live Framework is composed of the Live operating environment -- similar to the .NET CLR -- a resource model and Live Framework Toolkits, which are managed libraries such as the Silverlight Kit, the .NET Kit and the AtomPub .NET Library. The CTP, which offers limited availability to Mac OS X and Windows Mobile 6 clients, is supported on Windows XP, Windows Vista, Internet Explorer 7, IE8 and Firefox.

-- K.R.
comments powered by Disqus

Featured

  • 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.

  • What's New for Python, Java in Visual Studio Code

    Microsoft announced March 2024 updates to its Python and Java extensions for Visual Studio Code, the open source-based, cross-platform code editor that has repeatedly been named the No. 1 tool in major development surveys.

Subscribe on YouTube