Scott Guthrie: Build 2016

Remarks by Scott Guthrie, executive vice president, Cloud and Enterprise Group, at Build 2016 in San Francisco on March 31, 2016.

SCOTT GUTHRIE:  (Applause.)  Good morning, everyone, and welcome to Build.

You know, yesterday Satya talked about our three core ambitions as a company and Terry talked about the great work we’re doing in Windows to enable more-personal computing.

Today, I’m going to continue the conversation by talking about the work we’re doing with Azure to build the intelligent cloud.

Qi Lu will then build on top of that and talk about the great opportunities we’re enabling for developers with Office.

And then Steve Guggenheimer and John Shewchuk will finish up with the keynote this morning that highlights some of the great end-to-end experiences that developers have built across all three ambitions.

So let’s go ahead and talk about Azure.

So Azure is Microsoft’s cloud computing platform.  It enables you to move faster and do more.  Azure is a hyper-scale cloud platform, and over the last several years, we’ve been hard at work expanding Azure to run all over the world.

You know, the circles here on this map indicate what we call Azure regions, which are made up of clusters of data centers where you can basically run and deploy your code.

We now have 30 unique Azure regions around the world.  To put that in perspective, that’s more locations than Google and AWS combined.

This enables you to run your applications closer to your customers and your employees than ever before and compete in even more geographic markets.

Now, what makes each of these regions pretty impressive is just the sheer size of them.  This photo right here is just one of our U.S. east data centers.  Just to give you a sense of the facility, that little circle in the bottom right is a very large truck.

And this is the same region from a different angle and it kind of shows you the buildout that’s currently underway.  This data center will, ultimately, be more than a mile long.

And we’re going to invest billions of dollars to build our infrastructure like this all over the world.  And our cloud platform now manages more than a million servers.

And this enables you to build apps without having to worry about your cloud platform’s capacity and it enables you to build apps and scale your solution to literally any size.

You know, we’re seeing tremendous adoption of Azure right now.  And we often hear from customers that there are three main reasons why they’re choosing Microsoft.

You know, Azure offers the choice and flexibility of a full-spectrum cloud.  You can start from scratch for new green field projects, or easily leverage existing investments and skills.

Azure is open and supports the ability to target multiple devices, use multiple operating systems, programming languages, frameworks, data services, and tools.  And this slide here just highlights some of the technologies that you can leverage to build Azure applications today.

With Azure, you can literally take advantage of the best of the Windows ecosystem and the best of the Linux ecosystem together.

Now, Microsoft is one of the only hyper-scale cloud vendors out there.  And unlike any of the others, we’re unique in that we enable our cloud solutions to be deployed not just in our hyper-scale cloud data centers, but also in your own data centers as well as service provider data centers as well.

Our Azure stack offering enables you to stand up a consistent cloud platform experience on premises with the same management API, the same portal, the same set of developer services that’s available in our core public cloud Azure.

This provides customers with the maximum flexibility to basically journey to use the cloud and enables them to basically use a common set of skills and assets along the way.

You know, for us, enterprises are not an afterthought, they’re a key design point.  And it’s not just about the technology.  Microsoft has decades of experience supporting businesses and enterprise customers of every size.  And we have tens of thousands of support professionals who understand and support enterprises around the world today.

This means we really understand the critical requirements of running software for businesses, including things like certification, data sovereignty, security, and privacy.

For example, Azure now has more compliance certifications than any other public cloud vendor, and Azure is also the only global public cloud vendor that has a license to operate in mainland China.

85 percent of Fortune 500 companies today are now running their businesses using the Microsoft Cloud.  These are just a handful of the logos that are running on Azure today.

And Azure provides the best cloud platform not just for enterprises, but in particular for software developers who want to target enterprise customers and deliver their solutions to them.  And throughout today’s keynote, you’ll hear from customers talking about the great things that they’re doing with Azure and the reasons why they picked it.

Now, Microsoft got its start serving developers.  Our very first product as a company was a product targeted for developers.  And making developers successful with great platforms and tools remains central to our company’s overall mission.

We’re relentless about taking the latest technologies and making them accessible to the broadest set of developers out there in the world.  And our aim is to help you build better apps even faster.

You can choose to use Azure just for infrastructure and use it for base compute, storage, and virtual machines.  You can also take advantage of a coherent set of highly engineered and fully managed services to build your apps even faster.

Now, our cloud platform and tools together deliver unmatched productivity that enable you to move faster and be even more successful.

Over the last 12 months, we’ve delivered hundreds and thousands of new features and services with Azure and the pace of innovation continues to accelerate.  As we’ve delivered all these capabilities, we’re really seeing the usage of Azure continue to skyrocket.

We now have more than 120,000 new Azure customer subscriptions being created every single month.  And those customers are creating some truly amazing applications.

We have more than 1.4 million SQL databases being hosted now within Azure to run applications there.  More than 2 trillion IOT messages each week are not being processed by our Azure IOT system.  More than 5 million organizations and enterprises are now using our Azure Active Directory.

And this is great not just for them, but again, for developers.  Makes it incredibly easy for you now to deliver SaaS-based applications that target all those enterprises in a really easy way.

More than 4 million developers are registered now with our Visual Studio Team Services, which is our online suite of developer SaaS offerings.  And we’re seeing growth and traction not just with enterprises and business users; in fact, more than 40 percent of our Azure usage comes from startups and ISVs.

And behind all this large momentum numbers, there are some truly amazing customer stories and people that are really taking advantage of all this technology to deliver great things.

For the rest of the day’s keynote, we’re going to dive in and explore this technology and highlight some of the great new enhancements that we’re announcing today and coming out this week.  And then really highlight a whole bunch of great customer success stories talking about how they’re taking advantage of that technology to transform their businesses.

Let’s go ahead and start by talking about Web and mobile.

One of our most-popular services in Azure today is our Azure App Service offering.  Azure App Services provides a rich set of cloud capabilities that enable you to build and scale the back ends for both Web and mobile solutions anywhere in the world.  And we’re seeing some fantastic apps being built with it.

Last month, we announced that Microsoft was acquiring Xamarin.  Xamarin is a leading platform provider for mobile app development and enables developers to deliver fully native mobile app experiences to all major devices including iOS, Android, and Windows.  And it’s the perfect complement to a back-end cloud.

You know, more than 1.3 million unique developers have used Xamarin.  And companies who have adopted Xamarin really spanned every single industry out there.  They range from startups like Slack and Pinterest to enterprises like Coca-Cola, Alaska Airlines, and Honeywell.

What I thought I’d do is actually just show a quick video of a couple Xamarin customers talking about why they use Xamarin and why they love it.

(Video:  Xamarin Customers.)

SCOTT GUTHRIE:  (Applause.)  Xamarin enables developers to build fully native mobile apps using C#.  Xamarin’s approach enables developers to take advantage of the productivity and power of .NET and use C# to also write to the full set of native APIs and mobile capabilities provided by each device platform.

This enables developers to easily share a common app code across iOS, Android, and Windows apps, while still delivering the fully native experiences for each platform.

What I’d like to do is invite Migel on stage to show off just how easy it is to get started with Xamarin and build a very first project with it and how powerful a development experience it is.  Here’s Migel.  (Cheers, applause.)

MIGEL DE ICAZA:  Thank you, Scott.  Hello.  Thank you.  Thank you.

First of all, at Xamarin we’re very excited to be joining Microsoft.  Personally, I am very happy to finally be joining the team that created the .NET framework, but also to complete the longest job interview of my career.  (Laughter.)

Yesterday, Kevin showed you the My Health application.  It’s a cross-platform app, a mobile app that runs on Android, Windows, and iOS.  And it delivers a native experience on each one of those platforms.  It’s written entirely in C# by sharing a piece of the code and delivering native experiences on each one of those.

So what I want to do today is show you just what the experience is for Visual Studio developers to create iOS applications and Android applications from Visual Studio.

So what I’m going to do is I’m going to create a project.  And here on the template selector, I just go to iOS, iPhone, there’s a template for iPhone, iPad, and other things.  And I’m just going to pick this one, the single-view app.  There are other templates for your apps for you to choose as well.

So I’m going to get started by editing the user interface for my project.  I’m going to open the storyboard which is iOS’s native file format for UI design.

To showcase this, what I’m going to do is add a very simple label to my screen, I’m going to put this guy here, and then I’m going to resize it.

And then I’m going to give it a name so I can refer to it from my code behind code.  I’m going to call this “my text.”

And then I’m also going to pick a map, which is the iOS map view, and I’m going to position this guy here.  You might be thinking, I’ve never seen a square phone.  This is Apple’s way of ensuring that your application works on small form factors or big form factors.  So you have to design your app with this in mind.

Now, I’m going to go to the code behind for this.  And I’m going to hook up some events to my map.  So I’m going to go to my map and you get the usual Visual Studio code completion here.

And everything that you see here, you’ll see that these are actually the reflected properties of everything from the native API.  This is the accessibility API.

But in this case, what I’m going to do is I’m going to hook up to the region change event.  So that means that whenever I move the map and the map changes, this method will be invoked.

I’m just going to press that here, I get my usual Visual Studio features here, so I’m going to call this method change.  And now I’m going to go here and implement the behavior for this.  So every time that the map changes, I’m just going to update the text on the UI.

I’m going to use a little bit of C# 6 here just to show off that I’m actually keeping up with the blog posts.  (Laughter.)  My, and I’m going to display the longitude.  All right.

So that’s it.  I think I’m just going to run this thing.  So if you just could build the same way you would do it with any other project.  There’s really not a lot of magic here.  The build gets started.  The build is happening partially on Windows and partially on the Mac computer.

Usually, this is the step where I have to ask somebody backstage, hey, can you just switch my computer to the Mac?  But, today, we’re showing you the iOS simulator remoted to Windows.  (Cheers, applause.)

And this is great because you no longer have to invest in a chair that spins.  (Laughter.)  So you can do it all from here.

Now, I can use this — since I’m using a Surface computer, I can usually use my finger here.  And you see how the longitude is updating.  I can just use my finger to do this.  And also we forward all multi-touch events.  So this is something that no iOS simulator has ever been able to do before.  You can see that I’m using my fingers here to change.  (Cheers, applause.)

Now, it wouldn’t be Visual Studio if you couldn’t set break points on this live.  So I’m going to do a little bit of movement here.  And you’ll see the break point hit.  And it wouldn’t be Visual Studio if you couldn’t just explore all of your objects as they go.

So everything that you see here, this is my text variable, and you can see all the native references like the UI font, the mutable string, so everything that you know and everything that the native platform surfaces is integrated directly into .NET.

So this is what I wanted to show you on the iOS side of the house.  Now, some of you might be thinking, well, this is going to be a lot of learning.  There’s going to be a lot of learning of new APIs and models.

So what we started to do is we thought that there was a better way for learning APIs on Android, iOS, and even Windows.  And we decided to leverage the work that the Roslyn team has done.

So what you’re looking at here is a nicely rendered page of our new documentation.  In this particular case, we’re looking at the documentation for how to animate views in Android, how to perform nice animations in Android.

And this is written in markdown, there’s really no magic here, but you see that there’s pieces of code that show you how to do things.

So in this example, we’re going to see show some work clocks and we’re going to do some animations.

But let me show what we’re going to do here.  Let me resize this window so you can get a taste for this.

What you see here is the Android emulator actually running that document.  And it’s running it live.  So if I make a change here, right, because I’m learning this API and I hit return, the color changes.  (Cheers, applause.)

And what we’ve done, we’ve started to create some exercises for people to learn how to use it.  So there’s a whole chapter on animation, this is how you do it, these are the properties that you can change, this is the method that does it.

And we have some exercises here.  In this particular case, it says animate the rotation of the clock.  All right, so we can animate that rotation.

So what I’m going to do is I’m going to change the clock here.  I’m going to change the clock here, and you see that I get code completion, this is Roslyn providing the code completion.

So I’m going to start with a rotation of 90 degrees so it can be very obvious what’s happening.  So I just press shift-return, the code re-executes immediately.  (Cheers, applause.)

All my clocks are rotated, that is not what I intended.  So what I’m going to do here is I’m going to add the rotation back to zero.  And just so you get a better sense of what’s happening, I’m going to increase the rotation time, the duration to one second.  And when I re-execute it, it’s right there.  (Applause.)

So we’re very excited about this.  (Applause.)  It’s markdown, Roslyn, C#, all targeting Android, iOS, and Windows.  Thank you.  (Applause.)

SCOTT GUTHRIE:  It’s great to have Migel and the whole Xamarin team be part of Microsoft.  It’s awesome to have them be part of the .NET Framework.

One of the questions I’ve been asked a lot since we announced our intention to acquire Xamarin was, “So, what’s the pricing for Xamarin going to look like now that it’s part of Microsoft?”

We officially closed the Xamarin acquisition about 10 days ago and so we can now officially share our plans.

Starting today, I’m pleased to announce we’re going to be making Xamarin available at no extra charge to every Visual Studio customers.  (Cheers, applause.)

This includes developers using Visual Studio Enterprise Edition, this includes developers using Visual Studio Professional Edition, and this also includes developers using the free Visual Studio Community Edition.  (Cheers, applause.)

MSDN subscribers will also get Xamarin Studio on the Mac included as part of their MSDN subscription.  And we’re also, today, releasing a new free edition of Xamarin Studio on the Mac that we call Xamarin Studio Community Edition, which is available with full feature set for every independent developer and small team out there to build great apps.  (Cheers, applause.)

I like all these applause, this is cool.  (Laughter.)  But wait, there’s more.  (Laughter.)

Like we’ve already done with ASP.NET, Entity Framework, C#, Roslyn, and the core .NET runtime, we’re also going to be making Xamarin’s core platform open source and contributing it as part of the .NET Foundation.  (Cheers, applause.)

This means everything you need to run a Xamarin app on any OS, any device is now open source.  And we think this makes Xamarin an even more attractive platform to do native mobile development.

It also means that .NET now is fully open source, fully cross-platform, and it’s a development framework that can be used to build applications on any device and on any backend operating system.  (Single cheer, laughter.)  (Applause.)

I’m also really excited to share that today Unity, JetBrains, and Red Hat are also joining the .NET Foundation.  It’s great to see the energy and enthusiasm for .NET and C# continue to grow more and more since we made our announcement about 18 months ago to open source .NET.

We think with today’s announcements, we’re going to increase that energy even further.  It’s a really exciting time to be a .NET developer, and we’re really looking forward to seeing some fantastic apps be built.

So, you know, building great mobile solutions requires more than just a process for doing development.  It also requires that you test them, you deploy them, and you use analytics on a continual basis to make them better.

The Xamarin Test Cloud service is a really great solution that enables mobile developers to easily test their mobile apps.

With the Xamarin Test Cloud, you can, in fact, upload any mobile app, not just ones written in C#, but also native Xcode, Java, Android, HTML Cordova apps, and automate the testing of them across thousands of real devices that are hosted all in the cloud.

The Xamarin Test Cloud service integrates extremely well with our existing Visual Studio Team Services offering, as well as the HockeyApp solution that’s also now part of Microsoft.  And, combined, they deliver a complete end-to-end mobile DevOps solution.

You can host code repositories in the cloud using VSTS using either Git or TFS.  Enable automatic continuous integration with our hosted build solution, which leverages thousands of servers running in the cloud to build your code without you having to manage any infrastructure yourself.

It helps automate both unit testing and device testing now with the Xamarin Test Cloud, and you can then deploy and monitor mobile apps using HockeyApp to all your beta testers and other customers.

The end result is an incredibly powerful end-to-end offering that can be used for literally every type of mobile project out there.

What I’d like to do is invite Donovan on stage to show it off.  (Applause.)

DONOVAN BROWN:  Thank you, Scott.

It is such an exciting time for DevOps right now.  DevOps is the union of people, process, and products to enable continuous delivery of value to our end users.

With Visual Studio Team Services and the addition of Xamarin and HockeyApp into the Microsoft family, we have everything that you need to enable DevOps at your organization.

The cool thing is there’s nothing to install.  There are no dev devices to buy, and there’s no VMs to manage because we host it for you in the cloud.  All you have to do is focus on your application and leave the rest to us.

So what I’m going to do is I’m going to use the app that we showed you yesterday, the Microsoft Health App.  I’m just going to rub a little DevOps on it and make it better.  (Laughter.)

What we’re going to do is we’re going to begin with testing, which is an incredibly important part of any DevOps process.

Creating tests can be very difficult, but with the Xamarin Test Recorder, we make it extremely easy.

I can either use an Android emulator like I have here, or actually physically attach a device to my computer.  And then all I have to do is use the application.  As I click on it, it will actually start to record my actions.  As I start to enter information, all that information gets captured for me.  And as I use it, it’s automatically tracking my actions and recording them, and even generating code for me.

This code, I can check into my version control and use it in my CI and my CD pipeline.

Well, this is where Scott told me to pause for applause.  So I think that’s your cue to clap.  (Cheers, applause.)

So if I pause later on, I’d probably just start clapping.  (Laughter.)

OK, so what I’m going to do here is I’m actually going to be able to export this directly to the test cloud, which he just talked about.

The test cloud will allow me to use this test against thousands of physical devices.

When I actually jump over to the test cloud, what you’re going to see is the ability for me to actually filter — say I only want to look at phones.  And I want to see the most-popular phones.  And this shortcut lets me say I want to run my test on the top 10 devices in that particular category.

Now, what I can do is simply go ahead and select those devices.  And when I click on done, the Xamarin Test Cloud is taking my code, taking my test, and uploading it for me to the cloud.  It is also provisioning all the devices that I asked for and executing my test on those physical devices.

Now, the power here is when we actually go back in and look at an existing test run.  Here I have one that’s very interesting because I had two tests that failed.  Man, the test cloud makes diagnosing problems extremely easy and powerful.

As you can see on the left-hand side here, my history test failed.  Now, what I can do is if I click on the left-hand side here, I can navigate through all of the different screens of my application.  And on the right-hand side, the actual phones are updating show me exactly what I should be seeing.

But when I get to this step here, all of a sudden one of them does not match.  It was able to identify that there’s something wrong and I need to draw your attention to that.  If I need to, I can just click on it, drill in, and see a really nice image.

Now, an image is good, but a video would be better.  What I can do is take any step in this list that I’d like to, go ahead and click on playback, and now I’m actually watching a video of that application being tested.  (Cheers, applause.)

I’m going to pause the video because what I really want to show you here is the fact that there’s so much information at my fingertips.  I can actually look at the memory usage, I can look at the CPU usage, or I can even download device logs and test logs so I can go ahead and pinpoint exactly what went wrong and then go back in and fix that so that my developers, my testers, and my users get the best experience that they possibly can.

Now, this is great, but imagine a world where this happens every single time you check in code.  Every change being validated against thousands of devices.  Well, that day is today because with Visual Studio Team Services, we give you the ability to do this throughout your continuous integration and continuous deployment pipeline.

Visual Studio Team Services is everything that you need to turn an idea into a working piece of software for any language targeting any platform.

This is extremely powerful stuff.  We don’t care if it’s Android or iOS, we don’t care if it’s Java or JavaScript.

What we’re looking at here is a Kanban board, which allows me to visualize my ideas from inception all the way to completion.  I can go ahead and add UI dist to the board, if I’d like to.  I can go back here and actually break down existing items.

And what I really love about this is the ability for me to go ahead and create a brand new branch of code in TSBC or in Git, to isolate these changes until I feel that they are ready.  And when they are, I will merge them back into the master branch and kick off a continuous integration build.

If you’ve ever seen me present before, you know I like our CI system because it allows me to build anything I want anywhere I want.

Fun fact, the first time I installed Linux was after I joined Microsoft.  Let that sink in for a second.  It is a new age for Microsoft.  Why would I install Linux after joining?  Because our tools work happily on Linux, on Mac, and on PC.  So I had to make sure I understood that world so that our tools worked perfectly in that world as well.

So what we have here is a build definition.  And it does lots of cool stuff for me.  It manages my licenses for me, it resolves all my NuGet packages, and it allows me to build on any platform that I want.

But build it is only half of what I want to do.  I also need to test it.  So remember those tests that I just created earlier?  Every time I check in my code, I can actually run those tests in the test cloud immediately.  (Cheers, applause.)

The end result is this screen here.  This is a screen that’s the build summary that brings together all the value that I’ve been talking to you about.  The work items that I showed you are actually displayed on the screen because it knows what I was working on when I actually created this build.  It can actually tell me every commit to code that I made to make sure that they were made correctly.

The code that I uploaded to the Xamarin Test Cloud and executed there, those results have now been brought back down into Visual Studio Team Services, completing that loop for me.

If I need to go back and look at those videos, the link is directly here for me as well.  And I’m going to move this code through a pipeline.

I know what you’re thinking right now.  Your mind is blown because this is incredible, incredible stuff.  Microsoft is changing the rules for DevOps, we’re enabling it for everyone everywhere.  And what I love about this is we can actually deploy this code for you as well.

So what I’m going to be able to do here is see very quickly, in version 25, that’s in production right now.  Version 26 is making its way through my alpha and my beta testers.

Now, how did I get it to them?  I got it to them using release management.  Release management allows me to not only deploy my front end using some really hot technology from HockeyApp, a startup that we acquired about a year ago, it is tightly integrated with Visual Studio Team Services.

I’m also able to deploy my databases, my Web services, the infrastructure that is going to actually support my mobile application is all being deployed for me automatically.

When release management runs, my testers get notifications on their phones, allowing them to instantly see there’s a new version.  It also allows them to go ahead and download that.  HockeyApp springs into action and starts collecting device information, it starts collecting analytics on the user, it starts telling us about all the sessions that we have, and even tracking crashes.

All that information is then surfaced for me here in the HockeyApp portal.  I can see all the information that I just mentioned, and I can even drill down into a particular crash.

If I look at a crash, I can see exactly how many times it’s happened, and if I need to, even get down into a stat trick.

So before I leave, I just want to reiterate, all this power is available for everyone on any language targeting any platform.  There is nothing to install, there are no devices to purchase, and there are no VMs to manage because we handle it for you.

Here at Microsoft, we create the products that are going to shape the process and enable your people to do amazing, amazing things.  Thank you so much.  (Cheers, applause.)

SCOTT GUTHRIE:  Donovan showed you the power of using the cloud and specifically Visual Studio Team Services, Xamarin Test Cloud, and HockeyApp to really make developers and development teams much more productive.

And the great thing about Visual Studio Team Services is you can enable this not just for mobile solutions.  You can use it for every app type and every development project, including projects that aren’t yet deployed to the cloud and where you want to basically deploy them back to an existing on-premises environment.

And we’re seeing organizations of all sizes, including some of the very largest enterprise customers, starting to use Visual Studio Team Services for all their work.

Shell is one of the largest and best-run IT organizations in the world and is making a big bet on the Microsoft Cloud.

What I thought I’d do is watch a quick video of their experiences as they’re adopting Visual Studio Team Services for all the developers inside Shell.

(Video:  Shell.)

SCOTT GUTHRIE:  (Applause.)  Now that we’ve covered some of the mobile work we’re doing, let’s switch gears now and talk about another of our advanced workloads in Azure, which is IoT.

There are going to be more than 20 billion Internet-connected devices in the world in just four years’ time.  Integrating the additional data and insights from these billions of devices deep into your applications and business processes is going to completely transform your solution.  It’s going to fundamentally change the way we also all live and work.

We introduced our Azure IoT offering two years ago.  It provides an incredibly rich set of IoT capabilities that can be used across a wide variety of different IoT scenarios, including both consumer and commercial use cases.

This slide here highlights just some of the great companies who have built and deployed some amazing solutions using Azure IoT.

What I’d like to do is invite one of those companies on stage to talk about the great consumer experiences they’re building with Azure IoT.

Please join me in welcoming Thom Brenner from BMW.  (Applause.)

THOM BRENNER:  Hello and good morning, everyone.  This is super exciting.  Thank you, Scott, for inviting us here to speak about digital services at BMW.

Our vision at BMW really is about seamless mobility in the future.  It has three important pillars, and digital services is one of the pillars.

But the really key about that vision is — you see that on the slide in the background, to bring all those pillars to life together.

And to give you a little bit of a glance of how that can look in the future, let’s roll the movie.

(Video:  BMW.)

SCOTT GUTHRIE:  I want one of those cars.  (Laughter.)

So BMW clearly has a bold vision.  And it sounds like part of that vision, you’re really making a big shift from building services just for cars to also integrating the car into the overall customer digital experience.  Can you tell us a little bit more about that?

THOM BRENNER:  Yes, sure.  So the customer really and the mobility needs and the services the customer is using is really in the center and in the heart of our digital services vision.

In the future, we believe sheer driving pleasure will be more than driving.  For our customers, mobility starts before they actually enter the car, and it doesn’t stop after they leave the car.  The car and the BMW will become the ultimate smart device, perfectly integrated into your digital lifestyle.

And it will connect and integrate the smart devices we’re using today and the devices we’ll be using tomorrow.

SCOTT GUTHRIE:  Can you tell us a little bit more about the BMW Open Mobility Cloud and how you’re enabling these experiences?

THOM BRENNER:  Absolutely, Scott.  So to enable this type of experiences, you can’t build an app anymore.  We’re really thinking about the cross touch points, and we’ve built a highly flexible service architecture for BMW that we call Open Mobility Cloud.

It provides us cloud capabilities and big data services with analytics and machine learning, and it also allows us to create new experiences, personalized and contextual, together with service partners and to connect the devices of the future.

SCOTT GUTHRIE:  And how did you use Azure to build the BMW Open Mobility Cloud?

THOM BRENNER:  Azure, really, for us, provided the tool set to build this type of flexible architecture and scale it to our needs.

As you can see on the slide in the back, we pretty much use any other — a lot of Azure services and the key is really Azure’s breadth of capabilities has allowed us to build that type of platform.

SCOTT GUTHRIE:  Can you tell us about the customer experience in this first release that you’ve built on top of these technologies, as well as some of the exciting announcements you’re making today?

THOM BRENNER:  Absolutely.  I mean, we built this whole technology stack to build great experiences for our customers.  And those experiences built on top of the Open Mobility Cloud called BMW Connected.

The first version of BMW Connected will focus really on managing daily mobility needs.  It will put all your destinations in one place, no matter what source the destination came from.  It will make it accessible, including estimated drive times in your car on your dashboard, and outside of your car on your phone.

It will smartly learn your routine drive and will notify you ahead of time if unexpected traffic is ahead and you need to leave early, for instance, to drive to work or to pick up your kids from school.

It will tell you when you leave about scheduled destinations that could be basically coming from your calendar, for instance.

And in case you get delayed while you’re driving, there’s a really easy way to let family and friends know when they’re going to expect you.

And we also integrated remote services like locking your car.  So BMW Connected becomes really one app, you don’t need to switch around anymore.

And the best thing is all BMW owners and connected drive customers in the U.S. can download the first version of BMW Connected for the iPhone today.  (Applause.)

You can expect frequent updates from us, like any other Internet company.  We will be expanding the service and adding new capabilities step by step towards the vision together with our customers and users.

So please come down and visit us downstairs at this awesome white BMW 7 series to learn more and thank you, Scott, for inviting us to this amazing show.

SCOTT GUTHRIE:  Thank you for building on Azure.  Thank you.  (Applause.)

So BMW is a great example of a customer using Azure IoT and the overall Azure platform to significantly enhance the consumer experiences of the products and services they deliver.

Schneider Electric is another leading energy provider who is using Azure IoT to significantly enhance their commercial services as well.  Let’s take a quick look and video at their solution.

(Video:  Schneider Electric.)

SCOTT GUTHRIE:  (Applause.)  One of the core capabilities that all IoT-based solutions need is a way to securely integrate IoT devices with the cloud.

Azure IoT makes it incredibly easy to securely integrate and manage any type of IoT device.  It includes powerful data ingestion and command and control capabilities that can scale to handling millions and even billions of devices.  As part of the solution, it also makes it easy for an app track and visualize how a solution is performing, the data within it, and to integrate business logic and workflow.

Now, developers can integrate business logic with Azure IoT in several ways.  You can run custom code and scale out logic using our cloud-based infrastructure services, for example, VMs, cloud services, and our new Azure Container Service and Azure Service Fabric offerings.

We’re also today introducing a new Azure service that makes it easy to integrate functionality with both Azure IOT and a wide variety of other scenarios.  We call this new service the Azure Function.  And it enables a serverless compute option within Azure.

This means you can now run code in response to events without having to provision or manage VMs or compute clusters.  You can write this code using a wide variety of languages, including C# and Node.js, and set it up to automatically execute in response to a variety of different events happening.

For example, certain conditions in Azure IOT or a file being saved into Azure storage.  And you can basically, then, trigger and run any code you want in response to that.  And we’ll dynamically scale up and manage it for you.

There’s no fixed price that you have to pay.  Instead, you only pay per execution of the code, which makes it incredibly cost effective.  And in addition to delivering it as a service on Azure, we’re also making the runtime open source, which means you can take any app you build and run as a service on Azure, and you can actually also then deploy and run it in other clouds as well.

What I’d like to do is invite Cameron on stage to show off how you can use the combination of Azure IoT and Azure Function to very quickly get started on any type of IoT solution and scale that to any size.  Here’s Cameron.

CAMERON SKINNER:  Thanks a lot, Scott.  (Applause.)  Thank you.

So, as Scott mentioned, Azure IoT is actually a collection of hyper-scale Azure services that are designed to handle the most rigorous of workloads.

Azure IoT Suite is a product that stitches together those services into pre-configured solutions that are designed to get you started within minutes and allow you to customize those services to fit your needs.

Let me show you what I mean by this.  Over here, I’m on  And as I start to click through, you’ll notice those two pre-configured solutions that I just mentioned.  And these two pre-configured solutions represent two very common patterns that we see out in the marketplace, remote monitoring and predictive maintenance.

We’ll have more to come in the days ahead, but today I’m going to focus on the remote monitoring piece.

I want to show you all you need to create one of these solutions is simply a solution name, you select a region, and you decide what Azure subscription you want to deploy this solution into.  Now, I’m actually not going to actually go deploy this right now, it takes about five minutes to deploy all the services into that subscription.

Rather, I’m going to jump over to a tab that shows a solution that I’ve already pre-deployed.

And what you see here is actually the results of all the orchestration of all those backend services coming together to give you this rich, comprehensive dashboard without you having to write one line of code.

There’s a lot of features, a lot of functionality in the Azure IOT Suite.  I don’t have time to go through all of them, but I do want to drive your attention to this upper corner here where you see a graph.

This graph is showing you the data coming off a particular device attached to the solution, specifically a temperature data that’s represented by this black line, and humidity represented by the green line.

What’s not interesting is necessarily this graph itself, but what’s happening behind the scenes that makes this graph possible.  As we mentioned, a number of services working together.  In particular here, you’ve got Azure IOT Hub and Azure Stream Analytics that’s making this sort of thing possible.

The other thing that’s interesting about this particular graph is that it’s real-time data.  Real-time data coming from a device that I have here in front of me.

And to kind of exemplify the fact that this is real-time data, I’m actually going to make this temperature, I’m going to cool off the temperature gauge here, and hopefully you see that black line here dip a little bit.  There you go, which shows the real-time nature.

That was a message going up from that device.  You can do that all day long.  That’s fine.  (Applause.)  Thank you.  That’s great.

That was a message coming from the device up to the Azure IoT Hub, it gets crunched by a bunch of those back-end services and displayed right here.

Now, I also want to focus one more feature of Azure IoT Suite that I want to emphasize here, and the fact that I can create custom rules.  And for this device, I’ve actually created a rule here — let me focus in on that so you can see this.

I created a rule that basically says, “Hey, whenever the temperature of this device drops below 20 degrees, I want an alert to fire.”  OK?

Now, this is really interesting, and it’s also a great spot where I can talk about the synergies between Azure IoT Suite and the newly announced Azure Function because what I want to do is I want to write an Azure Function that is executed whenever this alert goes off.

So let me show you what it looks like to create an Azure Function.

Over here in the Azure portal, you’ll see the Azure Function blade.  I click the new function, and what I’m presented with is a number of templates that I can choose from.

Azure Function is such a great thing for the Azure IOT Suite customization because I don’t have to think about things like what VMs am I going to have to go deploy and what’s my CPU utilization?

I can just focus on the event source that I want to associate this function to.  And these templates give me a rich set of event sources that I can choose from like Event Hub, generic Web hosts, et cetera.

For the Azure Function that I prepared for this particular demo, I called it the IoT alert.  And what I want to do here is I actually want to build up a message, Azure IoT, and I want to send that message, which you see here, and this is just simply Node.js code that I’m associating with this Azure Function.

I want to send a message to a device on this stage, and not just the device, I want to send it to this shirt, this shirt.  And I want to send it to this shirt when the device here goes below 20 degrees.

So now let me show you what I mean by this.  So let me go back to the dashboard.  And what I need to do is I need to reduce the temperature of this device below 20 degrees.  Now, it’s kind of warm up here, especially with the fire-retardant vest that I’m wearing.

So let’s see.  I guess it’s below 20.  OK.  And then let me come over here.  Let’s see what happens.  There we go.  (Cheers, applause.)  The Azure IoT connected shirt.

Now, we got this thing together by using — this is an Adafruit  board that is part of the Azure IoT starter kit that we’re going to be announcing today, along with a number of other boards such as the Intel Edison board.

Have a great Build, thank you very much.  (Cheers, applause.)

SCOTT GUTHRIE:  I need to keep reminding Cameron before stage, just don’t spill any water on your shirt.  We weren’t sure quite what would happen or if he’d be here.  (Laughter.)

So, you know, you saw that you can now build IoT solutions using all the services and all the capabilities that Cameron just demoed there.  As you can see, it makes it incredibly easy to get started with IoT.

And as you heard from BMW and you heard from Schneider Electric and others, you can scale these solutions to literally any size and any type of scenario.

In addition to the preview of Azure Function and of the Azure Starter Kit, we’re also announcing new updates to Azure IoT including a new Azure IoT Device Management Service, as well as a new Azure IoT Gateway Device Service that are now also in public preview.  We’ve got some great talks throughout the week to go into it more.

So Azure Function provides a great way to execute code in response to IoT events.  And as applications get bigger, you also often need the ability and the agility to enable even richer application logic.

And a micro-service-based architecture enables complex applications to be composed of small, decoupled services that can be deployed, updated, and scaled independently.

You know, Azure provides a flexible set of capabilities that enables you to create a microservice-based architecture and enables you to basically balance both scale and control as you do it.

At the lowest level, we have a new capability we call our Virtual Machine Scale Sets that provide a bunch of capabilities that make it easier to deploy VM infrastructure underneath.  VM Scale Sets have been in preview the last several months, and I’m excited to announce that they’re being released in general availability form today.

Built on top of this kind of core VM Scale Set technology, we then have two higher-level microservice-based compute services, the Azure Container Service and Service Fabric.

The Azure Container Service provides a fully managed service that enables you to easily deploy and orchestrate applications built using containers.  The Azure Container Service provides deep integration with Mathos, with Docker, Swarm, Marathon, and other technologies.  And it supports the ability to run all this technology on both Linux as well as Windows Server-based container technology and it’s available in public preview today.

The Azure Service Fabric then provides an even higher-level, container-based programming model.  It’s more of a prescription microservice framework that includes automatic deployment and management of both stateless and stateful microservices hosted within Docker-based containers.

It has both .NET and Java APIs and supports running in both Windows as well as Linux-based infrastructure.

And just like Azure Functions, the other nice thing about the Service Fabric is it’s provided both as a managed service within Azure, which means you can basically spin it up without having to manage any of the infrastructure yourself.  It’s also, then, available as a separate runtime that you can then deploy into any Windows Server or Linux virtual machine and run in any cloud, including Azure stack, inside AWS, inside VMware, and open-stack-based environments.

We use Service Fabric ourselves very heavily within Microsoft.  In fact, much of Azure, SQL DB and Office 365 are built using Service Fabric, and it scales to run across hundreds of millions of compute cores and virtual machines across the company.

During the public preview of Service Fabric, we’ve also seen a bunch of great companies build their own solutions on top of it.   And these are just a few of the logos here.

One of the really cool applications and interactive applications built on Service Fabric is Age of Ascent, which is a massively multi-player game that runs entirely on Azure.  What I want to do is just show a quick video of them talking about their solution and how they’re leveraging Service Fabric.

(Video:  Age of Ascent.)

SCOTT GUTHRIE:  (Applause.)  What I’d like to do now is invite Scott Hanselman out to walk through a real Service Fabric-based application and talk about the benefits it provides.  Here’s Scott.  (Cheers, applause.)

SCOTT HANSELMAN:  Hi, friends.  So we’ve just seen how Age of Ascent uses Microsoft Azure, ASP.NET Core and Service Fabric to scale not just a massively multi-player online game, but an ultra MMO.

Now at this point of Build, you might expect us to bring you North Wind in Space or Contoso Trek.  (Laughter.)  But that’s lame, we want to try something a little different right now.

We’ve got the real code from Age of Ascent running right here.  I’m going to remind you that this is a professional 3D game running in the browser with no plugins on Azure.  I think that’s Satya right there.  Hang on.  No, it’s Guggs.  It’s Guggs.  I’ll get him later, hang on.

The back end is entirely on Azure using Service Fabric.  If you look in that top-left corner there, you can see that we’re pushing 35,000 transactions a second right now.  As you saw in the video, their CTO is one of the primary committers to Kestrel, which is the ASP.NET open source Web server, and he helped push it to over a million requests a second.

Now, this game here is running in Service Fabric, I’m going to switch over to Service Fabric.  Age of Ascent uses hundreds of machines and it scales in and out dynamically based on the load.

And you can see here on the left that the game is made up of dozens of microservices, and each one is concerned with their own responsibilities.  Training drones and machines and clans and alliances.  And each of these microservices will go and report their health up to the larger application.

You can note here that all systems are go.  Everything is green.  Therefore, the overall app is healthy.  Keep that in mind, that’s going to be important later.

I’m going to split this and we will bring Solution Explorer up here.  And when I said that this was real code, that we want to look at how this thing is built.  Now, you can write your microservices in most any language.  As we saw, even Java on Linux, if it makes you happy.

In the case of Age of Ascent, they’ve chosen to write them with high-performance open source ASP.NET Core.  See here on the right we’ve got the microservices, and there’s a one-to-one relationship between the services in Visual Studio and those in Service Fabric Explorer.

And what’s exciting about this is that you’re already ASP.NET developers.  You’re already .NET developers.  You already know how to do this stuff.

OK, so what’s new?  Well, when you start scaling your apps in the cloud, you can hit onto some hard problems.  And Service Fabric solves the problems that happen at cloud scale.  So let’s talk about one of them, which is managing state.  OK?

Age of Ascent is handling literally an entire universe of state.  There are lots of things going on here, all different players doing different things.  It’s pretty hard to manage.  And a good microservice will encapsulate their own state.

Traditionally, that’s involved pushing state to an external store.  And that adds complexity and then it can become a bottleneck.

Service Fabric makes that management of state more natural by letting it live side by side with the code so it’s more like a traditional object-oriented design, except it’s scaled to the cloud.

So, for example, if I go here into the trade and industry service, this is some real code here.  We can see how Age of Ascent is using these queue and dictionaries, that they are I-reliable queue and reliable dictionary to go and let players manage and upgrade their weapons.

Now, scale this to millions of people doing it all at the same time and it becomes an interesting problem.

When I go and commit this transaction, the state change is going to be automatically replicated across the cluster, and it’s going to scale automatically.  And it’s going to make it resilient to machine failures.

Now, remember before, speaking of failures, that I said each service rolls up and reports its health.  You get to decide what a healthy application is.

You see all these ships flying around.  Those are all training drones.  Each one of those is one of these microservices out there thinking and working.

And those training drones and the service reports its health up to Service Fabric via this health monitor.  So we’ve decided what a healthy drone is.

Now, let’s take a look at the training drones service.  This might seem impossibly small, but basically it handles the creation of these little AI ships that are all flying around and they’ll shoot at me if I shoot at them.

This code manages their creation and their behavior of the actual drones that I’m seeing in the game right now.

But Service Fabric makes it easy not just to upgrade the app, but to upgrade individual services without down time.  Down time is a problem in a multi-player game like this.

So I’m going to make a little tweak to Age of Ascent so that I can defeat the evil Guthrie, Nadella, Myerson because I don’t like how hard the game is.  They stacked it against me.  I’m going to make them weaker.

Here, we see the starting health is 100.  Clearly, we’ll just make that zero.  (Laughter.)

Now, there are runtime checks that are happening constantly, health checks, when I go and upgrade the service so I don’t have to really worry about making a change like this.

Now, I can test my updates locally with my own local instance of Service Fabric, but I don’t always test my code.  And when I do test my code, I test it in production.  (Laughter.)  (Cheers, applause.)  Thank you.

So I’m going to go into Visual Studio and I’m going to hit publish and we’re going to go and publish this to the cloud and we’re going to make our drones a little bit easier to beat.

Now, on the left-hand side, we’ve got the Service Fabric, on the right-hand side, we’ve got the game.  And you notice it just popped.  It just said upgrading, see.  And this just clicked.  So I can hit upgrade.  And the upgrade is going to get staged across five upgrade domains.  So, at most, 20 percent of the machines will see the new behavior at first, OK?

So I can go and fly around.  I’m still in the game.  Guthrie told me to take out Satya, and I have not been able to find him.  The game is upgrading and the changed code gets rolled out to those machines domain by domain and the health checks are being run in order to determine if Service Fabric should continue upgrading or whether it should roll back.

So everything looks to be working — oh, crap.  So everyone is blowing up and spawning and then dying instantly.  (Laughter.)  I should have made their health one.  (Laughter.)  The classic massively multi-player off by one error.  (Laughter.)  Awkward.  (Laughter.)

So that issue has been detected.  Look right there, it says upgrade states.  Rolling back is happening, in progress.  Only 20 percent of the drones exploded, and the game has now healed.  I never stopped — oh, Guggs just went by again.  He’s just in my face.  How did Service Fabric know that was a bad upgrade?  Because the Age of Ascent code told us that health monitor looks for drones that were killed without taking fire.  And then when I triggered that, when I set the spawn health to zero.

Now, the universe can’t stop due to a bad upgrade or a lousy developer, and Service Fabric makes sure that it doesn’t, it’s all running on ASP.NET Core in Azure.

So what have we seen?  Right?  We’ve seen how partners like Age of Ascent can create these compelling, multi-player experiences using a microservices architecture built on Service Fabric.  And even though I made a coding mistake, the game not only continued running, but it healed itself.

You can use Service Fabric today.  It’s released, it’s ready for production.  All right, hang on a second, I think Guggs is behind me.  And what’s going on?  Dammit.  I’m not good at this game.  Oh, crap.  Guthrie.  (Groans.)  (Laughter.)  Thanks, everyone.  (Cheers, applause.)  Go to

SCOTT GUTHRIE:  So we’re really excited to announce today the general availability release of Azure Service Fabric.  Everything that Scott just showed you there is now available in general availability form, and you can now build apps that literally can scale to any size and even model the entire university.

We’re also, today, making available the preview of the Service Fabric runtime on both Windows Server and Linux.  This stand-alone runtime can be used in any cloud environment so you can run it on other clouds like AWS or on premises in other virtualized systems.  And we think this provides fantastic developer productivity and fantastic choice and flexibility in terms of how you build your solution.

So let’s switch gears now and also talk about some additional capabilities we have in Azure, specifically the ability to use data and intelligence to infuse richness into every app experience.

So Azure delivers a rich set of data, analytics, and cognitive services that enable developers to build smarter apps.

With Azure, you can store and process any volume, variety, or velocity of data and run real-time analytics and machine learning algorithms against it.

And as you saw in Satya’s keynote yesterday, we’re also now delivering higher-level cognitive services like speech and vision APIs that are all built on top of Azure and which you can easily integrate into any app to deliver even richer end-user experiences.  And customers are delivering some pretty amazing solutions using all of these capabilities.

AccuWeather is one of the customers we’re working with who have just immense amounts of data, literally trillions of objects stored inside the Azure Storage System.  And they’re deriving real intelligence from it that changes the lives of millions of people.  Let’s watch a quick video about their solution.

(Video:  AccuWeather.)

SCOTT GUTHRIE:  (Applause.)  Please join me in welcoming Christopher Patti, Chief Technology Officer of AccuWeather.

CHRIS PATTI:  Thank you, Scott.  Appreciate the opportunity.  (Applause.)

SCOTT GUTHRIE:  So tell us about the impact AccuWeather has on people’s lives.

CHRIS PATTI:  Sure.  So weather is one thing that impacts every one of us.  It’s very, very personal.  Whether deciding to take an umbrella to work, to go on a run or a bike ride, or something as serious as getting a lifesaving severe weather alert, where literally every second counts, we rely on the Microsoft Cloud.  And people rely on us to get that information out as fast as possible to keep them informed and safe.

SCOTT GUTHRIE:  Great.  Can you tell us a little bit about how AccuWeather is using big data to really make this difference?

CHRIS PATTI:  Sure.  So big data really is the heart of what AccuWeather is.  We’re really a big data company.  Everything starts with data.

We’re creating intelligent weather solutions using highly predictive, visual, and interactive with Azure as the foundation.

In fact, we’re now taking 15 billion data requests every day worldwide and that’s resulting in trillions — actually 2 trillion storage objects all inside of Azure Data Lake.

SCOTT GUTHRIE:  And 2 trillion objects inside of Data Lake is pretty amazing.  Can you talk about how it’s helping you handle the challenges of really managing all of this data?

CHRIS PATTI:  So weather data is complex.  It’s actually one of the original big data challenges due to the size, scale, real-time requirement, and location of the content.

And with Microsoft Azure, we’re able to scale instantly and have absolute reliability, which is critical when severe weather hits.

Using other products such as machine learning and Bing Predicts, basically allow us to provide very important content to our end users as fast as possible and allows us to create innovative solutions that are targeted to their individual markets.

SCOTT GUTHRIE:  And in addition to providing, obviously, the consumer experience, you’re also a leading provider in commercial weather analytics.  Can you tell us about this business?

CHRIS PATTI:  Sure, Scott.  So we serve over 200 of the Fortune 500 companies.  Basically, our goal is to give them data-driven decision solutions based on the world’s most accurate weather information.

We’re streamlining our processing of all that big data using Azure Data Factory, and that’s allowing us to really innovate what we’re able to bring to our customers.

We’re also about to announce a Power BI pack to allow the world’s most accurate and detailed weather information to be brought to a large global audience and a product everyone’s familiar with.

SCOTT GUTHRIE:  Awesome.  So what’s ahead for AccuWeather now?

CHRIS PATTI:  So Microsoft’s mission is to empower everyone on the planet to do more.  And that’s our focus also.  We want to be able to give the most accurate data in the quickest way to save the most amount of lives.

People depend on AccuWeather.  What we do is so important.  We literally save thousands and thousands of lives, but with the Microsoft partnership, we can be assured that we have you protected when the weather is at its worst.

SCOTT GUTHRIE:  Fantastic.  Thank you so much, Chris.

CHRIS PATTI:  Thank you so much, Scott.  (Applause.)

SCOTT GUTHRIE:  So we have a bunch of great updates to Azure this week in the data analytics and cognitive services space and a lot of great breakout talks covering a whole bunch of them.

You know, one of the data services in particular that has a bunch of great enhancements is our managed NoSQL service offering thought we call DocumentDB.  DocumentDB is a fully managed NoSQL database, which means you don’t have to worry about infrastructure or patching or updates to it.  And it can scale from just a few gigabytes of data all the way to managing hundreds of terabytes across the system.

And what’s great about DocDB is it scales incredibly well and can support extremely high-performance applications.  You can literally run millions of database operations per second against it with extremely low latency.  And it provides rich query semantics against all of the data stored within it.

You know, today we’re announcing a whole bunch of updates with DocDB.  In particular, we’re announcing a new pricing and scaling set of options that now allow you to scale how much data you want to store and how much processing power you want to do it independently.  And this enables you to tune your usage even further and save a whole bunch of money.

Today, we’re also rolling out our new Document DB global database support.  This enables you to automatically replicate your NoSQL databases across multiple Azure regions, and this enables you to take real advantage of Azure’s hyper-scale reach and the fact that it runs all over the world to easily build truly global applications that have high availability and that can provide extremely low latency anywhere in the world.

We’re also excited to announce today that we’re adding additional NoSQL programming models on top of DocumentDB.  Starting today, you can now connect to DocumentDB using any standard MongoDB driver or programming API.  (Applause.)

This now allows you to take existing MongoDB tools, libraries and skills, and take full advantage of our managed and scalable NoSQL database offering.

For example, just yesterday we did a blog post talking about how we made it really easy to port Parse applications to Azure without having to change a single line of code.  Parse internally uses MongoDB to store data, and we’re able to leverage this new MongoDB support in DocumentDB to enable this code to just work without any modifications.

You know, one of the cool apps that’s built on Azure and is using our DocumentDB service is the Walking Dead, No Man’s Land game.  This game reached the No. 1 position in the Apple app store for free apps and handles just a huge amount of load and users.

The app does more than 1 billion DocumentDB queries each day and sees latency of less than 10 milliseconds at the 99th percentile when it does it.  Here’s a quick video of them together about their solution.

(Video:  Walking Dead.)

SCOTT GUTHRIE:  (Applause.)  In addition to enabling you to store and process data, one of the things we’re also focusing on and making some exciting announcements this week is enabling you to bring data delight to your end users.

Last summer, we launched our new Power BI offering at Microsoft.  Power BI enables you to visualize and interact with data from any source, including data stored in Azure, coming from on-premises databases, as well as coming from other SaaS apps and cloud solutions.

And it works both within a browser as well as in iOS, Android, and Windows-based devices.

I’m really excited to announce today that we’re enabling a new Azure service that we’re launching that we’re calling Power BI Embedded.  And with Power BI Embedded, you can now take the Power BI Embedded, you can now take the Power BI data visualization and reporting functionality and directly integrate it within your own applications.

You can do this without requiring your users to buy or even be aware of what Power BI is.  Instead, you can basically take advantage of the Power BI Embedded SDK so it just feels naturally like part of your application using the same authentication, login, and overall consumer experience that you’re already delivering to your end users.

And, best of all, the pricing for Power BI Embedded is just like any other service on Azure.  You pay only for what you use without requiring any fixed up-front costs or any per-user pricing.

This enables a very cost-effective way for you to integrate data visualization and reporting functionality into all your applications.

Milliman is a great customer of Azure who deliver actuarial financial services to their customers as a SaaS-based offering.  And they use Azure to perform massive computational analysis for their customers every single day, with some of their customers consuming hundreds of thousands of compute cores for a particular run.

Let’s take a look at how they’re taking their existing solution and how they’re looking to leverage and integrate the Power BI Embedded functionality in it to deliver an even richer SaaS-based offering.

(Video:  Milliman.)

SCOTT GUTHRIE:  (Applause.)  So Power BI can be embedded into any existing application in a really easy way, including as you saw like Milliman into any SaaS-based solution.

What I’d like to do is invite Lara on stage to show off some of these capabilities in more depth and how easy it is to get started.  Here’s Lara.

LARA RUBBELKE:  (Applause.)  All right.  Let’s talk about some data.  I am super, super excited to show off the Power BI Embedded service in Azure.

We’ve already had a ton of customers who’ve started using this, including Milliman.  And for their SaaS application, it’s the right price model, it’s the right delivery model.  And for SaaS developers out there, Azure is the only cloud platform that gives you a service for rich reporting and analytics.

What I want to do is show you how this works.  And we built our own sample SaaS application for Fabrikam Aircraft Maintenance.  And Fabrikam Aircraft Maintenance sells itself to a number of customers.  And you notice I’m logged in as a customer of Fabrikam.

Off to the left in the reports menu, I have a number of reports I can choose.  And when I select one, Power BI just embeds the report and renders it directly in the application.

As a customer of Fabrikam, I don’t have to worry about purchasing a separate product for reporting off my data.  As an end user of the application, I don’t have to leave the application to analyze my information.

And for Fabrikam, they get all the rich, interactive visualizations and it lets Azure manage the service.

Power BI Embedded supports all the same visualizations you get with the standard product.  It even will support those custom visualizations.  These are very specific visualizations you’ll create specifically for your business.

Now, Power BI Embedded is available in full public preview starting today.  (Applause.)  Yay!  (Applause.)

So everybody can start using it today.  And it’s actually free until I believe May 1st.  So everybody get out there and start using it.

And what I want to do is walk you through how you’re going to get set up with Power BI Embedded.  And we’ll move to the Azure portal.

We’re going to create a new, under data and analytics, Power BI workspace collection.

And a workspace collection is simply a repository.  This is where you’re going to host your reports and manage your reports for your applications.

Creating a workspace collection takes about five or ten seconds, and then you can start loading reports and start baking them into your application.

So what we’re going to do now, we’re going to go and create a couple reports and we’re going to load them up into our app.

So let’s move over to Power BI Desktop.

Power BI Desktop is a free tool that anyone can download.  You can start using this and create your own report.

As a SaaS developer for Fabrikam, the people that created the application, we use this to create the reports that we’ve pushed out to all of our customers, to every one of their workspaces.

But the beautiful thing is that I can also enable my customers to create their own reports.  They can connect to the Fabrikam data, create the reports, and load them into their own tenants.  Let me walk through that scenario.

I’m now a user of Fabrikam.  I’m one of the customers, and I’ve connected to my Fabrikam data.  And I want to understand a little bit about the business analytics.  So we’re just going to create a quick little report.

And I’m going to look at a couple of measures.  So we’re going to look at lost revenue over time.  And with just a couple of clicks, we can easily see that we had a big spike in lost revenue in the third quarter.

Well, I want to investigate a little further.  So we’re going to add another visualization.  We can just simply click and add another visualization out here.

This time, I want to understand how many parts, what were the costs of the parts, and then the lost revenue.

I’m very interested in this over a type of aircraft in my fleet, and big bubbles in the upper-right-hand corner mean something is bad.

So I have a couple of types of aircraft that are causing problems with lost revenue.

Most important, I want to see this over time.  I just simply drag that time dimension and I can see that play over time, I can even interact with it as it plays over time.  And I’ve got a great report that starts to tell me something about my business.  That’s pretty impressive.  (Applause.)

So I know something, but I need to go drill a little further.  I’ll do that later.  But I want to share this report with the other people in my company that are using the Fabrikam application.  So I’ll save the report.

Let’s go back to the application.  Now, when we designed this application, we used the Power BI SDK to create an experience to upload reports.  So as a user, I can come out here and I can say, well, I’m going to browse and I’m going to select my report that we just created.  We’re going to give it a name.  Bear with me one second.  I’ll just take that.  And then we’ll click upload.

When I click upload, it is going to stream that document up to that Power BI workspace that was created earlier, and then it will render that document right in the application.  It doesn’t take very long.  It’s just a couple of seconds, and it’s available.

Now, you’ll notice that it includes all the same fidelity and experiences that we had in the desktop tool, all within my application for Fabrikam.  (Applause.)

So now you have a full experience with the rich visualizations that are available right within your application.  You can go try it today.  And Power BI is, again, available for free until May 1st.  Thank you.  (Cheers, applause.)

SCOTT GUTHRIE:  So the opportunity to build applications that can change the world has never been greater.  And each of you now has access to cloud resources that were unimaginable just a few years ago.  There’s never been a better time to be a developer.

This morning, we talked a lot about a lot of the great new capabilities that we’re releasing this week with Azure, particularly in mobile, IoT, microservices, and the data and intelligence space.  And combined, they enable you to build some really amazing solutions.

One of the things we decided to do for this Build event is actually not just deliver the features, but also deliver an example app that shows how to use all of these capabilities together, which comes with a free e-book that explains both how the services work, but more importantly, how they integrate together to build real solutions.

We basically are coming out with a new sample here which basically demonstrates how to build an IOT-based app that streams telemetry from any modern care using Azure IOT, uploads to the cloud, processes and analyzes it using a microservice-based architecture that relies heavily on machine learning to drive insight and intelligence.

And the solutio, then, has a rich mobile experience for the consumer that works across Windows, it works across iOS, and across Android all built with Xamarin.

You can download the sample as well as the free e-book from the URL here [], and we hope it provides a great way for you to get started and productive with all the technologies we talked about this morning.  And I’m really looking forward to seeing the great solutions that you then build yourselves based on it.

yesterday, Satya talked about the three core ambitions we have at Microsoft.  Terry talked about the work we’re doing with Windows to create more personal computing experiences, and I’ve now covered the work we’re doing to build the intelligent cloud.

What I’d like to do now is pass the baton over to Qi Lu, who is going to talk about the great work we’re doing to enable developers to take advantage of Office to reinvent productivity and business processes.

Thanks, and have a great day.  (Cheers, applause.)