>> Whether you're trying to wrap
your head around architectural concepts,
or you need to get down into the nitty gritty of
understanding a particular API.
Dan is here to show us how Azure docs has you
covered today, on Azure Friday
[MUSIC]
>> Hey everyone, Donovan Brown here,
with another episode of Azure Friday.
I'm here with Dan, he's going to teach us all
about Azure architectures and APIs.
So, I know there's something called like an Architectural Center,
what do I learn,
if I come to the Architectural Center?
>> Absolutely. So, the Architecture Centers is
how we distill the best practices,
that we have for Azure,
working with real customers.
So, this includes a number of things which is,
example scenarios that includes things like, ARM templates,
checklists and ways for you to
design for resiliency, for security,
and so on and so forth,
that you can take, download,
and make sure that you are
applying directly into your applications.
>> So, we have customers who've already been successful,
and we've taken their architectures,
and we've distilled them into patterns that
you can almost imply yourself, right?
>> Yeah, absolutely.
>> This is all found in docs.microsoft.com.
>> /azure/architecture.
>> Got you. Okay, perfect.
Cool. So, here's an Architectural Center
and I guess I can search and use this,
just like I would use Docs anywhere else.
>> Yeah, absolutely. So, first thing is,
we see a couple of different options,
the ''Architecture Guide'', ''Reference Architectures'',
and ''Enterprise Cloud Adoption''
and then a number of other things.
So, how you build micro services on Azure,
how do you design for resiliency,
''Cloud Design Patterns'', ''Review Checklists'',
these are great especially while you're building
applications or you're doing your next deployment.
Then, specifically for customers that are coming from AWS,
how do you map AWS terms,
to things you maybe not familiar with with Azure?
For example, ''Account owners'',
"AWS accounts", "Subscriptions" and "Accounts" in the Azure world.
>> Got you.
>> So, couple other things that we have within here,
we mentioned the ''Cloud Fundamentals''.
Example scenarios, we could of course do a quick search for
Web we see ''Architecture Styles'' like a ''Web-queue-worker'',
''Web application monitoring'', ''Serverless web applications'',
and even "Securing a web APIs.
So, there's a lot of guidance for you.
So, the classic example is,
sometimes we focus too much on here's how to build a single wall,
this is the guidance for how you build an entire house,
and make sure that you have
locks in the home security system setup.
>> All right, perfect.
>> So, while we've been talking about the whole house,
another key area is,
people want to get into the nitty gritty.
What are the nails and how do I set
up that first door if you will?
So, let's go into APIs,
and this is a docs.microsoft.com/net/api.
This is a unified view of every.NET API Microsoft ships.
So, everything, all in one place,
at your fingertips to search.
>> Got you. So, regardless if I'm a Java
developer,.NET developer, a Python developer,
if there is an API that allows me to access and use Azure,
this is where I'm going to go to find the information?
>> So, this one will search all guided APIs,
there's another one that searches all Java,-
>> I see.
>> - all Python, and then another one for all REST,
and then another one for all Node.js typescript, in JavaScript.
>> Got you. So, I'm not going to be confused by,
there's all this one place.
If I'm a developer, there's a specific place for me to go for
Java and then I'm just going to be curated Java information?
>> Absolutely.
>> Got it. Okay.
>> Okay. So, let's do a quick search.
One, let's just even show if you
need to filter for a specific API,
you can see all the APIs directly within here,
and you can see that there are in fact a lot of them.
A couple of things that we're going to
select the ''Azure SDK for.NET''.
Sometimes your company, has a built for a specific version.
Maybe it's a specific version of the.NET framework,
specific version of SDK, we support their version.
So, you only see the API reference docs,
for the specific versions you want.
>> Got you.
>> So, you're a healthcare company,
you're a year behind in.NET framework,
you don't want to see things that your company hasn't adopted.
>> You can't use.
>> And then it doesn't work.
>> Correct.
>> So, that has always been one of our key customer requests.
So, I'm going to do a search for just Blob,
to search for Blob storage,
and here we see just very quickly typing,
''Namespace'', and specific commands and classes.
So, and in fact,
we see everything including,
''Microsoft Health Blob'' and
we'll go ahead and just do a couple other searches here.
Because this also includes the.NET framework,
so let's do ''string.format'' right?
If you're using this within an application, great,
I see ''string.format'', I'll go to that specific area.
Mind you, you still get,
the ability to search all the data framework here.
So I type, ''Coll'',
now it's searching hundreds of thousands of types
in real-time to search specific types.
So, you can see a generic concurring and so on and so forth.
>> Yes. So this is one of the benefits of
docs.microsoft.com being the home
of all of our documentation, right?
>> Right.
>> You don't have to go to your ISDN as a developer,
to get to the.NET framework,
and you don't have to come over here for Azure to get to
the Azure APIs because docs.microsoft.com,
is the central place for all docs.
When I start searching an API,
I'm able to traverse the docs for Azure,
the docs for.NET framework,.NET core,
all that stuff, is now at my fingertips in one location?
>> Absolutely right.
>> Okay, got it.
>> So, even just a couple of
things within your how we did a grouping'.
So, if I'm using a string type,
we've grouped them all, so you can easily see "Fields",
"Properties", and "Methods" are all grouped as opposed to
one long text list.
So, we'll go down here,
and what I want to show is a couple of code examples.
>> Okay.
>> So, within here, we have
a new feature that directly from the browser,
I can run a server-side code,
directly on my machine.
So, you'll see the output here,
and then you are going to click ''Run'',
and I'll be able to see that the output of this,
and this is live.
So, I'm going to just type this.
What I've done is, I've prefixed the word, "My",
so we should be able to see that return as well.
This will actually execute,
and with any luck,
return results and I see the word ''My'' here.
So, this is a live editor.
So, if we're using string.format
and want to see exactly how to do this.
Or things like regular expressions,
where you always never know before
you integrate in your big application,
this gives you the way to verify,
that the code actually works correctly.
>> Right.
>> So, we talked about versions,
for specific APIs as well,
so you can always of course,
switch to, say,.NET Core,
and make sure that you're only seeing
the APIs that makes sense for you.
>> Okay.
>> So, let's switch to the Python API browser.
So, this is the same experience,
but now I'm just searching Python APIs.
So I'm going to do a search for the word,
debug and what we're going to see is, the cognitive toolkit,
the ''Cntk'', and this gives me the debug module,
at the same experience to be able to search here,
and be able to filter by version.
But just a couple of things to note here.
Let's go down and see a specific thing.
So, there's a function called,
''Debug Model'' and one thing to note,
you can always do a quick link to adjust this.
This will actually give you,
in case you ever need to share, "Hey,
this is a long reference file,
I want to go just to that debug model."
So, and that's our quick link.
But this text returns a clone model that has debug nodes.
So, where does that actually come from?
If I go to the top of page,
I click ''View Code'', what this is,
is the actual Python because it's an open source API,
we can do a quick search here,
and search for ''Debug Model''.
>> Interesting.
>> Let's make sure we have- there's the definition of debug model,
and you see that returns a cloned model that has debug nodes.
So, this is literally developers.
What used to happen is, you said to take,
there's a release of SDK,
weeks later, the SDK was correctly live.
Now, developers, put code comments directly in here,
and what used to take weeks, now takes minutes.
>> Got you.
>> So, best thing is,
if you submit a pull request here,
you're not just improving the documentation,
you're improving the product.
>> Got you.
>> So, what that means is, next time I download that Cntk,
your change is going to be in that product.
Next time you download a PowerShell command-let,
that doesn't have an example, it's now included.
Maybe those are even modules that are included in say,
that shipping say, Windows Server.
>> Sure.
>> Your code example,
then even shipping Windows server.
>> Wow.
>> So it's, how do we add that one source of truth,
and then being able to
help the people that are using the command line,
and help the people that are editing directly on the browser.
So, that's available obviously for languages that are open source,
like Python, Java Powershell and so on.
>> Perfect. So, right now, like you said,
we're in the nitty gritty of using the APIs,
using docs to get to the APIs,
and we talked a little bit about architecting app for Azure,
what if I'm curious about how Azure itself is architected,
is that also in docs?
>> Yes. One of the things,
I'm going to jump back here,
and what do we call it?
>> I think Adoption.
>> Adoption.
>> So, here we see the ''Enterprise Cloud Adoption'',
and underneath ''Getting Started''.
>> Got you.
>> One of the key things is that,
a lot of people say is like, "Hey,
thanks for showing me that API.
We've seen some client SDK's,
but how does it all work?"
This includes videos and texts,
that walk you through exactly how Azure actually works.
>> Awesome. Yeah. Because sometimes,
I get a little nervous when I'm just out there,
following a tutorial but I'm really
not quite sure what's happening underneath,
>> Right.
>> This gives me kind of reassurance that,
it's not just this black hole,
that you have to trust us, you can actually
see how the stuff actually works underneath,
which is really cool.
>> So, the last thing to show is REST APIs.
So, all of these services use REST APIs,
so that you can call them directly,
and then of course we have client SDKs
for this specific languages.
But what we've done is, actually made that process way
easier for you to be able to use REST APIs directly here.
So, I'm going to do a search for ''Resource'' and again,
the REST API browser is all
REST APIs that you Swagger at Microsoft.
>> Okay.
>> So, we see the VSTS for example in this list.
But what I'm going to do is just look at Azure Resources,
so let's go to,
actually let's pick ''Azure Resource Groups''.
We see all the things that we can do with Resource Groups.
First thing I'm going to do is actually create one,
and this will give me the documentation
of what are the things that I need,
and here's an ID resource group API version.
Well, look, you may not know what your Gui id is,
and all that other stuff, which is
one of the things you need for REST,
but we have this ''Try'' button.
So, what all this will actually do is,
sign me into my account,
and I'll give this just a second and you'll
see those parameters here,
it now says my subscription ID,
so I didn't need to choose this, this was picking
my account and I'll pick say,
''Azure Friday'' as our resource group name.
Now, we can change, of course, information within here.
So, let's do a ''westus2'',
this will actually send data.
So this is data that we're sending within the payload,
and we see the request preview.
So what this will happen, I'm going to click
''Run'' and I see the response here I see a
201 to be able to go through that
and I see that it it succeeded in terms of the JSON body.
So this is a great place when you're
just getting started with REST APIs like,
what does this thing do?
>> It's true.
>> What do I need to do? You can start playing with it.
Let's go one way back,
and go to actually a list,
and see if it's actually there.
So I'm going to click ''Try it'',
and in this case,
what we're going to do is the same thing that we saw before,
I'm going to login I my
internal consumption, I'm going to click ''Run''.
Here, I'll see all my JSON values,
and let's search for ''azure
friday'' and I see my research group right there.
>> Awesome.
>> So, it's a really easy way for you not to just call a APIs,
but actually review the results,
will do things like validate
that required fields are
there and that you're adding the right value.
>> So, this is great. This is going to save me a lot of
time from using the F12 tools-
>> Right!
>> -Inside my browser trying to scrape what's actually
happening when I'm going and making these API calls.
So, now, this is fantastic.
So, we're learning all about architecture
and Azure APIs here on Azure Friday