# How Two Microsoft Engineers Build Blockchain Apps on Ethereum Networks by David Burela, Eric Maino

- Channel: [Devcon](https://streameth.org/devcon)
- Date: 2020-10-09
- Duration: 57:36
- Topics: blockchain, smart contracts, distributed ledger, ethereum
- Watch: https://streameth.org/watch/yt-UCpg4kz4GiE
- YouTube: https://www.youtube.com/watch?v=UCpg4kz4GiE

## Description

Visit the https://archive.devcon.org/ to gain access to the entire library of Devcon talks with the ease of filtering, playlists, personalized suggestions, decentralized access on IPFS and more.
https://archive.devcon.org/archive/watch/5/how-microsoft-engineers-build-enterprise-blockchain-apps-on-ethereum-networks

Enterprise Blockchain applications have different constraints and challenges to ones on public networks. Come see how Microsoft engineers architect based on market segment (B2B / B2C), and use serverless compute to integrate systems onto Ethereum networks.
This will be a demo heavy presentation showing real world engineering used at top enterprises, such as DevOps, unit testing, serverless compute, VS Code scaffolding.

Speaker(s): David Burela, Whitney Griffith
Skill level: Beginner
Track: Developer Infrastructure


Follow us: https://twitter.com/efdevcon, https://twitter.com/ethereum
Learn more about devcon: https://www.devcon.org/
Learn more about ethereum: https://ethereum.org/ 

Devcon is the Ethereum conference for developers, researchers, thinkers, and makers. 
Devcon 5 was held in Osaka, Japan on Oct 8 - 11, 2019.
Devcon is organized and presented by the Ethereum Foundation, with the support of our sponsors. To find out more, please visit https://ethereum.foundation/

## Transcript

[Applause] or a tamale this morning how efficient is how to box of Engineers blockchain enterprise applications so the two of us today we've got pal Peter hello so if any of you are using some of the cool stuff that we have my phone as your inside okay okay okay I was out of the Parkers so the primary by the wife is not a watch something you would all the cool tools that everyone can use about me I'm in a different section of markup for an unconventional software engineering they do so we go where are these customers so what I do is I hope these new customs going to be launching applications this session is a mixture of me going through some of the architecture that I use sometimes I use when I'm creating this enterprise applications wouldn't we talk to these I'm in across the mouth cavity architecture remember - Cael he will walk through cooling and how that can be used to accelerate doing blockchain applications I will flip back to me and I'll cover up now that young and some of the tunic looks Alec Eger compose things together let's cover up the one that I usually get like this which is usually why the do we need public and private blockchains we have public everything should be covered so come up with the oval ring public aetherium we can't trust anyone so because of that the security thinks that they'll intro them all around justice human if everyone is trying to take us lightly so everyone is confirmed the keys in disgust yet because we diagnose to do the bad act aside so everything has to be security around that axis trying to take these tools which is okay but what we can solve a private network we have different security considerations to worry about and usually with the web UI and application front end usually this type of stuff is deployed else would well now that's great bro venison are great but I'm Shiva to kiss you apps that's right both inside of the enterprise space these limits reading the February about enterprises think that they have really really live transaction volumes so they always say the company the etherium public club chains not allowed we want to do something possible so because we have different security considerations we can relax some of these things so we can go move to things like approval Authority where we can get some of its high transaction volume so that's one consideration but it's usually not the main reason that we end up using a ramen change the two main reasons I usually scared of the other thing we're going to talk in a process with motivated develop test and they want to go to something what chaining but they're afraid of and they want to know publicly because that so they want to have a nice safe space that they can go deploy something play with it get the developers through the emotion of how to build these things and then once I mean if you use on some more happy go start moving into painting space level of maturity of private transactions a lot of the things that they sent a positive doing a beta base scenario is commercially sensitive right now with public etherium transaction is now there are things happening with Zeke I stocks young have just released Michael they were looking at logical to coding integrate thoughtful into some of what we're doing but as it is things the three main reasons why we need everything yes there people at a private enterprise network look like this so instead of having unknown actors we've got a profit or Arbitron so we know garment bag design we can relax some of these security considerations just a little bit so it goes from heaven trying to do this in a trust us this implies way to more of a we go and use a blockchain to the shared source of truth so understand that right now business applications so to me that's another reason why we do it like this they have it three different appointments each and a processor and because although they're gonna be here the pump go hey we wanted me out to track these widgets more efficiently between us [Music] application now that's a while I'm good so typically happening that's what happens when I get caught in is we talk to the enterprise and what we ask them do you know about blockchain that was good yeah yeah I read Forbes magazine under all about the options and so because they are a large digital enterprise of got all that legacy applications created so those used to go as traditional multiplication so if we go with typical there going to be one really large company so making these of not let's just go with Walmart everyone knows that and supplies to for money so typically what what would happen Walmart the largest player in this place all of these supplies are going and supplying packages to them but because we'll have to be playing if they can go dictates of all of these normal players what are you going to log into our front-end web portal or if you go to update to them so Walmart in the back end and have their business here but got the image here with database their traditional degree to application and they might have some analytics reporting or something so because of reading couple is in a legacy enterprise infrastructure that fable there you go we want to make this more secure but making a blockchain instead all they do is they take that data bit and they replace that with watching they go now all secure that's not watching and we tell them no you just made it work you made it taken the worst party boat so all of them got now is it exact same application which is now a whole lot slower than what their sequel database cool is it and then think yeah sorry everything is now a few minor firewall so none of these parties came to access that watching so I asked him so anything who wasn't going to post this blockchain no one we control the blockchain it doesn't work like that guys so then we say okay so if you're not going to even let them host it and have I had direct time and points of change that I can leave serve my own limits behind a firewall so you guys are right a blockchain your your reign the blockchain you're the only one who's even though and it can be kind of firewater not access so you can't prove anything because right now it may be secured in a blockchain that they can't tell because whenever it comes in transit it's doing modified in any of these deities before it gets out to here and so the biggest thing that the biggest challenge we have with enterprise is that education around every every single party has to be how to access the blockchain directly to verify it if you still go through a centralized access point like this and it has absolutely no value there's always a deep trouble because the light is playing here but wants to still look down and control everything so trying to get them down you can't control the blockchain everyone needs the festive that's usually a scary important so the common mistakes I usually see what we do so far they have a 3d application they're used to they are they want to control everything propose everything for the industry they want to use a block transit database to try and get them moving with their bare hands get out of we have a database that we control - we have a shared state for shared understanding between all parties that speakers might shift but once we get through that usually takes about two days one speeding it with interest and you can see them get excited with now they understand and it would still be problem why these company so how do we go about hoping to educate them if they're to go that much changes the source of material so it's no longer your Bacchus systems are the source of truth one isn't the blockchain is a slice of truth which again another mindset might entice kids understand that yeah that consider going to react what has happened in chamber Oracle's and again it's another mindset shift but you can't tell them nothing's confirmed we've sent it into the shared state this headset is updated and has come back to buy an Oracle scheme and a potato you will back into your recording systems this one is from what we've seen on many projects file would have one party one company inside of an industry say we are going to go and create D blockchain for supply chain D block chain or Apple Z table tank whatever so every time we've seen one comfy say we're going to create the blockchain and then we're going to roll it out to our partners if it's bail every single time I've never seen that way why don't we seen it work is when that they get us engaged we'll go in and we'll say what are you going to be working with you you bring in at least two other parties for an expedient to go in then we've got at least three companies are going to be part of that initial development that initial deployment it was the same thing a lot more successful because that's what we do have three companies to businesses into the development it's been employed out to their three - your subscriptions to the kids rolling and most most importantly it's every time a teaching them it's applicable to public watch chains so everything we're teaching them around key security around app development Oracle etc works inside of the private space but my super defenders to get the ball out steals that wants it happy within the b2b space that can take everything that's at learn to stop doing things in b2c public aetherium so we're talking to them around sure we could have a private network but why don't make the plasma chamber so sniffs the public networks we can do some more things easier from there so to change the conversation of plasma change is working well so once we've gotten past that point and they were talking about architecture there's a few little pieces that we use so I'm going to go through some of the service pieces that I usually use I'll click over to help repair my own bunch of stuff then we'll go back to me too but to connect the glue between the blood change side and the traditional enterprise of Champions so we've got two of them which are service based programming we've got as your functions which it is function of the service so take a piece of code and it will run into service style absolutely that's great we've also got logic apps logic capsule code on the screen in a second so it is serve Allah screeches but you don't have to write a code you can just drag in building blocks and then the last one is I've been through which is an enterprise pub/sub so that's a great way of publishing make something happen in the blockchain come on out to the property event group and any back-end systems of care that something happened in the blockchain we can subscribe to those events and then do something to update the reporting so we use so these two and then so between these two if we have to do some tricky custom stuff in his function anything simple we should just go to logic absolutely get it done in 20 minutes so logic apps building blocks you quick and grab things on there so it's great because when we jump to an enterprise and we go down as high as demos in two to three days by using plus we just have when it's not fun after that happens so like an Oracle sit down monitor when something happens go and do something this place in animo so anyone to do one of those hit go and out establishes these what happen X's we can do a few things we've got triggers so like Oracle's when something happens so we now have fabulous codeless Enterprise marbles it's pretty cool and action what to do or something in trigger deployment we can trigger executing a functional spot contract we can do the cola transaction and probably throw about cycle tracks what it looks like if you want to read or write to a blockchain not usually this so what I love to win the develop it about with new you teams I get them too so that takes them a few minutes but see how do I want some that who can just go and enable them to go trigger these after this dragging the endpoint click drag gonna pull this moment reddish gray to HTTP response passing that context of a place so that kind of that five minutes that was reading writing and then we have those service articles so just things business my contact address select future if you want just got that from the API and instead what you want to do go and see without advice publish it out so yeah they talked a little bit about developer experience and one of the big things we've been doing there is some pseudo code so improving developer productivity making this a much easier process for you know new users but also I'm not trying to get into the way of advanced users so somebody who knows what they're doing with these tools we want to make sure that that still is frictionless but we want to break down the walls for like new users and somebody coming into the sometimes not quite as approachable as I think so looking at the current developer experience you know there's obviously some a development component there as David mentioned things like writing smart contractors your back but a little with that then becomes the second block which is a huge kind of area for a new user to say what do I use to build this back if anyways we've had that with other frameworks and programming languages before but one change specifically a very open source at nature there's a lot of awesome tools out there and there's some things that maybe aren't so awesome right so people trying to find the right tool for the right job has been a struggle we've seen a lot that people use in these so one of the motivations for even getting into developer experience was can we improve that process make it easier for people to get their job done and then they can grow to enlarge as a building we subsidize the second thing when we hook this up to infrastructure so if we're just playing to a public or private note we want to break that that wall down to a lot of times we do these hackathons early in the last few years and I can tell you that we're the stumbling blocks happening not coming up with ideas and get the things that we like how do we do a transaction like you know everybody knows the theory of like that this happens when the rubber meets the road and they have to use 1/3 chance or they have to use some of these tools they start getting confused right away and then you know they start to fall apart and English activity and so one of the things there was how can we connect these Ledger's and much more sequels fashion and then also to open the deployment so as you are starting to put new things out there people are starting to be used to beautiful smart contracts and transactions how can we help that process as well so that's those are the main motivations for why all business so from an integrated development experience if people look at the left side of this and then move to the right on the left side basically are saying like in most languages and most programming structures that we have we have the idea of a create your project right not just a hello world but like let me scaffold out a real structure that I would actually use I don't want just one something example or something like that just wanna get started creating Ledger's how can we do that from inside the I mean we don't another issue that comes up is there's a lot of different service providers as a big one but there's many other ones right and so it's like okay I need a ledger after I create my stuff then I got a bounce out to it website another Facebook there is my productivity right so you know keeping someone engaged in the IDE is really beneficial for the programmer that stay involved it's a like if you want to go to deploy this okay I keep my same mindset if I start context switching I got issues and the automatic configuration as I mentioned before so we want to take what we're building take wherever it wanted to and help build that configuration on the fly for you so you don't have to like waste your time with configuration files certainly they're there and you can go sweet them and wait easy but most times you just want to get through it let's get this thing running that seemeth broken and see how I can visit you through the middle of the IDE and part of this is like Microsoft and you know bringing our OEE like that Visual Studio best example is one aspect of it but trying to like take over this market and say we're going to build the best debugger we're gonna build the best packager this is not something that's going to happen right because there's such a huge community around this that's building awesome stuff and so really we see ourselves as more of a connecting tool to say who are the best guys doing these things are who the most popular ones that we can work with and get them if there's something bigger in there so that we can build a better tool and so in this case one of the first ones that we worked with was truffle a great relationship with tammand and a group there we work very closely with consensus and code with Blanco we work very closely the very foundation on remix and there's others that are imagined tears that we've been actively working with the foundation to bring a more of the people building tools in the ecosystem so if there's anybody in here building dev tools certainly come see me at the booth or my group and talk to us because we're very interested we want to make sure that as we're building this toilet we're doing it in such a way it's not like tightly coupled to one of these kind of frameworks we much rather it be open let people have choice I just help the user get started and then at the right time is basically the ledger technology so like after we built something that we have a skoy you need to actually do it what we're we deploying these things to certainly one of the things to get started and if I'm on a plane or if I'm disconnected I want to do something local I don't have to go spin up a huge Network and waste a bunch of money just to see my smart contracts working functionally my automated tests are if some of the other vendors were working with MIT backs some of the security vendors we want to make sure that it's all working when we can test that stuff on local dev before we even want to have been changed to do something whether it be private or public we mentioned a private consortiums Estonian eyes tightly comes to Azure certainly Azure is a nice experience in here but certainly you can also plug this into existing notes if you have them running on premises or something of that nature so don't think of this I did hear some feedback people say let's go - you're in there that scares me you know somebody defiled Roger as you're just a great place to run your stuff but if you just want to run this stuff local there are around premises as well and which raises to the third box which is a we announced in May has your blood change service so don't take away if you don't know anything about this we're not building a ledger ourselves so this is kind of like quorum and essentially what this is is for some users as they I trust you enough so that you can run my notes for me just front windows for me as a pastor as opposed to me having a VM that I have to maintain there and manager can still do the VM stuff so people want to have their hands on all the internals and make sure that that works totally fine you can run that this is something that's a little bit faster so maybe you can even use it for dev test certainly introduction people want to use this because there's a highly available solution here so basically we're making sure those nodes are healthy and running you can think about other services who do something similar where there is steam in it for you this is Microsoft version and then on the public side you know we talked about this because we don't want to build any barriers in here certainly Microsoft's bread butter is enterprise and having these big enterprises engaging blockchain technology but we also don't want to sever off anybody from the public side they should also use this tool we want to make sure that it's amenable to this and so on the public side something we're launching this week we haven't kind of talked about it yet is that we're going to tiara so we've been working with them for some time what we wanted to smooth that process not much more from so I'll show you what it looks like from the hazard walking service Charon is nearly identical so essentially it's down to the couple clicks and you can have yourself in fear without having to jump to any other website even if you're new to in fear up public networks and I know there's only winners we've been talking to as well who also in this work with you guys to of course the architectures bill to cover you know no providers into that so this is kind of like our honeycomb as we call it which basically looks like the stickers on people's laptops but basically just the the key points I wanted to kill and I hit on some of these earlier but just hit on most of them and we have the the answer market service integration penalty project we have all those language defects and Lenti compilation of those things happening we have a debugger and built in there is you can see that as well I'll show you that any kind of different changes you want to deploy to working like everything from the for tape so if you guys are familiar with our chocolates been doing in that space this is pretty interesting so you can have your induction environment which could even be public watching or it could be a private when it's in production you essentially for that change make your changes to your code tested yep everything's working destroy your form push your changes either public or push to what automate that little bit more we definitely have to so the smart contract test execution I've mentioned some editors were working with their once their workers would like some walnut vendors as well truffle is one of them we've been working with them to improve the truffle HD walnut experience all support us is another one that we're working with it was base to improve that we also have these like logical integration they was talking about some of these server list things I'll show you what we basically if you build smart contract anyone like interoperate with it we have a contract interaction we call it which basically built a you will have apply for you of adhesions to test your contract and certainly playing with the decedent's working but then on top of that you know I want to wrap that in a service function so that the functions are really these logic active functions are really just like crowd operations to a blockchain producer we want to set a transaction in we want to read some data we want to react with the but it's pretty basic so what we did any BS code was said well if you build your smart contractor we know what methods you have it there so we can basically we have to have with a lot you guys give you that as an output you don't have to write any code you can basically pop that into our logic app service developers what we call them someone who doesn't write a lot of code can even use that because it's basically like connection they're super easy then the extension and this stuff definitely seems to keep up finding it but it isn't our traditional studio marketplace watch later period you'll find it this is a short link to it we launched this back in May get feedback it's all open source you go look at our turn up their monthly bills right now and publishes like I said this week we're doing one I'll show you some another vendor we're working with so we're gonna we put some new stuff in for this one today and then also this is just the experience but we'll walk through that second and puppet to actually do some work [Music] okay so let me pump into a pressure console here so this is just three BS code on the Marx Brothers are getting started if you just go down low just go just go straight for it when you come in here you can search for these miscible no extensions so these are things that meant you just type it won't change and you'll find better here and so basically once you have thought you'll see this little over here now I already have one pre connected here this is one talking to a sure but also explain what that is in a second I basically opened a foreword here it's just empty right now and I brought up the command palette man palettes like basically all the commands that we can do with these tools then we can add new ones to it but right here is what we do right now so we have our founding project I'll show you is about the transaction flow we fully integrated the debugger into the IDE so you can do all the step through step out of you can do the inspection and now for the instruction level you can see all the there we do the deployments the bills in all the compilation that's happening there we can connect and create new networks up here I'll show you what those look like we have some things for key management so if we basically just do a new one you can see when I do a new project now if I was a user that doesn't know what the heck I'm doing if I just keep hitting at her I'm gonna get a nice scaffold in our project I know what I'm doing and I want to go I said to hey there's truffle box I want to use it something like that I can do that as well so in this case I'm just going to take the info guitar the compliment put it in the same forward will pray to the internet gods here the network is not great here but that's okay I have the cookie demo in case there's mail but basically what we're doing here is we've created a template if you're familiar with truffle boxes is one package format that we're using and so basically be scaffold about it but the right stuff out here for what people should be doing with they're doing one of these so we have a basic project structure you have like compare all the normal stuff people would eat and then basically you can see as it went through it just went pull this box down it's already developing local tendencies so in our case we're using wallet so we needed a salsa with no dependencies so when you do this yourself you see that it kind of hangs here as it's doing something what it's doing is just going getting all the packages that we need I'm doing it for you again you customized about the terminal and do it every two here if you're into know and know what you're doing with this stuff but if you don't know what you're doing is what it's a good state so just give that a few seconds here there this so as that finishes basically we have our hello world we have our migrations I already have all the migrations set up for us if we look at our truffle config minimize some things here we automatically through a development environment they'd appear for you we have ganache baked into the IDE so if you don't do anything else it'll automatically just work in a distinct obsession we also inject the part where provider and the HDL provider and you'll see what that means here in a second when we start talking to other networks so the first thing you'd want to do is just you know do a basic build this is in preview so you'll see lovely debug commands to be continued to minimize this but we put this out here so that people can see what's happening there in case there's any break so that it is cooling while we're in preview but basically you can see interested in compilation projects and then if we do a deploy and notice what we do at the point we basically get this little drop down here now what's cool about this you don't get was you can see it says from truffle in PJs so basically in the trouble config where we had that development by default intended for you but you also want them to trigger because I already have one register so I think go up more if you're listed over here you can also do local networks and things over here and again too many audience who are working ledger infrastructure would love to blow you guys they can as well architecture is very offensive and it's basically extended and then they basically show through user just as a choices so again they didn't have to do anything they didn't have to go get Marcus Ian points and figure out like how to authenticate for this thing that's happening for them I'm happy to talk through that in detail if you want to come by the booth I can tell you how we're kind of doing that securely to make that work but for instance is just go to the location on to say I just want to do something quickly because we're going to try this out so you can see I do my deployment we can see our logs here and we got our build floors everything came now now the next step you said was well once you get to this stage you know 30 users or look like well that's great like everything worked how do I like work with this thing I didn't build an app yet I just want to like work with it and so in this case they could drop to a command line and do that then they're gonna have to go read and hopefully they know how to read and they will read but you know they're trying to get things done quickly so we say okay we created this contract interaction page minimize some things is this a react application that's inside here that basically is then reading our contract so this is dynamic this knows what methods repairs the latrine methods in my contract request said response five has the deployment so if I do multiple this drop-down list will fill up it also has a bunch of metadata like where does this thing get deployed to from all the address detail you can copy and paste my code and API if you need them and you start building your application so we thought that might be a good thing and then you can actually interact with them so if I set a test request by executed you can see the state filled up I'll show you in a second and it's not smoking mirrors that actually went to ganache right now and we will do that as will do a debug but it gets also seen you could get a response messy response you see that was filled in so this is basically showing the state and these are all your actions that are inside of there like this is not smoking here so we pull up our command palette you can go into a debug transaction if you look really closely maybe you can't see it in the back but we give you a hint these are all the transactions that have happened recently and you can see there this is set response and this one was send requests that you snip those two so if you click on this basically launch a debug session for you will commemorate everything back here at the transaction level but we need all those details you can expand this stuff to your heart's content to look at it if you start jumping in here with your function keys as normal you'll see a percent response that we actually called there you can see our response message we can cover it and see those so really nicely debugging interface it actually breaks down even into the instruction level as I mentioned before so if you're a public developer you might be be concerned about you know what's happening here their store calls have you can see all that stuff directly so we think that's a pretty nice thing for users who are like trying to figure out what's broken in their contracts really quickly in Chinese so we jump back to say okay our typical flow was we we did something locally there we've deployed it everything seems to be good and now now my case I already connected to an Hydra blockchain service how I did that I can connect to or create a network here so if I say connect to the sand dip your manager by the way this week in furor will show up and hit drop down as well so the same experience will happen from Europe and then basically you can pick your subscription in Azure it's very context sensitive to a subscription in the resource group interfere and but basically list your projects here I mean you can pick your project up there get your horse back in this place it will see what consortiums up there in my case I've already connected that one so I could create a do it you know what I'll do everything for me I don't even have to go to any other portals or web sites it will spin up that consortium for me it takes a few minutes so we will do that right now if you expand this you'll see that we have a context of a sure we have our consortium remember our transaction node if you right-click on the transaction and you can see we get to our PC address again if you're building an app you typically need a like as soon as you start like writing JavaScript code or something like that you're gonna need that you can just grab this and put it right in your clipboard you can use it get all the disconnect if we do not using this consortium anymore they'll still keep it there we're just basically disconnecting from it the exact same thing happens with the pure except for and wish I can show you here but we're just publishing you're actually right now but it'll basically show you all the gnomes underneath there for the different networks whether it be rock scene ring be you know main tent those kind of things same experience and then basically whenever we go to the puddin that it's the same process so once this comes up one deployment we would pick this guy and you'll notice in this case whenever I hit a network it's not local I need a mnemonic so I can either generate a new one here or I can use one that I have existing which is here on disk so we initially give you some feedback here initially we wanted to make this super easy to get free users to say I don't know what lot is they can generate they don't open file location' things but if you just be drawing or wherever it's gonna get enough like from a security perspective so what we've been doing is working our HD wallet provider so that we can provide two options one is have this encrypted file wherever you want to put that thing the other one is you know real HSN so families just have an azure there are others that we exist out there but basically you can choose to use an HSM to hold that demonic that secret so that they can't get compromised just something we're actively working on but if I put a pneumonic in here and I look at my output window it's a little bit slower because but it will eventually push this stuff you can see we say they're going up here and even C is a point to a different network here and eventually that will complete so just make it super easy I don't have to write any code any migrations and I'm able to live employ it directly to other chains you think that's pretty cool here now another thing that's while that's finishing up on this menu a couple things one is we just talked about these Falacci gaps so this bottom menu section here is basically covering those things so far grapple in these contracts in a server this application I pick this I think what I want to do blow up at your function I'll give you a link to the documentation you can look at how these things actually work we would put a contract address really so don't look like I'll go big with him for now and it basically will pick because it and you can see it generate a logic addict now what's that mean it basically generated a bunch of JavaScript for me it already prefilled everything in forecast but basically it looked at all my methods looked at what state Berenice exist stuff and they created a wrapper for that and basically put that on the jason and i conversion that now but it in my source control engine they can take that up to Azure and it will fill what David showed you on the screen before those thank you we don't build that automatically for you so makes it super easy for people to build applications whether be event based or crud like I want to read or create something inside there so the other thing then immunity you might have notice whenever I was going through these menus really fast was in your contracts one of the things people want to do is language suck this stuff's already consult great anybody they have a pretty nice set of libraries up there that people typically use for our production applications that have been fully vetted rock-solid contracts for different things and so we said how could we improve that experience right so the typical flow we saw with enterprises was I'll go do an NPM package go ahead and pull the opens up in contracts the problem is that we saw with some of the customers was pulling down everything like I just want to do a TRC 20 or an e or C 721 all right see some math libraries I don't need all this other stuff so I have to go to lead it and make sure no one p.m. installs and that was stuff in my directory that I didn't really think we were talking to the Zeppelin guys about was could we create like categories similar to what they have under folder structure that selectively allow me to do pull these down and then resolve all the dependencies for me so if I just want the mass or the lifecycle stuff for me access to stuff I can pull just those I'll show you what it looks like in here so what this is actually doing is going and grabbing a specific version of the open some blood contracts and it pulled down 15 files in this case and I'll show you what they look like but it also gives me this little more detail so you can click one and this will take me directly to this rich documentation so if I'm new to here see a plan of what I'm doing I can come up here this will walk me through everything I need to know about what I'm doing with that a couple other things that were doing there as you see it down little contract immediately it resolved all the dependencies for these things so anything that's you know these things have multiple dependency to each one of these so that's happening automatically it's also making them read-only so one of the things and in talking with open Zeppelin was you know sometimes people in inverted leave make changes to these thing and then that you're going to introduce a security problem and that's not good and so said well first off we could make read-only but that's not good enough right because somebody could just make them not revealed so what we did is look at the actual commit hash and at the final match up and get up and so we know for sure so when we do it limit we actually check that instead like every time somebody doesn't want to wear this we actually walk it right now and say someone changed one of the core contracts right here is the one that they changed go fix it thinking about tweak that but the mockolate of linear shared is really good that she's using parents as opposed to changing those core contracts and so we want to kind of make a firm stance there to make sure people don't pull over leg off you know with this kind of stuff so basically this will automatically do a verification check now every time they do an employment make sure that don't change season and I can started studying that it also created the migration for me this kind of cool to it like we went looked at when all the dependencies aren't built in the KT migration file for you so again you don't have to write any code if you just downloaded a T or C 20 and hit go it will take care of everything and migrate it for you I'll just be totally honest there's a couple breaks in this as a brand oh and some of those are around like some of the contracts actually need parameters to initialize themself like I didn't a constructor or something and so we're thinking about a better experience for that happy to hear feedback from anyone here too but we're thinking about integrating that as well to say hey in order to using air C 20 I need to know what you want to name it or what the supply is or something like that then we can prompt them for that and then do it for them they don't have to dig around inside these contractors and so I think that's pretty much all in the show I'm happy that afterwards we can talk through anything here and I'm happy to talk about the eternal darkness ugh how it works like the new stuffs coming live this week so actually in process right now if it is publish and this will happens that one stuff in it as well as the carousel and this ascension works on Windows Mac Linux yeah those three so that's something important when I feel at work for these toughness Oh usually have a bunch of half of this in the room we'll have those laptop and a half we'll have Mac laptops so being able to have everyone using the exact same visual studio code tooling with these same extension makes it easy for all the devs to have the same so beyond just like scaffolding stuff that we put up here today there's also this thing and people sometimes get confused because we're portable and who thinks it's okay hockey tournament so basically the answer Joaquin dev kit part of that is this Visual Studio code extension but another part of it is this github repo there's open source code examples up here a much more advanced stuff on server functions there's a lot of documentation helping get started to all that stuff so once you get beyond the initial stuff that you want to start diving into more complex flows something cool to look at the other side was last ethereal other one matambi but before in Brooklyn we actually made a first Balinese project with Microsoft actually hundred and twenty thousand dollars worth of Alibaba and basically what we did is proposed out twenty different projects for people to work on to build different things using our HSS using some service functions and there's a whole slope for some around gaming and tokenization and basically those are fair as well it was super great responsible and I worked out really well but we basically have this community-driven section now too so we have the Microsoft samples we're producing we have the community-driven ones that were kind of vetting working with the community one but happy to take for contributions up there if you guys on either side forward busts are welcome anywhere I elect you're here okay so for the last 15 minutes I'm going to get everything that we've talked about and try to remix it to a fingerprint we dive in and everything that doula Custis is exactly what panel to show you so we showed them from the beginning how to go sceptile sceptile down a brand new project I don't learn how to add in a few functions into you there's my own tracks show them how to debug cataract unit tests by 8 - the champion testing it's been through that again it's a getting what we've done in the blockchain blew it up to what's happening in the enterprise so I've run through how it works for single men million Cybermen sodium then we go zoom out to see how it looks when they come all together so for one enterprise we used to have to go to all the writing of unit testing debugging all that stuff so doing that locally I've got this is bad watching so public love chamber start doing things so that the back that's Purdue Cal is talking about with this crowd so if you look at those logic maps so as Cal showed so I used to go and get them to do a backhand because I may need to apply drag in visual designer better scale showed you now it takes ten seconds now just right difference by a contractor site we've just generated for me generates out that Jason but we still find that much capital we you can just go and copy paste that what's your path Jason file happen to add your band now have your service properties to go into the blockchain but once you've got that then in the custom style intranets go and the enterprise dips all I care about now is that I kind of rest in pointing the rest endpoint to go and in terms of reading and writing looking into the transactions so there are people we can do around locking this down to a configuration so accesses but hopefully use this is a standard question points along about which is which is and caring about its money transactions so we do a little data sign of that here that way if something happens as though we go and step down but that will change whose kid including the stuff passion function perhaps I think how we showed how you do colas service we've got this and why that's a good reading a binding site but if someone else goes enough to watch chain we have to react to it so we have the adventure of the stuff in the other side again is that that was that I'm service article from a sailor star who pushed it to an event grid an event grid what are the kids back enzyme subscriber three cups up so another member updates the borman's for widgets and the event comes up here architects it publishes it event update evacuate sickle cell we can update how I reports that for you we go and figure out to go start construction constructing widgets for something twisted so this one his price can go to website one it's inside of a infrastructure but because the house and looks like this so what an approx will pay plump but because of love shining that cheers thank might expose the truth Apple the other Enterprise is just reacting have whatever backend systems if they want to buy as long as is everything what's wrong I'm so the kid might that we gotta teach them about this is it's over everybody remembers what was yeah we're gonna go ahead a way to say happy to see so they can still do what they want to predict management of their articles etc but if they're doing a Big C app they can still have a continuous unattractively so that we can do it in two different ways the first way enterprises usually want to do it is it was forget the past this point is to usually want to control like these for the users so many paths of mobile apps etc the [Music] can go for watching cat go in switching transactions updates etc but the keys yeah so that's probably going to be step one as we get my crack these in a process across the state getting about more confident and then hopefully also get up to something like this in a process to have a whole day of stuff as well so again everything with teaching here in many show that they could enterprise dancer also to public deck tips so once we start getting closer to you Robles and adoption that means stop happening for so how'd it go at business so if you closed they should use before that's these like anaphors and as your blockchain says have some right mechanisms they have but how to good at magazines like what if I went around that but also on the development side now this word gets trigger that we've actually released a white paper around how we work in the Microsoft so you have three companies three five ten companies working together and this want to show you how do we good and manage everything around updating your small Skoda updating spot contracts the point about I've got some things rather dip around there they're all dead so we can do things live in southern Asia DevOps whenever we have a fuller questions we can say that we need to have an agreement on each of consortium members before that question thank you moving pointing that out we have multi-seat bullet so that each of the consortium ends have to go and sign up before [Music] so a bunch of life examples but he is one which is he local in Japan so here at Japan were working with a couple of company and some to Craig and even saurian we've got Japan Rockies is a both a nation services some insurance companies so Johnny here's namely the ability of the service kind of Hope Commons get the point our R&D but they've go through multiple different disasters providers as some of you may have seen while you've been in Japan you may have to go to Japan ravishing fenced in maybe take you underground gentle to a bus so the idea here is about having one system spend abusing and so the best prototype for this we got up to money got me three four days but we're using the best Korean intentions the scaffolding out all of the civil patients here you can see here megabytes and Japanese but the only ones of tokens the icing seven to one tokens who are just using industry standards open Zeppelin to go step up works out for us we're using the service Oracle's to go to the technical things were happening update report so we can show how the tickers etc so there are many places to go and bash up these things so here we've got you need to connect between these are home base traditional back-end systems so that's got the open banking HDI - and the customer accounts so how do we go and take that in with what they sew in weave those simplest applications to allow customers to think something do something do something service which goes and updates the SE $20 attended cetera so then we went back and then in another four days we went and smashed together another Houston our race so again we've got more as in 27 to one happened but in everything we're doing here is helping make sure it's all blockchain fundamentals but for example malkia around management so looking around how can we do this with the centralized identity but we wanted to make sure that these as well so I'll be very careful with what I've said because this is all still ocean but that's a picture of that picture is in the official press release um let's talk about so that was one customer example I'm sorry to show another way that we can smash these up so another way to match these up so actually we doesn't dispense intelligent customers now because high high frequency item data coming in so for the IOT devices sending in millions of transactions per second half we handled a band security so we obviously have a million transactions a second into a blockchain so what we want to do what we call an end up citizen these transactions turn out to the beautiful beautiful ball storage which is right well still a Samba subscription this is not try to deter I could still want to buy while it's in transit rabbit so we periodically wanted to the beautiful gorgeous happy change so we go and every minute or 10 minutes or everyone I'm going to take the hash among those millions of transactions which is sitting there I'm gonna anchor that into a blockchain somewhere so we've actually got an to read up on stream github so we've got pictures etc but we just did this quickly with Rio together next month marks up we're doing a little bit channel hackathon so I'm gonna get a few people to it could be said we would have this documentation a little bit nicer so what have some better Quick Start Guide today now all the stuff that you show someone really importantly kid so we did this same talk in truffle color so the link there is chunk of 2019 so if you've got a cage or ms / truffle 2019 you've got a lot of the cool things that I just talked about here anodized readme file so we've got everything got up and four tenets of law changes development pretty pictures that you do some information about what connectors are links to the vias code extension or sad cetera so that's the important work that now with that so it Microsoft we do have a three-foot hole settlement placement the biggest about their ticket so you could answer the basic you can get it talk to we get into the basement [Applause]
