Build Keynote 2: Microsoft's Plan to Broaden the Cloud's Reach
Microsoft's Satya Nadella, president of the Server and Tools Business, opened the keynote Wednesday on day 2 of Build 2012 in Redmond, Washington. Nadella's talk highlighted used the theme that Microsoft offers a "Modern platform for the world's apps".
Nadella described the Cloud OS which is composed of both Windows Azure & Windows Server. Together these provide the following benefits: transform the datacenter, enables modern apps, unlocks insights on any data, and empowers people-centric IT. Nadella doesn't see the relationship between Azure and Server as either-or, he sees both as necessary and useful. He then moved to an overview of the various cloud-type services that Microsoft runs today: Office 365, MSN, Microsoft Access, etc. X-Box Live has more than 40 million users. SkyDrive is adding 2 petabytes of data per month. Azure itself runs on Hypervisor, which helps Microsoft learn how to build a better host operating system.
The following types of applications were discussed:
- App Services
To support this, Microsoft created Windows Azure Mobile Services (WAMS), which provides ability to build cloud-backends. Josh Twist then came on stage to discuss Event Buddy. Twist demonstrates how to add WAMS to the Event Buddy sample app. WAMS supports Windows Phone 8, Windows Store, and iOS. The WAMS quick start page generates a code stub in C# which can be pasted into the program source code to support Azure. In this case, the sample was used to access and query code from Azure.
Next Twist added authentication, which provided support for Microsoft Account, Facebook, Google, and Twitter. With this change the application allows the user to login with one of those accounts and the developer can take advantage of WAMS to provide the legwork.
Scripts can be setup to run on a table insert, allowing the server to authenticate the user. As an example his code uses the WAMS to obtain a user's Twitter avatar and provide this picture in the Event Buddy sample application.
With Windows Phone 8 support, Twist showed how a user of Event Buddy can rate a presentation with their phone app, and this rating information will be conveyed by WAMS to the event organizer's live tile on Windows 8.
- Web sites
- SQL database
- Web API
Nadella returns to discuss web-centric applications, introducing Scott Hanselman to demonstrate how this can work. Hanselman's ASP.NET application is associated with his Facebook account. Using Page Inspector on Visual Studio 2012, Hanselman was able to see how the login page was genereated and what HTML was used to render the page.
ASP.NET has OAuth support which allows several providers, including LinkedIN. The VS2012 Fall Update will provide the ability to generate Facebook apps with a starting template. VS2012's ability to view Azure data directly was shown next. Azure provides ability to generate automatic documentation on the APIs publicly available.
After Hanselman's demonstration, Nadella returns to discuss cloud-scale based applications, which he defines as using the following features:
- team development
- big data
Scott Guthrie arrives on stage to scale the sample app from Hanselman's app to the next level. In this case, uploaded video will be able modified to support video streaming. Guthrie creates a Media Service under App Services in Azure.
This Media Service supports various encoding formats so that updated video can be converted to various formats including HTML5 and iOS. The Media Service supports adaptive streaming to adjust to the client's available bandwidth.
Using NuGet, Guthrie could add the Windows Azure Media Service package to his Visual Studio solution. This provided his application the ability to add the ability to support publishing video on Media Services. Demoing on a Surface tablet, a quick video shot of the Build cloud was uploaded to the demonstrated application on Azure.
Background Worker is a service running on Azure that can provide feedback to Azure applications via SignalR. The WorkerRole is a non-UI role, that is used to talk to the Media Service. Guthrie's code sample obtains connection to SignalR, and feeds updates on the video's upload process. The end result is that his application is able to show a thumbnail during the upload sequence that is updated with progress of the file transfer. To move the developed code from Guthrie's local developer machine, VS2012 supports publishing to Azure directly from the IDE. Azure handles server provisioning for developers so that additional capacity can be utilized without any code changes.
Windows Azure has a store available that provides the ability to additional services to Azure applications, and the store handles transactional details so the user does not have to enter payment details for each vendor. As an example, Guthrie showed how New Relic's server monitoring service provides performance details of a developer's Azure service.
Nadella return onstage to announce new Azure features:
- Windows Azure SDK – October Release
- Support for Windows Server 2012
- Support for .NET 4.5
- General availability of dedicated cache support
- Windows Azure Store
Team Foundation Service is now generally available. Jason Zander is brought out to demonstrate this new release. Forecasting allows project managers to plan sprint cycles based on previous work effort. The kanban board provides live project planning as tasks can be moved to different sprints and TFS updates capacity automatically. More details are available and the Team Foundation Service is free for teams of up to 5 developers.
Nadella resumes the presentation to discuss cloud scale for enterprise and what that means to him. Organizational identity management with Windows Azure Active Directory. This provides single sign on, multi-factor authentication, and the APIs to use these.
Dave Campbell, Technical Fellow from SQL Team / Hadoop on Windows Azure. Using the same sample application used by previous presenters, Campbell takes a tour of the data collected from the application during its operation. For example, an admin may want to know how many video clips were watched in their entirety.
Uses the term "information production" where the data contained in a log file is retrieved/processed into a usable format. The server access data was then brought into Excel where it could be visualized on a global map. Other graphs showed the popularity of different videos. The next step for Campbell was to create a Hadoop job that processed the log data to improve the recommendations made by the web service.
Nadella announces that Halo 4 uses Windows Azure on the backend, which provides elastic scale and big data insights. This is intended to allow the Halo developers to monitor popularity of different features and the usage patterns of gamers.
In conclusion Nadella says that this Build is important as Microsoft is providing developers with the platform to develop next generation applications.