Microsoft Build 2018 - Technology Keynote: Microsoft Azure
Today. Right. Now you have more power at your fingertips than. Entire, generations. That came before you, think. About that that's. What technology, really is. It's, possibility. Its adaptability. Its capability. But in the end it's. Only a tool, what's, the hammer without a person, who swings it it's, not about what technology. Can do it's about what you can do with it you're the voice and, it's. The microphone, when. You're the artists, it's, the paintbrush, we. Are living in the future we always, dreamed of we have mixed reality that changes, how we see the world and AI, empowering. Us to change the world we see you, have more power at your fingertips. Than, entire, generations. That came before you, so. Here's the question what. Will you do with it. Please. Welcome Scott. Guthrie. We're. Good morning everyone and welcome to build you. Know Satya just talked about the intelligent, edge in the intelligent, cloud and some, of the incredible opportunities. We now have as developers, and the, amazing impact we can have on people's lives, I'm. Not going to go deeper into the platform and tools we're delivering with Microsoft, Azure and, how you can take advantage of them to build truly amazing solutions. Now. One of the defining aspects, of cloud computing is the ability to innovate and release, new technology, faster. And a greater scale than ever, before, this. New set of technology, things like IOT, machine, learning micro, services AI service. Computing, and more it, is all happening right now thanks, in large part due to cloud computing this. Is an incredibly exciting time to be a developer and, the, opportunities, to really explore, new, approaches, and technology, have never been greater you. Know but I also recognize you, know all this stuff is cool but, it can also be more than a little overwhelming, you, know I hear that concern a lot with a lot of my conversations. With developers, around the world you. Know the expectation to be to, know all of these new technologies to, be up to date with them all the time you, know can sometimes leave. You feeling like you're falling behind and the. Expectations, that your companies have on you to, quickly deliver breakthrough. Experiences, with all this new technology has. Never been higher you, know in a lot of cases now you know the technology, that we're talking about today is really being bet on to. Deliver radically. New digital experiences, that completely transform your organization's. Business model and, you know you have to be careful about security you also simultaneously trying. To be an expert on all this new tech and deliver, those breakthrough solutions, and news to say this isn't all easy and. It's really what this understanding, that shapes how we try to build and deliver a sure. Everyday. My team, comes to work to make Azure a powerful, enterprise-grade, cloud. Service and. You. Know the more important work that we do is, in. Terms of building a sure is really trying to focus it to guide it around your success, you, know having lots, of great technology and lots of features is necessary, but not sufficient it's. Really about how successful. You, can be using this technology in the cloud that, ultimately matters and to, deliver on that you know we focus as your innovation, really on your needs by. Making cutting-edge technology. Approachable. To all developers and doing, the heavy lifting to ensure that as you're uniquely meets Enterprise, scenarios, this. Means having an end-to-end experience across. Our cloud services, our management tools and development, tools that, provides an incredibly productive cloud, experience, one. That's hybrid and enables, you to build solutions that run consistently within. Both our public cloud data, centers as well as your own it. Means having a cloud that enables, you to use AI and, data to infuse intelligence. Into all your solutions, and, it means having a cloud that you can trust, you, know Trust is a core value of azure and we lead the industry on our work around security, compliance. Privacy. And responsibility.
And. The focus move out on delivering, on innovation, trust and results is, leading to tremendous adoption of azure right now you heard Sox you talk about a whole bunch of the great customers, using it today you. Know startups governments, and over 90%, of the Fortune 500 companies in the world are now running their businesses, on Asscher these are just a handful of some of the logos of customers, running, on Azure today, let's. Watch a video of a few of them talking about how they're using Asher to drive their success. Microsoft. Azure allows, us to move forward our DevOps strategy, it's a way for us to manage maintain and build, out our infrastructure the. Benefits we saw from the agile migration, was almost immediate, Cosmos EB allows the winners to have a globally. Redundant. Reliable. And compliant, solution all across the world a few mouse clicks you, have a sequel solution in the girl. We. Love the ability for us to every, single day every single hour almost, real-time assess. What, is important, for customers we. Develop, one solution, and we, can run that in public asher or azure stack the key with, serve necessary, that you have a very short way, from coding. Into. Actual, operation, or vehicle. I love, kubernetes. Visual. Studio team services has been super. Impactful, in terms of our new platforms, that we're building we're, using it to build CI CD pipelines, with, our as required instance where, visual studio app centers stood out was its reliability, we can write tests in one language run, them on a bunch of devices and be able to rely on the test results it is very simple, I see. Shop with Samsung, places, done it is going to be everywhere, we, are all racing. To work secure, by, bringing the community to the data are, actually able to speed the discovery, of new knowledge as, your, will, be one of the leaders in that technology Microsoft. Helped us achieve our, digital transformation, it's put us over the top we can handle volume we're like bring it on we want more. Sascha's. Abroad platform, yeah you can use Azure for infrastructure, and just take advantage of it for things like compute storage and virtual machines you. Can also take advantage of over a hundred highly. Engineered services, to build your apps even faster, and this, morning I'm gonna focus on five areas of innovation that, we think are important for every developer, as we move into this intelligent, cloud and intelligent, edge world let's. Start by talking about the work we're doing around dev tools and DevOps. Our. Mission with visual studio is, to provide best-in-class, tools, for every developer, and we, now have tools for developers, who want a lightweight code optimizer as well, as for those looking for a full development IDE, and with. Visual studio team, services, we provide a suite, of developer, SAS services, that, deliver a complete DevOps, experience, and. When combined with Microsoft, tools. Deliver a fantastic, development stack, with, unparalleled. Developer. Productivity, for, every development, now. One of the great new visual, studio improvements, were making available today is. A new capability we call live share we. Think this is really a game changer in terms of enabling, real-time, collaborative. Development, across teams, via. SlideShare enables you to not only work collaboratively, on code with your co-workers but. Even do shared debugging, of an app across team members it. Works across both visual studio and visual, studio code and, even, allows developers, to do live shares across, Windows Mac, and Linux tab machines simultaneously, across. Any language and code base and. We like to do now is invite Amanda silver who runs our Visual Studio IDE team, on stage together, with Jonathan, to show off a demo of Visual Studio Live share in action here's a man and Jonathan all right thanks Scott let's start coding, now.
Today. Developer. Collaboration. Usually. Doesn't start until after somebody makes a commit and that's, often really too late for teams that are motivated, by time to market hmm, oh. It. Looks like Jonathan, Jonathan. Needs some help, I guess, now is as good a time as any to help. Show you guys how collaborative, development works our team, so. I'm, supposed to deploy the guestbook app for the live share booth in like the next hour but. Photos, aren't showing up anymore and I'm kind of starting to freak out now. To, get a man is help I could, start a screen sharing session, but, the constant, back and forth over control of the keyboard. Gets really, tedious and frankly. I'm a little bit tired of people saying that my editor theme looks like the aftermath of Cinco de Mayo so. Let's use something new instead let's, use Visual, Studio live share now. I'm on my Mac I'm using Visual, Studio code, and I've already installed the live star extension, so, what I'm gonna do is go down to the status bar and click this share button what. That's going to generate for me is a link that I can give to Amanda, to get her help in my context, right here so. If we switch back over to teams you, can see from our thread that Amanda's already pretty, used to me bugging her for help kind of like right now so let's paste this link in and then see what it looks like from her machine to join my session. Alright, so all I have to do is go ahead and click on this link and it'll automatically, launch the preferred, developer, environment that I use which is Visual Studio now. Notice I'm, on Windows he's. On Mac I'm, on Visual Studio he's, in vs code. He. Likes techno, party theme colors and I like a little bit more classic themes. Now. As we. Join in Visual Studio you'll, see that it's populated, by the context, that's actually on Jonathan's, machine, I have, none of the dependencies, that he has to run this source code I didn't clone the repo I don't, have node installed, I basically, have nothing installed, that that he has a dependency, on and yet, I get all of the context, and all of the language services, here in Visual, Studio. Now. As soon as that, it connects, you can see that I'm automatically, brought to the place where his cursor, is currently at, and I can see his cursor move around he, I can also see him select, things so. That I so that we can get a shared context. Really really quickly and start, working together even. Further I can, independently, investigate. What's going on in the folder so that I can look at other other code, too and get my bearings a little bit all right Jonathan now that I'm in, what's going on so.
The Guest book isn't showing photos anymore and I kind, of think it's related to this code right here but I'm not exactly sure any, ideas what's going wrong well I have no idea looking, at this but I really can't think straight with red squiggles, so that's the first, thing I have to take care of is this linting, herb now, as you guys can see as I, move around in here I get the same experience, that you would expect from Visual Studio you can see I get that tooltip, I can go ahead and get completion, lists and select Const, all, right so and as I move my cursor off you, can see that background compilation, kicks in and I have the confidence that that that fix. Worked but, that still is not enough for me to know what's going on from a debug perspective so, I can go ahead and inspect other things here look, at a peak definition, of this, value. And yet, this this method is definitely, I think what's going on so I'm just going to go and promote that to the doc well now. As you can see at this point Amanda, and I are actually an entirely, separate, files which, is cool and not something you could achieve with screen sharing but. If at any point I want to refocus, with what she's doing I can, choose to follow, her cursor, what's. Great about this is it allows us to work independently. Or together depending. On what the situation demands, all. Right Jonathan I think I know what's going on but, to be really confident, I'd like to set a breakpoint on this line in debug all. Right and as soon as Amanda sets that breakpoint, it shows up on my end as well what's, really important, about that is that live share is not just, an editing. Platform it is real-time collaborative. Development. Which, we all know development, includes debugging, so, because we're in the context, of a live share session if I, go and press this play button it's gonna launch that app share, it with Amanda and hit the breakpoint that, she just said. All. Right it's. Pretty cool now, as soon as Visual Studio detects. That he's at a breakpoint I get moved into it into a debug, session, as well and you can see that I get all of the capabilities, that I would expect in a visual studio debugger session I can look at the call stack I can, look at locals, and expand. To understand, what this is. I even, have a shared debug, cursor, I have access, to the same execution, point that he has so, I can go ahead and even, step over and. Then get, hover tips to understand, what the values are and I can see that yep Jonathan. I think I figured out your problem this signature, is 44, and it really should be an object so, you're calling unshifted, array, but it really should be shift, so, I'm just going to save that and I think that should work all. Right now I'd really like for a mana to be able to verify the fix that she just made before I let her off the hook but, the guestbook app is running local on my machine and I'm not ready to deploy it yet and I certainly don't want to expose it over the Internet but, because live share provides, us with a secure connection between my, and Amanda's machine I can, actually share, the, web app that is running on localhost with, her so, that she could see it as if it was running on her machine.
All. Right so all I have to do is go ahead to our share, session, up here and look at shared servers, and you can see that I get access to his localhost. I can, go ahead and launch, that in the browser. And. I can see the app straight, away even though it's localhost, hosted, on his machine looks. Like we fixed the issue all. Right I'm feeling a lot better thank, you thank, you thank you. So. I'm kind, of out of hot water at this point mostly, but, let's, make sure that we didn't regress anything else and run our tests, now, the guestbook app like many modern, applications, today actually runs its test from the command line but, Amanda's not standing right next to me to run that or view the results with, me but. Once again because. Live cher provides, that secure, connection, between the two of us I can, also share, a live terminal, instance with her that, she will see on her end and can, then run our tests and let us both view the results in real time so. As soon as he starts that terminal, it's shared, and if, this isn't just a terminal that's specific, to this debug session it's actually, a shared terminal, access to his, machine so, I could use this to inspect, you, know developer, configuration. For example and see what version of node is running but. In this case I'm just going to use this to call, our tests, and. We. Both see the results at the same time it looks like it's good yeah, so we fixed the app I think the test results speak for themselves live, share is awesome thank you so much Amanda, there. You go ready to go live yeah great, thank you. And. I'm excited to share that visual, studio live share, is now available. For you to start using today, so. You can start downloading it please wait till the end of the keynote but you're welcome, to start using it and. I'm also really happy to announce that we're making it free for all visual studio and Visual Studio code, developers, on every platform. So. One of the things you've probably noticed over, the last few, years is the change in how Microsoft approaches. Open-source, we. Not only now support, open source projects, in a deep way but. We also have open source much of our own product, development, novias. Code is, just one example of, the the type of open source projects, we helped lead now it's. Developed in the public on github and it's had over 17,000. Developer, contributions. To it to make it even better and this. A code is just one example of, how we're really trying to change our development approach to be much more open and inclusive at Microsoft, you know things like dotnet core new, get powershell, and our azure SDKs, are.
Other Examples where we're taking Microsoft, projects, and are now developing in the open and hosting, them on github, and. What I'd like to do is invite Jason, Warner, the, senior vice president of technology at github onstage to talk a little about github, and some, of the changes they're seeing as part of this engagement as well, as to talk about some exciting work that we're launching together today. So please join me in welcoming Jason. Hey. Scott. Well. Welcome Jason thanks for being here he tells a little bit about github, and the mission you guys have for developers sure thanks. God yet github core mission is to make developers lives better, we, started. This by revolutionising. Code collaboration. Today. The, majority of the world's code both public and private sits. On github with 27, million developers collaborating, across 80 million repositories, we. View ourselves as stewards, of developers, and we. Aim to reduce the friction in the. Entire software Velma life cycle to get developers back to doing what they care about most which, is writing code that's. Awesome so yeah we very much obviously share your vision in terms of both how developers, and specifically, open-source, can really fuel innovation, and. You know that's really as I talked about one of the core reasons why it's become such a critical part of our engineering culture over the last few years, it's. I think it's amazing to see what Microsoft has done in the past few years the, industry has shifted and, realized, the power of open-source and in, fact I don't think it's too bold as to say that open source now powder empowers, modern software development and Microsoft. Might be the best example of a corporation, embracing open-source, we, know from, statistics that we have in github that Microsoft, is a single largest corporate contributor to open source on github, and they're by extension in the history of open source in fact. Microsoft. Has the largest open, source community, in the entire world with, Visual Studio code, awesome. I know, in addition to, contributing.
And Projects. And hosting, one get out one of the other things that our two teams have been working on a lot has actually been on several, several, other projects, in, terms of technology, integration that we've done I was worried if you could share a little bit about those and from, your perspective how it's helping developers. Absolutely. We even even will accomplish a lot over the past few years last. Year at Microsoft, Connect we announced our combined work on gvfs. Which, allowed get to scale to the world's largest repositories. Across Windows and Linux and, with, our shared developer of focus our, areas of interest seem to overlap more and more with each passing year and I'm excited to see us working this way out in the open I know. Our teams have been working hard on something new that. We're, launching today, and the. Get-ups doing even more broadly across, your ecosystem you, talked a little about a little bit more about what you guys are rolling out and, how we're integrating absolutely. Today. We're announcing the public beta of the github checks API which. Will allow our partner, integrators, to do very deep annotated. And rich datasets across, all, manners of continuous, and integration, including linting, and, code analysis, and. We're excited to see what you're all going to do with that today awesome. Well thanks so much thanks. Everybody. With. Jason just mentioned one of the things that we're excited to announce today is, some of the deeper integration, that we're doing between github, and our, overall set of asher and visual studio devops, capability. And, the first scenario that we releasing today is integrating. The mobile DevOps tooling support that, we provide with, Visual Studio App Center directly. Within the github experience. Vs. App Center is something, we launched late. Last fall and, it enables mobile developers, to build test and distribute, mobile apps to. A wide variety of different devices including, both iOS, and Android to, monitor the performance of those apps as well, as to collect analytics, and crash dumps from them so we can quickly you, can quickly improve, your app with, each release in a nice iterative, way and, we made all this easy by integrating, all of the different DevOps stages, into one smooth workflow and, what's. Great with our github partnership, is we've now taken that and directly, directly integrated, as well within. Github, as, part of that experience we'd like to do is invite tsamina, who leads the PM team for via SAP Center on stage to, actually show off via SAP Center and the great integration we know how we'd get up here Samina thank. You Scott. I am, so excited to, show you today how, it's absent, IRR and github we, take developer, productivity to. A whole new level, from. Pushing code to the repository to shipping, the app to the App Store in under, three minutes ready. Here. In github is. The. Repository for the smart hotel demo app, this. Is an iOS app written, in Swift by. The same steps work for apps written in summer in react, native or Android. The. Dev team has been working on a new feature and they, opened the pull request and. Here. In the pull request github. Automatically. Detects, that no, continuous, integration has, been set up and takes. Me to the github marketplace. For, available, github apps I, am. Looking for a mobile CI solution, an app. Center is right here. To. Start building my repository in, App Center I need, to install the github app app. Center has a really, great free tier so. I will go ahead and install it I am. Now completing, my free purchase and. Finally. I am giving app center access, to my repositories. Now. I am in App Center and when. I select the smart hotel repository. Everything. Gets automatically. Detected. No. Need to enter anything manually so, I can simply continue. EPS. Entered does the magic and detects, all the build settings, so. Now we. Are ready to kick off a build. Behind-the-scenes, Azure. Provisions, a virtual machine with the latest tools pulls. The repository. Starts. A build and when, the build is completed, securely. Deletes, the VM with. Azure you. Can get from your repository, to setting, up continuous, integration in, under, three minutes and. Back. To the demo app the. Build is already running.
Now. This build will take one or two minutes to complete. But, once the bill is completed, epicenter. We report the status back to github and. Here. In the pull request I can see all the checks have passed and the, build is successful. Now. Before, merging the pull requests and distributing, the app to my users, I want. To run a suite of automated, UI tests and to, make sure that no regressions, were introduced. EPS. Center, offers, thousands, of devices, with, different operating. Systems, and languages, all, hosted. In Azure and, here. We can see how the test cases look for the iOS, version ran. On real iPhones. But. Remember, epicenter. Also, supports, absoluta, in xamarin react, native and, java. So. I ran the test for, the Android version of the smart hotel app on over. 100. Android, devices and, all. You see here are real, physical. Devices. Hosted. In the azure cloud. Now. If, we look closer, some. Of the tests are failing and, looks. Like on this device the, epic night transition, to the home screen, so. Later the. Tester the team can troubleshoot the issues, look, at the test logs and fix, the issues. We. Have now seen how the app is continuously. Building, on every, change, UI. Tests, are validating. The user flows, so. Now we, are ready to publish, the app to the App Store to our end-users in, the. Past we, might have done this manually, over, and over again, but. Now we can use the same continuous, delivery process. And do it automatically. With App Center and github. So. I will configure the master, branch that, for every successful, build it, will automatically. Distribute, it to the App Store all, I, have to do is enable, distribution. To, production right. Here and. With. This every. New pull request merge, the master, branch will, trigger a new build in, Center UI. Tests will, be running and once. Everything, looks green the, new release will, be uploaded, to the App Store. Continuous. Delivery for. Your mobile apps has never been easier. Together. EPS center, and github make, app developers, more productive. Get. Started today we. Know you're going to love it thank, you. Sophia's, App Center is just one of the DevOps tooling components that. We provide as part of the Visual Studio family, and as your set of depth to DevOps, tooling, with. Our original studio team services, family of tools you know we're making it easier, to, adopt a DevOps based model and set your team up for success regardless, of, the application type, that you're working on. Bsts. Is fully integrated, into Azure and includes, everything that you need and. Works with every language and runtime environment, that you already use and. We'd like to do now is invite Donovan. Brown who leads our develop DevOps advocate, team on. Stage, show. How you easy, it is to get started using Devon, at using, visual studio team services, here's Donovan, thanks. Scott. Good. Morning everyone. Let's. Try that again good morning everyone. Perfect. You know what time it is it's, time to rub a little DevOps on it and make it better. When. We combine the power of Visual, Studio Team Services in Azure, magic. Happens we. Get to witness this magic every day as visual. Studio team services deploys, itself, into. Azure, this. Gives our teams a unique perspective on how to apply DevOps, best practices, when deploying into the cloud let. Me show you how they do it this. Is an, actual dashboard, of one of the teams that bring you V STS every, single day it's. Customized, to show how many days are left in the sprint and what. Work is currently assigned to them we. Can also view this work on a Kanban, board this. Is a real-time status. Report to, update your status you simply drag and drop but. This happens to be where. Our team actually works are probably shouldn't be moving any of these tiles around, our. Team uses git and. When you use git sometimes, the branches get out of control you. Don't even remember why you created some of those branches but not when you use our Kanban, board here. You're able to create a branch right from the board and this, branch is now associated to this work every, single.
Pull Request every, single commit every, single build and every single release is automatically, associated, to this work, so. Now you know exactly why you created the item and you get Indian traceability, for, free. Once. We get our pull request made, it's. Time for us to go ahead and collaborate, over it in a pull request this is a way for you to review your code and have conversations, with your teams to make sure that the code is quality, if, you see that piece of code that piece of code that gives you that warm and fuzzy feeling you, can actually share it with your teams right here in your pull request. Our. Pull request can also run policies, and one of the policies that we run is they build our, builds, run a staggering, 77, thousand, unit tests against, every pull request and we do this six hundred times a day to, ensure that we only ship the highest quality code to our customers. When. Our pull request is done the, code is now ready to be deployed. Into, production, here. We practice safe deployment, safe, deployment, is where we deployed to one production environment, monitor. The code before, we deploy to the next production environment, this, first environment, ring zero is where the VST s team actually works, we, dog food everything that we give to our customers because if it's not good enough for us it's definitely not good enough for you we. Monitor our telemetry, and application, insights we, win queries against our bugs and if we find any we stop our release this. Used to be a manual process but. Now I can use release gates release. Gates allow me to have release management, automatically. Run queries against my bugs. Automatically. Watch my telemetry and application, insights and if, it finds any issues, release, management, will automatically. Stop our release and protect, our customers, we. Have automated safe, deployment, and. I know what you're dying to ask me right now Donovan how do we get started well I'm glad that you asked could. You get started in the azure portal, we, have a new feature called DevOps projects, that. Allow us to bring the power of visual studio team services right inside, of the azure portal you get started like you would any other resource, you go to create and there, is DevOps projects. Gone. Are the days if you have in to manually deploy code or FTP. You, don't even have to right-click inside of your IDE and as, Damien Brady likes to say friends. Don't let friends write click publish. And. Now. They never have to and if you look at this page here you instantly see that this this. Is not your daddy's Microsoft. This. Is a Microsoft that understands go in Ruby, PHP and Python let's, have some fun and let's do a java application I get, to choose my favorite framework. Which happens to be spring, now. This is where the fun begins I want, to reassure you if you're not ready for containers, don't let anyone pressure you into them we can run your app the way that it is today inside, of app service but, if you are ready for containers so, are we we're, able to stand up an entire kubernetes, cluster for, you and run your app inside of there let's have some fun with kubernetes at. This point you have to wire up your VST s account I see some of you getting anxious thinking but Donovan we don't have a PST s account. We. Can create one for you right here on the portal but if you happen to have your own let's go ahead and choose one that I already have for myself so, let's use this one I need, to give the product a name and now. I click on done now. I just sit back and relax while, visual studio and team services work together to. Build us an entire CI CD pipeline, for our java application, when, this is done I'm gonna have a portal, just like this one this, is a blade that shows me everything from visual studio team services and Azure in one place I can, see my commits to my repository the. Builds, and the releases, I can see my cluster and even infrastructure. Information, coming from application, insights down here at the bottom if, I click on this link I get, to see the sample application running in my cluster right, now chances. Are you have your own code so, why don't we go ahead and show you how you can actually use your own code as well luckily, I can use the deep links here on our build pipeline, jump, right inside of visual studio team services, where I have complete, control over this pipeline I can, simply come in here and say why don't we edit our bill definition, let's, get your code from where it exists today maybe. Your code lives inside of github so.
I Come over here and then, I off thought authorized, my account and. Then. Once I do I have access to all my github repos right here inside of Visual Studio team services, I'm, gonna choose my smart hotel 360, click on select and now I'm gonna save and queue this build I am. Now pulling code upon every commit from github, building. This Java application. And packaging, it as an image I'm then, gonna take that image and deploy it all the way inside of kubernetes I hope, you realize that this is not just a new error from Microsoft, this is a new error for all of us because, when we combine the power of Visual Studio Team Services and Azure here, at Microsoft we can implement DevOps for any language targeting any platform. Thank you so much everyone. So. The dogma just showed us in that demo you know it's now easier than ever to set up a DevOps model, using Azure using, the new DevOps project. Support you can set up CI. Cd4. With a full application, monitoring. Setup. For dotnet, for Java for, node for Python and PHP, with. Literally just a few clicks or you can drive it an automated way for the command line and. With today's updates, you can now easily do that both for web-based applications. As well as container, based kubernetes. Clusters. Using, our new add recovery, Nettie's service. Or aks as we call it for short it, supports. Get, based source control repositories, in both visual studio team services as well as github and, you can get started with it now for free. So. Now that we've covered some of the developer, tooling improvements, that were shipping this week let's. Now jump into discussing, some of the azure platform improvements. That we're delivering as well. They're. One of the things that makes a jar really powerful, is the coherent set of highly, engineered services. That, enable you to build deploy. And scale your applications, even faster, now, for example our web, app service, provides an incredibly, optimized, way to. Run web applications, as well as expose Web API our, azure. Service functions service, makes, it incredibly easy to host serverless, apps and code that can scale from just handling say one request per second up to literally millions of requests per second simultaneously. And, with, both our eyes our kubernetes service and service, fabric offerings, we, enable you to build modern container, based micro service applications. Let's. Talk a little bit about the new IKS service I mentioned so, our new IKS, or azure kubernetes service, provides. A fully managed, kubernetes, based orchestration. Service it. Provides built-in auto patching, auto scaling, and update support which. Enables you to take for, a full breadth of the, kubernetes ecosystem, when you're doing your development, and, we're, releasing a bunch of great updates with it this week it built.
One. Of the capabilities we're really excited to share is a new feature we call dev spaces, dev. Spaces enables a fast inner loop development, experience, when building kubernetes, based micro service applications, it. Enables you to edit and deploy, code instantaneous. As well, as debug and set breakpoints across, multiple containers running, in a micro service-based environment, and it's, designed to work both great for individual, developers, but, where really shines is when you have a team of developers working. Together and you want to share a common, team based development, environment, and be, able to test and iterate independently. As appropriate, I would, like to do is invite Scott Hanselman on stage to show off some of the new improvements were shipping this week with Azure kubernetes, service as. Well as demonstrate how you'll be able to take advantage of dev spaces, to, get a super smooth interloop development experience with kubernetes on Azure here's Scott. Hey. Friends. So. We saw Donovan. Take a Java, app through hazard hops projects, and even deployed that to aks, fast. Forward 30 days later and the. Project is a lot bigger the. Company's a lot bigger and let's. Say that I'm a new developer, so I need to get up to speed on how to work on this as quickly as possible this. Is a site that I'm working on and, I'm gonna come down here because I was told that there was a bug when. People go and search for hotels I, can type in New, York and I find my New York but, when they type in Seattle, it doesn't work so, something is wrong however. This application, has a lot going on I'm. Gonna switch over to Visual Studio that's, where I live as a visual studio developer, and this. Is where, I feel most comfortable and I see that there's eight, different, projects. Here there's. Eight different projects, here and there's maybe dozens. And dozens elsewhere, and I'm, told by Brady who's set up the AKS, environment, that each one of these projects.
Within Visual Studio Maps. Directly, to. A micro service that's running in a container inside, of IKS so. If I switch over into. Azure I can see all the different containers, not just the ones that are in Visual Studio but the ones that other teams are working on that, might be running in different languages, in different environments I, can. See there's my hotel service this, is all running as part of Azure kubernetes, service, which, is pretty amazing because it is a fully, managed, service, I don't have any VMs, to worry about I didn't, create a bunch of VMs then install, kubernetes, on them I just have kubernetes, as a service, I can go and upgrade at, any time I can hit scale and I. Can go and say I want 8 CPUs, or I want hundreds, of CPUs, it's totally up to me. Now. Within this this. Cluster. I can also peer, into the health of individual. Containers. You. Can sequence so that's green that's good, ok, is good I'm going to open that up here's. All these containers and I can scope my main space in my name space main, line is where I'm told that the bug is and all, the services, can be picked from I'm gonna pick hotels, because that's the one that I am currently working, if. I click on hotels and. Then open that up I see some interesting stuff that the, CPU is about four or five percent, there's my hotels container, that I want to debug, because I think that's where the problem is and I'm, gonna hit view, logs. Now. When I click into view logs I didn't have to install anything this all comes, as part of this service I've got this rich logging, experience right off the bat and. Brady. Gave me some, queries, to try out so I could learn this as a new developer and I've put a couple of those into the clipboard so here I can, go and do a search and say, run and now I'm looking at aggregate. CPU. Over all of the containers instantly. You see is about four or five percent so obviously, my problem is not a CPU, related. Problem, but I'm here to fix a bug and I want to see if I can use the analytics, to do that because again there's dozens of containers so. I've got a query here where. I'm gonna look for, places. That return zero, results, because when I typed in Seattle. I got back zero results, and I know that it's written in c-sharp because, that's my that's my language and that's the thing I'm working on so I'm gonna look for places where it contained the word controller. So. Hopefully we'll see we can narrow down where. This bug might, have happened and. I can zoom in here and see. The. Places where the bug has happened, in the. Public web. And. I can even change this and see how often that bug happens, and then, render, it as a. Charge again. All of this built into the service and lets me do some amazing stuff so I can see that clearly.
Brady Checked into production at. Five and then just went home so, that's when the bugs started, so he, won't be working here much longer. Which. Is good for me as a new developer because I'm moving up in the company. So. I know that it's in the city's controller, because I saw that in my logs I'm gonna switch over into visual. Studio now. With individual, studio I could go looking for it and hunting around in here but I'm just gonna hit ctrl, T because this is my steez this is where I live I know how to move around inside a visual studio so, I'm just gonna hit ctrl T and go to cities controller and see, the micro-service that pulls that data back here's, my get. Get, default cities I'm a right-click on sake go to definition. These, are the default cities, that are hard-coded, and then. Up here the actual micro service get that, goes and talks to the backend now, we have 10 micro services here I can see in visual studio but, just so you can get a real sense there's dozens, elsewhere, and some of them are in different languages, but some of them are actual Azure services like cosmos DB or Postgres, or sequel, there's. A lot going on to make this happen so. I go, back over to city's controller and I say alright we're, looking for default cities or. Okay. And there's the bug they didn't call get they call get default. Cities so that's a problem they were actually only looking, at the hard-coded cities I'm, gonna change city queries to say get pass. In name and go like this, now. I'm gonna set a breakpoint and, you'll notice that this is all just the stuff that I ordinarily do, as a Visual. Studio developer. Right nothing interesting going on here however, if I were to hit f5 ordinarily, I might need to start up all of this stuff, think. About the amount of work it takes when someone says hey welcome to the company here's, a laptop, let's, get this set up with a tiny production. Environment, on your underpowered, laptop, and then next, week will make you more productive, that's. A complicated experience, I don't want to have that experience instead, I'm gonna use Azure dev, spaces. And I'm. Gonna run this stuff up in IKS I have, my own personal. Space up there now. I think it's my own personal space because there's at least five Scott that work at the company and a number of women with the last name Scott so it could be seven potential, spots that are going on here. All. Right test. Test hey. How. Y'all doing. It's. All good. I'm. Not really sure how that's planning on the working, so. Let. Me add some value. I'm. Scott I'm new here. So. I've got my own space here within azure dev spaces, and this is really significant, I want to point this out notice how hotels his boldface. That's, the micro service that I want to debug that's. Not the website it's, a micro service as part of the website that then talks to other micro, services like the profile at the backend database when, I hit f5, and go. And debug this, it's. Going to do a lot for me I want to point out that I don't have kubernetes, install I don't have any virtual machines here this is not running here it's running in Azure dev spaces, and this is my own private space I'm just. Running that one hotels, now, we've seen demos before when you hit f5 and then a miracle happens but I really want you to feel this in your chest we, are not hitting. F5 on the, website I just, wanted to bug that one micro service I'm going to compile all of this into containers put it into Azure container registry drop, it into kubernetes, and then. When we hit the URL. We'll. Take a look at the URL and you notice that it says Scott. That's my space, but. I'm not affecting, anyone else in my team because I want to make sure that I get in an environment, that feels like production, but isn't I type, into Seattle, and now. We're gonna hit a breakpoint and, I. Can hover over it and I. Get the great, experience. In Visual Studio as, if I were local but I have my own private space with, dozens of micro services all working together and I just pressed f5. So, what did we see we have a fully managed, kendama kubernetes. We've got auto patching, scaling, we've got upgrades we've got an integrated container, health, I searched, terabytes, of logs instantaneously. I've, got the ability to rapidly debug, and fix apps in a complicated, environment like this with, just visual studio and my ashes subscription. And thanks, to aks and azure dev spaces, azor has the best kubernetes, experience, in the cloud thank you. It's. Got I've been joking for years and we got to do some kind of pair demo in, a keynote and I guess we just finally did it so it's awesome.
Can Execute for example every time a video file is uploaded. Into my as your storage account here's. What the logic, AB workflow looks like you, can see you kind of compose this. Workflow graphically. Using our designer and, notice how the, built in workflow is taking the uploaded file and then in turn calling, and has your cognitive service, that we call our video index or service that'll. Automatically, transcribe. The speech in the video into, a text file into that storage account and. The great thing is I didn't have to write any code I didn't have to spin up any VMs, or other services, instead. It all executed, serverless, lee using, my declare logic. App workflow and this is just one of literally hundreds, of new event grid and serverless, scenarios, that we're making super. Easy to accomplish this week and all, of our services, will expose events, that can be managed using event, grid with, this type of server list composition, model. And. Where this container and event-driven, serverless technology becomes incredibly powerful, is when, handling, new types of, massive. Scale solutions, like IOT. IOT. Is now experiencing, just exponential. Market growth you, know two years from now there'll be more than twenty billion connected. Devices in, the world that's, approximately three times the number of human beings on the planet and the. Need for developers, who can build IOT, based solutions, is rapidly, growing. We. Already have thousands, of azure, IOT certified. Hardware devices in the market today supported. By hundreds of different partners and what's great is that means as a developer, you can easily build Heiser. IOT, based solutions, and. Take this hardware take these solutions and easily, integrate, them with our azure IOT cloud services, and, let's take a look at how we could do this, so. Our Heiser IOT, hub service, enables, you to securely, connect, and manage, up to billions of IOT devices it was the thing that was on that back end when when Sam was showing the drone for. Example, in Sasha's keynote, this morning it. Was great about our IOT, hub is it can work with any IOT, device out there and includes, built-in security management, capabilities, so, for example you can tell it to patch the device, automatically. As well a device twin support, so, that you can actually query and update, the configuration of, any device even when the device is offline and when it comes back online it'll automatically, update and as, a developer, it provides a great event driven serverless programming, model built on Azure functions, that. Enables, you to both ingest, telemetry, from, any device as well as interact, and program it from the cloud since. I bet many of you here have never built an IOT app before they're, probably wondering okay that sounds good how how, easy is it to do I would, like to do, is invite Jeff Holland's onstage to show off literally from scratch how, easy it is to build using, Azure IOT, hub and our service, functions programming model so here's Jeff. Thank. You all very much and thank you Scott all. Right so I want to show you just how easy it is for every, single developer to get started building applications.
Across IOT, and the cloud and to, do that Scott has given me a challenge to, build an IOT, application from. Scratch live. In front of all of you now in less. Than five minutes and the, application, that I want to build is going to center around this IOT, button now, this is a very simple, IOT device created, by one of our partners and how, it works is that whenever somebody presses this button it. Automatically, wakes up connects, to Wi-Fi and, send some data up into the cloud now. The application that I have to build centers, around Twitter so, I'm showing here a Twitter account hashtag, Azhar IOT demo if you want to follow along and, what I need to build this an application so that if you're at the conference, and you see this button or buttons, just like it and you see something awesome, that you can press this button and let, the world know through, a tweet that something, awesome is happening, and where they can go to check it out alright so with that let's start the clock and see what we can do alright. The first part of this application is. How these devices securely, connect to the cloud and for. That i'm in my asher portal and i can create a brand new IOT. Hub IOT. Hub is an all-in-one service, and Azure that allows me to connect configure, manage, and monitor all of my IOT devices at massive scale now. I already have an IOT hub in my subscription so. Let's open it up here and see what it's doing you'll. Notice that there's actually a number of devices already connected, to this hub and it's even been sending some data throughout the day today and i. Can come in here and drill into the devices, that i've paired with this IOT, hub and. I want to point out right here at the top of this list this is my iot, button in my hand now. We need some code to run whenever these buttons are pressed so. To do that i'm gonna come here into Visual Studio and create, a brand new as your functions, project, this. Will enable to me to have serverless, code run, on-demand to all of these IOT defense and server, lists in IOT pair great together because, as I continue, to add more devices and data my, application, automatically, scales so.
In This new project let's go ahead and add a new function. You'll. Notice there's actually a number of triggers that I can use to start this code but, I'm just gonna use this IOT hub trigger right here and let's. Associate, it with my, IOT. Hub in, my subscription, now. Here's where I can write whatever code I want to run in response to events and to, prove this out let's just change this line of code and have, it's a button, pressed, and, we'll. Click Save here and click run now I'm, going ahead now and what's powerful with has your server list is that I can actually run as your functions locally, on my machine and, debug, it in fact, I've gone ahead now and just press this button and you'll, notice that my function on my PC was able to securely, connect, to IOT hub C that trigger and run my code in, fact just to prove it again I'll press this button again and you'll notice here we got another log message so, I can very easily debug, and make sure my code is working before I deploy it now. There's two pieces of information that I care about from my application to work, and the first is the location of the device and that's because I want to include that location in the tweet of where something awesome is happening and, the second thing that I want to know is the type of message, that's being sent as you, notice my IOT, hub is actually filled with a bunch of devices sending lots of data and before, I go and send a tweet I actually want to make sure that the type is in fact equal to, a button, pressed. Alright. We've written about six lines of code here this is where I know I need to post a tweet but, I've only got about two minutes left there is no way that I can look up the Twitter API and, figure out how the crap to grab an OAuth 1 token in that amount of time so. Instead what I'm going to do is leverage another, piece of Azure server list which is logic, apps so. I'm back here in the azure portal, and here I can create serverless, workflows, now. I'm going to add an action here, and what's powerful is that not only can I add other azure functions, that I've written but. There's over 200. Connectors, here out of the box to, enable me to integrate with services like cosmos, DB cognitive. Services github. Google, Docs the, Microsoft graph even on-premises, s ap now. This is incredible, for me as a developer because this is all function, code that I don't have to write so. That if I want my application, to do something like post a tweet to Twitter I just, select the Twitter connector, say, I want to post a tweet I've. Got some text here ready to go let's paste this in and we'll, even pass in the location, of that device, all.
Right So that's all we need for the workflow the last thing I need to do here is wire it up to my Azure function, so, let's grab this URL here and write one last line of code and, if. You think it's hard to write code when someone's looking over your shoulder, imagine doing it in front of thousands of people that's. Ok, make, sure to make this away table I'm, gonna add this click, Save run. Time. Alright. We've got time, to spare let's. Test this out now I'm back. Here at Twitter I'm gonna, go ahead now and press this button that. Azure function has kicked off and triggered it sent the location, data to that, Twitter connector, and when, I click refresh here, you will see here, now is a tweet sent to the world letting. Them know that something, awesome just happened here at Build thank, you so much. Now. What's great here is this even includes a sample on github so that if you go check out this tweet you can build the same solution, in a few minutes later today and I, was able to build this entire application. That could now scale to thousands, of IOT applications. In less, than five minutes thank you so much. Well. Things that Jeff mentioned if you go to our booth we're actually giving out thousands, of these internet-connected, buttons, and. So it's super easy, to. Build, this exact same app yourself and you can become an IOT developer, so. You know Jeff showed you how easy it is to connect you know a simple Wi-Fi, connected, button to Azure and, how, easy it was to basically, write code in the cloud that interacted, with them this is great for many many different scenarios where you really only need to run the logic, in the cloud you. Know but it's not - you talked about this morning now the trend that we're seeing is where we're, also increasingly, moving to one where, you also want to be able to run, logic on the edge as well and interact. Both with the device and the environment, and even richer ways and be able to do it locally while. Still retaining cloud, connection. Azure. IOT edge runs, on both Windows and Linux devices. And, provides, a really easy way to build, and deliver application. Functionality, on the edge it. Supports a container based programming. Model that, you can use to both develop and deploy apps, on the edge and supports. Running, server list-based azor functions, directly on the device in fact we've taken the azure functions. Program model and it's just part of our iot edge as well as event grid, and. This enables you use the same container, and serverless, skills on, technologies, that we just talked about running in the cloud to, be able to run on the edge device, as well and. You can basically deploy. And run both code. As well as your own AI models. Using. Our azure cognitive, services, or, by building and training your own model which we'll talk about in a few minutes on, the edge as well and run it in the context, of an azure IOT edge device and, this gives you both an incredibly powerful and a very elegant way to build, IOT, solutions I'd, like to do now is hand it back over to Jeff to show off how you can take this, first IOT, scenario that we just. And now extend, it to build and deploy custom, code in AI models, using, Azure IOT, edge thanks. Scott all right so let's extend that application, we just started and what, if instead of requiring somebody to press a button when they see something awesome what. If the device itself, actually, knew that there were awesome things around it and automatically. Sent a tweet now. To do that I want to talk about azure, IOT edge so I'm back here in my Azure portal and this is my IOT, hub this is the same hub we were just using for my button but. I want to call out here that there's a second a section, here for my IOT edge devices. Now. These are devices that actually run pieces, of the azure cloud directly. On the device itself and these, aren't fancy devices, that you have to special order these are devices that you're likely already using, today in fact. Two that I want to call out here is my Windows PC that I'm developing on right here and this. Raspberry, Pi that's next to me which is actually running Linux now both, of these are edge devices, and both of them have cameras, so I want to leverage those cameras to be observing the environment, and figuring out if there's awesome, things around so let's check out the solution, and what it looks like now.
This Inside of Visual Studio code is my IOT, edge solution, that I can completely build and manage here a few, things I want to call out this, same solution, in same code is running both on my Windows PC and on, this Raspberry Pi running Linux and it's made up entirely, of containers. Now, this is great because it means as I'm building these I get the benefits, that containers, bring like, Portability, and consistency. Regardless. Of the form factor that's running on now. The solution is just three simple parts the, first one is this startup container I'm just, going to start it up on the device, grab the camera feed and push that feed to a machine learning model now, the second, paste piece here this is that machine learning model that needs to identify are there awesome things around or not but. What's exciting here is just how easy it was for me to build this in fact. To build this model I leverage the azure custom. Vision, service, this, is one of the cognitive services that enables developers, to upload, samples, of images with tags and after. You train the model you can actually upload new images, that it has never seen before and it will be able to predict for you what this image should be classified like so. Let me show you the project that I built for this day though you, might be able to see here from the text here's my custom vision portal and I want to build my own Scott, or not app because. Chances, are if Scott is somewhere it build there's something, awesome happening, so. Here's the sample images I've uploaded it's a wall of Awesomeness. Some, of these images are tagged with Scott and some of them are tagged not and I, can go ahead and tag these and then click this train button right up here but. I don't want to have to be sending the feed from all of my devices, constantly. Up into the cloud to identify, if it's Scott or not and what's. Great here is that after training the model I can actually click this export, button and export.
This Model, to run on any device even. Locally, on the IOT edge so. I've gone ahead now I've trained this model let's, choose that we do want to run this as a docker container, say. I want this to be Linux, click download save. Done. This, is the exact container, that, I have now imported. Into this solution running, now on these devices looking, at that camera feed and identifying, is this Scott or not now. That's generating, a lot of data and in order to deal with that data I have my third piece which is in Azure function. Running, on a container on the device, now. I actually want to show you that at your function code because it should look familiar this is, the code here and this is the exact, same code that I wrote for my button a few minutes ago the, only difference is that this is running on the device locally. And you'll notice instead of looking if it's a button press or not I'm actually detecting, if it's Scott or not, now, I built this whole application I've deployed it and works on my Windows PC so. Now let's talk about this Raspberry, Pi that I also want to run it on so. If you're not familiar this is a Raspberry Pi right here it's, a computer, the size of a credit card it has an ARM processor, it only has a gig of memory it, can run Windows IOT core but for right now I'm actually running Linux, on it now. I want to pull in all of that power of the Azure cloud and run, it on this simple device right here so, let's test it out now I want you to pay attention to these lights up here because this is going to show us what the device is thinking so, here's the camera feed I'm gonna go ahead here and give a nice smile for the camera and you'll. Notice that right away this device has rejected, me with, the red X letting, me know that I am NOT in fact awesome, or Scott getting. Flashbacks of high school. So we'll go ahead now and Scott if you'll join us let's see if we can get something awesome to happen if you'll go ahead and give a nice smile to the camera and you'll, notice that right away this. Device has seen something awesome is happening. Thank. You. It's. Actually posted, another tweet with Scott's picture, hopefully it was a flattering. Shot that it took of you which, also includes, a link to this code now, that's fantastic in just an example, how as a developer, I can use these powerful tools to build applications at, massive,