>> Hey, you really don't want
to miss this episode because I'm with
Donovan Brown to learn everything about Web 3 and DevOps. [MUSIC]
>> Hi, Donavan.
>> How are you doing, Frank?
>> Pretty good, you?
>> I'm hanging in there. I'm excited to be here.
>> Excellent. I know we are
here today to talk about Web3 and DevOps,
but before we go into the root of like Web3,
maybe we should talk a little bit about what it is.
What's the relevant pitch about?
>> Sure. If you think about Web1 that's back when we
were all having those ALL
disk and CompuServe descent to our houses.
And then we would dial up with the modem.
It was a very distributed world,
but it was all read-only,
we were basically go read this information.
Then the advent of Web2 was like we had
our own voice now because we had
social media in ways that we could create our own blog posts.
That was like a read write where we could read information,
but we could actually create their own content,
but allow that content we created with
centralized on some platform
or some website that we all went to and that person own the data.
Then Web3 is like the best of both worlds.
We're going to be able to read, write,
and even own the information that we create.
A lot of that information and when you think about Web3 is created
in what we call a distributed ledger technology,
which is more commonly known as a blockchain.
If you think of cryptocurrencies,
those are all built on the block chain,
this is a ledger that doesn't change
it's permanent and it's transparent.
So security is not as big a concern because I can see everything,
I can validate that everything was done correctly,
and as the person who's creating the content,
I have a little bit more ownership of that content than I
would have and the Web2 or Web1 world.
One of the things that makes me really excited
is when you start getting to change like
a theorem where you can actually create smart contracts,
which is just code that
lives on the block chain and you can execute.
As a developer, I got excited thinking, Okay,
cool, but I can write software for this.
Like how do I do DevOps best practices
for this environment as well?
>> Yeah, because you are a DevOps guy.
What gets you excited about
that part then, like did you [inaudible]
>> What was really cool about it was one,
I felt there was a really fresh area for
discovery because I didn't find a lot of literature on it at all.
When I went and I started searching for it,
you'll find a lot of tutorials and a lot of examples,
but not a lot on just DevOps
best practices like infrastructure as Code
and staging environments and
development environments and how you would
promote from one environment to the next.
What I found was a lot of,
here's a sample and this is how you push it to main net.
Main Net is basically production.
That's just makes me scared as an DevOps got my where's my DevQA?
Before I get to products,
I can verify and test things.
When I started poking around,
what I realized was everything that I needed to solve
this problem was actually available at Microsoft already.
We have Azure DevOps,
and we have GitHub actions which are going
to allow you to do your CICD.
We have GitHub, which allow you to store all your source code.
We already had Visual Studio Code,
which is probably the most popular editor that has ever been.
And not only are able to use it for your spouse,
but you're able to use it for your smart contracts,
that code that actually lives on your blockchain.
We had playing things like Azure Container Instances,
which allow you to run a temporary block chain.
Because when I want to test my app,
I don't want to have to test it.
They actually have tests nets,
but those tests nets are also public
and they're a little bit slower.
Having your own private blockchain
is really fast and quick and I can
return it over and over again and I don't need
real ether or real token sexy.
To use it I made testing really,
really easy and been able to then leverage
all the technology that Microsoft has,
I was able to build a full CICD pipeline.
What I did is I wrote a blog series about this.
As I started going through this experiment,
I thought other people might want to know how to do this so I
created this medium blog post and you
can see it on my screen right now.
This is a ten part series of exactly what I went through,
how I created the initial project,
how I created my infrastructures code files.
Because even though we're living on a blockchain,
there's portions of your code that actually
live in the Web2 world still.
For example, a DAP or
distributed application is actually two parts;
there's the front end which is a spot or
single-page application and then there's
the smart contract that actually lives on the block chain,
and then you use JavaScript
to communicate between the two of them.
What's really interesting is that
Azure Static Web Apps is purposely built to host a spot.
I knew where my spot was going to live.
I just had to figure out how do I then deploy these to as a unit
so that when my spa gets
updated or my smart contract gets updated,
they get updated in unison.
What I did is I wrote this blog series
and this blog series takes you step by step,
and what's really cool is that it has these little chapters
and each chapter is a repository or
a branch of a repository inside of GitHub.
Here is the actual Uber repository
and if you go up into the branches,
there's a branch for every part of the ten part series.
Then you can jump into ancient individual part,
you can see you how I built the infrastructure as
code so I could go and deploy
the Azure Container Instance in Azure,
or I could go deploy
the Azure Static Web Apps or the Azure container instances.
In Azure, I actually have all of
the code that's necessary for that.
How is able to spin up a temporary blockchain
with a certain amount of Ether in
there and actually deploy my code to it.
It explains everything to you, which is really nice.
What was really cool about it is when I was done,
I built an entire CICD pipeline using Azure DevOps
that automates the deployment of my smart contract and
my DAP from DevQA and prod giving me
that assurance that I always want has
a DevOps person knowing that
my infrastructure will always be provisioned correctly,
that I could run test unit test against
my code before it actually gets pushed from one environment
to the next and be able to use
a test environment and
a test block chain before I got into main net.
Generally, it was just a really cool experience of getting to
learn Web3 development and
then being able to apply what I love most,
which is DevOps, best practices to that world.
>> That's pretty cool. We have all the steps,
how's we read alone that's blog.
See all those ten blog posts are published right now or-
>> Yes, they are actually what we did after
I did all ten of them individually,
I then convinced them into
one big giant blog post that is all ten,
so you don't have to go jumping around and links.
If you can notice that the little scroll bar its small.
>> Yeah, I just noticed that. It's true.
>> It's very tiny because what we did after I was done,
it was I went back and I basically built at altogether and it is
step-by-step on how to achieve your goal.
And you can apply this to any Web3 project,
Web2 project or Web1 project.
That's one thing that's really powerful
about DevOps and I've always been
passionate about is that if you're writing software,
you can do these things that we have proven over
many years to add value to the way that you write software.
I just wanted to apply it to
a Web3 world as well and it works really, really well there.
>> This is all open-source and it's available in your GitHub.
Well, make sure to share the links.
All the links will be provided in the description of
this video so everybody can read that and learn.
Web3 is it like true now,
or it's something coming?
>> Well, that's a really good question.
We've already seen Web3 things.
If you've ever looked about NFP,
a non fungible token that is based off of Web3.
If you have heard of a central bank digital currency or CBDs those
are big on top of
the Web3 world because they want to use that digital ledger,
that would lead distributed ledger technology as the base of it.
Another thing is D file or decentralized finance.
These are all things that you've probably already heard about,
those are all related to in built on top of
this blockchain so they lumped
together into this world called Web3.
It's already here,
if you've ever looked at a Cryptocurrency,
if if you've ever had a Bitcoin or bought a theorem or Dogecoin,
like all that stuff is Web three,
so it's definitely here already,
there is a lot of investigation being
done and in a lot of investing being done in it.
I think we're just scratching
the surface of its potential and I just can't
wait to see what the community and what integers do.
Because to me, all solutions will be 100 percent
Web3 or 100 percent Web2 or 100 percent of anything,
is going to be, wow, this is a new tool in my Toolbox.
As a developer, I'm going to be able to
use this to solve problems that we
haven't even seen yet and what I want to make sure everyone
understands that if you choose to use Web3 technology,
you can actually do it really,
really well here at Microsoft using
everything that we have in Azure and even some of
the things like Visual Studio code that live outside of
Azure that enable the developer to be better at what they do.
>> Love it. Then I heard also
that you're a speaker AT to open days.
Again, [inaudible] today is happening?
>> Absolutely, if you watch that,
not only will see a lot of great open source stuff,
but Kathleen Ferdinand and I actually have a conversation similar
to this that covers a couple other topics
that are related to Web3.
You'll get a little bit more about the d phi and about what
cool things are being done with
NFT's and CBD's and things like that.
It's a fun watch.
I'd encourage you to go watch the demo that they do is fantastic.
I was really blown away by the demo that [inaudible]
does and we talk about how it relates to Web3 in that as well.
>> Wonderful. You know what? Thank you.
I need to watch that demo now.
Well, thank you a lot for your time and sharing about
Web3 and how it can outsmart DevOps practices,
I hope everybody will learn more about it.
>> Thanks for having me. [MUSIC]