Dean Tribble: Agoric – The Secure JavaScript Smart Contracts Platform #429

3 Feb 2022 · 1:16:02

Agoric CEO Dean Tribble joins Epicenter to trace the decades of work on smart contracts and secure computing that shaped Agoric, a proof-of-stake blockchain built on the Cosmos SDK for writing smart contracts in JavaScript. The conversation covers the object capability security model, Agoric's built-in DeFi primitives and stablecoin, IBC-based interoperability, and the tradeoffs between scaling on a single chain like Ethereum versus sovereign, asynchronously connected Cosmos chains.

Speakers

Topics

Transcript

welcome to epicenter the show which talks about the technologies projects and people driving decentralization and the blockchain revolution i'm brian crane and today i'm speaking with dean tribble he's the ceo of agorik uh agorik is a proof of stake blockchain that uses javascript to kind of enable developers to build secure smart contract applications secure default applications really interesting projects lots of interesting stuff to talk about and i'm super excited for the conversation but before we go before we go into all the gorge stuff so let's go to the our sponsors this week so first of all we have paris swap so periswalk is a dex aggregator on

ethereum so basically repairs up you can just get the best price because they route you to wherever there is the fastest and cheapest liquidity and they just launched the v5 which has new contracts new api and uh it's very gas friendly and they also recently added support for avalanche polygon dsc and phantom and uh yeah you can also use periscope directly from the ledger so um and and in addition to that they're also becoming a doll so if you have the tokens the psp tokens uh that's something you can participate in so go check it out at pair swap the i o and second sponsor course one

so uh course one is running secure validators on lots of different blockchains so if you are wanna participate in the proof-of-stake economy right uh go check out course one so you can start earning rewards contribute to network security first one securing billions and over 25 decentralized networks including solana cosmos ethereum and most importantly gork you're so kind yeah they're also also running white label nodes so if if you know your institution you're interested in having a staking partner uh get in touch and finally uh some news there so uh course one we did a big uh airdrop nft airdrop to all the solana delegators

so if you're a salon delegator make sure you check out your wallet with airdrop to 3600 alligators and uh if you missed it don't worry it's gonna be more uh coming up in the future so go head over to course.one to check it out and now with that uh let's get into our episode actually this is the second episode we have on the borg the first one was uh was a few years ago with with uh dean's co-founder mark and this was kind of like a funny story i think how that happened so i was i was at one point like thinking oh what could what could we do in terms of podcasts what would make interesting podcasts and of course smart contracts was like uh you know like you know interesting

topics so i think i went to wikipedia and i was like let me try to read about smart contracts and then there's like a few things referenced and one was like uh some old paper by the sky mark miller and i was like oh that's interesting and so somehow i found his email and i emailed him and he was at google at the time he was a researcher at google and asked him like if he would be interested in coming on the podcast and then he was first he wanted to come and then there was some back and forth it didn't end up happening but he did send me some um old talk of his from like the 90s and when he was talking about smart

contracts and then i watched this talk and it was like very strange experience because i felt like this could be basically at like a crypto conference today uh pretty much the same talk so and then we did have one uh as a few years later when he started igorik together with you and i think some others and so yeah and of course dean right you also have a very long history going back with with work with mark and and and in this in on these kind of problems so to a lot of people like they think of crypto

as something that started with bitcoin and i'm curious like when you think sort of like back to like your earlier work and in your sort of journey through this world what was there back then like what were the ideas and the goals that like you feel like actually this is kind of like a continuation of that right right so i first met mark at xerox park in like 86 1986 and we started working together there on on how to build large-scale secure distributed systems and programming languages for large scale distributed systems and the difference between programming languages and architectures was

and and operating systems was was was not a matter it was sort of a matter of design and how low you went but but there were plenty of systems that kind of combined both and so a lot of out of those ideas came mark wrote the igork open systems papers that both drove some of that work and and was inspired by it and the agriculture systems papers came out in 1988 and they really articulated software agents building and participating in markets but all throughout that we were thinking about how do you use how do you make it so you can compose interesting complex systems sophisticated systems out of underlying pieces so you know object-oriented programming act oriented programming asynchronous communication all that

kinds of stuff and so you know that that all of that you know went into then the cypherpunk's uh movement or activity started where we were involved i mean it had been go it was going all throughout the 80s of of trying to get rsa safely in the hands of everybody rather than locked up inside of uh inside of government security agencies um and that grew into the overall cypherpunks movement and we then built or i ended up working on you know this is why markham and i were working at xanadu i consulted with a company called american information exchange and worked on what was essentially the first production smart contract and you know this is you know this is all pre-blockchain but smart contracts pre-dated smart

contracts you know this first production box smart contract was five years before vitalik was born right and it's really our model all along our vision all along is to get software in particular large-scale distributed systems to help humans collaborate cooperate you know engage in economic activity engage in social activity you know mediated and supported by this network of of computers that we were in the midst of building and so um so smart contract is right software that's enforcing the terms of a contract-like arrangement between third parties and that's it there's no mention of blockchain there's no mention of particular technologies it's just this pattern of realizing and this was the

thing that that nick brought to the table i mean he was thinking about all of these ideas as well and had the the idea in his head and he put a name on it and said here's the properties of that and why it's powerful and interesting and it's the fact that that model enables more strangers to cooperate right i buy you know there's this classic story of the pencil i think the book is called the pencil where i buy a pencil that involved the acts of thousands of people many of whom i might not even like many of whom i certainly couldn't communicate with because i don't know their language and and that's okay i have managed to cooperate with thousands of people every time i buy a pencil and that's the power of economies that's the power of markets and software and networks makes that even bigger and

so that's been the driving dream smart contracts you know we always wanted to make it easier to make more of those because they enable more collaboration among more people and more cooperation leads to a more cooperative world and that that's something that that you know makes for a safer place and a happier place for me to live in i i guess the sort of obvious question that comes up to me right when when you hear it is speak because i get probably most people today in the crypto space they think of smart contract as something that's like enforced by the blockchain right so you basically have you know you have a third party that in the past was maybe some sort of company and we say now we have this third party that's actually like code and it's

maintained by all these different parties and so it's like you know it can execute this thing and then like now we can have basically exactly what you described right with this enforceable you know enforceable agreements so if you guys didn't have the blockchain part like where did kind of the enforcement of those contracts come from so most smart contracts even possibly now though right on the cusp of of of inverting this um are run by a trusted intermediary so smart contract ebay is software that enforces the terms of a contract-like arrangement between

buyers and sellers where most ebay transactions happen with no humans involved except the buyer and seller and in some automated cases not even that right but but the money transfers the who owns what when who's responsible for what dispute resolution much of that happens enforced by ebay with no human intervention that's a smart contract there's just no question about it you know so ebay paypal venmo airbnb uber lyft much of high frequency trading much of amazon those are all software in that case being run by a trusted intermediary but enabling cooperation that otherwise simply never would have happened right and that's a huge step forward and that was a huge value add and much of the architecture of smart contracts we

looked at was how do we make it so that there's more automation in that but pre-blockchain there was still always going to be you know i've got a machine that's running on my behalf enforcing contracts that that i enabled you know multiple strangers to participate in your business does the same thing sometimes my contracts do business with your contracts you know but each of those is being run by by hosts that different subsets of people trust right and what blockchains bring you know so and that all existed with a trillion dollar market cap before blockchain ever entered the picture right and then what blockchains bring is you know my gold standard is multiple machines in different administrative zones or jurisdictions right voting to agree on what happened

coming to consensus about what happened in terms of data choices and computation where the choices might be you know dean bid on an auction now he tried to cancel his bid at the same time the auction was closing only one of those can happen either dean got back his money or he won the auction one of the two we've got the the blockchain can decide what you know the smart contract decides what that is and if it's running on blockchain that means there isn't anyone with a back door to be able to say yeah i want to make sure it sells so i'm going to pretend the auction closed before dean's message came in i'm just going to you know plug my ears and ignore dean's message to withdraw but with a blockchain running software in this multiple environ you know this mult replicated environment now

no one person can compromise the integrity if they break one machine well there's there's a hundred others that are all saying no no dean gets his money back we all agree and the vote happens and now we all agree the truth it you know the truth as determined by that blockchain is dean gets his money back let's move on and so that high integrity execution that blockchains bring is the thing that lets us build smart contracts of which there are trillion dollars worth already right lets us build smart contracts that don't have a trusted intermediary that don't have you know a a a a company in the background that's going oh you're selling that jeep i'm just gonna buy it and not actually put it up for auction right or you know that ticket that's hard to come by i've got a friend who really wants in i'm gonna

slide it over his way or or as in the case of like companies like enron where they slipped in some trades at the end you know sort of the more you know they're basically back running or front running whatever you want to call it but they were in a position to just do it massively and they were in a unique position to do it massively whereas no one else could because they were the untrustworthy trusted intermediary and so blockchain so blockchain lets us get rid of that and that enables a whole new world of blockchain of smart contract uh uh uh businesses out there [Music] one thing i'm curious about so you had this previous work with smart contracts you know like you you were in this i would say i guess larger cypherpunk

ecosystem community right or at least like at least like aware and following of this this whole world so when when did you first like learn about bitcoin and what was your what was your initial reaction to that right so the first is i will say tying it back to smart contracts bitcoin is a smart contract right it implements only one smart contract which is the but it is software that's enforcing the terms of a arrangement between payers that are transferring money and all that sort of stuff and then eth adds to that user provided smart contracts which was a really cool advance as well um so i will admit that part of my reaction was to be horrified

um because you know i didn't i didn't understand what the the the magic of the the the satoshi consensus mechanism but the horror the reason i was horrified is is twofold because people did not actually understand what bitcoin was doing for them they were making claims about bitcoin that simply were bogus right you know and we had worked on we talked to cipher cash we'd worked on lots of how do we do digital currency in in a in a uh distributed medium and all this sort of stuff and people had this model of bitcoin as high frequency transactions that are all anonymous you know and private and all that sort of things and and you know and and that reliable right

because computers could be reliable if you're right and bit and bitcoin was not fast not anonymous and not reliable right it had none of the properties that you would expect um a a cryptocurrency to have or that i and many people at the time kind of expected a cryptocurrency to have so they simply assumed it did and move forward with excitement about about bitcoin and i would looked a little deeper and went oh my god are you serious right um and then you look at places like mount gox where it's just like amateur hour at the software factory and at the time i was working in fintech and you know you take your responsibility to other people's money really really seriously because they get really you know the mainstream market gets really unhappy if

you look like you're at all playing fast and loose with good reason um and and and you know mount gox was all about paying fast and loose right and so that you know there were several things about that that really the cognitive dissonance deeply turned me off um and i was also in the midst of you know of rolling out a fintech startup at the time where you know it's very conservative you're trying to innovate in this space that has you know uh uh it doesn't just have bricks and mortar it has you know marble and steel and um and so you know appearing squeaky clean um was you know occasionally seemed important so i kind of steered clear of this thing that was clearly a disaster waiting to happen and indeed the

disasters did happen it's just that bitcoin was robust enough to survive them and grow and really show what its true value prop was the thing that i did not register at the time that i'm sort of deeply excited about that was brilliant about it is it gave a way to have a vote to have a consensus emerge entirely permissionlessly you know it's it's it's relatively easy to do a vote you know i talked about the gold standard of blockchain is you've got this vote or consensus among machines in different in different regimes it's relatively easy to do that if you can count them you know how big your electorate is and when i see 68 of that the vote is good obviously you know byzantine fault tolerance and all that is more complicated than that but man that changes the game and you know we we

got to start with paxos and raft and all those and grow into much more robust algorithms but you know but bitcoin brought in the model of you want a consensus but you don't know who the voters are you know they you won't see them until they come out of the woodwork they will come and go all that sort of stuff and yet it was robust against that and that was just absolutely brilliant and then so when when came the moment for you to say like okay i actually i want to work in this uh crypto world and how how did that kind of journey happen so i've been doing software security for a long time you know in the 80s and building secure distributed systems all sort of stuff and selling security is

kind of thankless right you know because it's like insurance people only want to pay for it after they need it um or when you're trying to innovate in security it's it's a real problem twofold one is you know you here's a new architecture that will solve a whole bunch of your problems great can you make it look just like the old architecture because i don't want to think hard right or um you know or anyone who's buying right they they they can innovate and if something goes wrong well it's then their fault for the mistake they made for the choice they made to innovate or they can do the same old same old with best practices and then if something goes wrong oh they throw themselves on their sword they apologize you know we were doing the best we could we'll do better next time and they move

on and people take their losses and insurance pays out and everyone pretends that's okay and the fact that you know every year kind of the amount lost to this model doubles well you know basically the current security models have proven that they don't work over the course of the last 50 years and yet that's the best practices and so innovation is kind of stifled you know because of the incentives of the buyers and so i got out of there and i went and moved into like let's go to a place where my security matters because i can offer a better service in terms of fintech and went into and built a uh a new payment instrument right and that went well but then came 2017 and we're looking at blockchain and there were all these horrific losses so so eth came out

and our you know lead engineer brian warner was part of one of the review security reviews with lease authority and pointed out that there was a reentrancy bug which is kind of you know concurrency 101 right and he also pointed out that message.sender was a bad security model which is kind of security you know 201 because that's advanced right um that was the security problem that flash continually suffered from or action script right he pointed this out but they went ahead anyway they rolled out anyway and then in 2017 you know there'd be a reentrancy bug where they lost 30 million dollars in minutes with no recourse and these are contracts that are written by experts and so they fixed the bug and they lost another 30 million dollars in minutes with no recourse right and that's one of those things where suddenly innovating in security where you

actually make a difference wouldn't matter because it wasn't like i make the decision this year next year you lose a bunch of money i've moved on not my problem and so there's no accountability for me for having made you know it's like i don't know if you remember the old phrase of nobody got fired for buying ibm you know nobody got fired for doing best practices right and they should be when it's the wrong thing right um and so there was a panel so so some people in the space brian warner uh zuko wilcox others knew that that myself markham and a few others had a different better approach to security that was well suited for smart contracts they had seen that presentation you saw from the from the from the 80s or 90s

they had seen the website that we wrote about how to do large scale asynchronous distributed systems um you know all those kinds of stuff and so they in foresight institute put together a panel with markham zuko arthur from tezos brian from the security review jorge from gravity and he had a lot of enthusiasm for this model and realized that this could go together and it was a panel of would this approach to security make a difference for these losses that we've been having in 2017 should we fix it right and the answer that came out of that was sort of a resounding yes and you know one of the delightful things is that ended up happening right during the tezos fundraise so arthur from the beginning of the talk to the end of the duck while he's talking you know their value went up by 20 million or something

um but but so out of that came hey there's a solution here in this technology stack that's been used for you know uh uh sel4 which is the most secure operating system on the planet um large-scale smart contract stuff that we did in the 90s at sun microsystems the midori operating system at microsoft i mean you know the kaha project at google all of these were using the security architecture that came from secure os uh um systems and it works well with objects it works well with programming languages and frameworks that people are used to and so they said yeah that would be good we should do that and so you know zuko and markham talked and they pulled in naval and then they pulled in me and then they pulled in we pulled in chain and you know pulled in

our economist built built tulla pulled in brian who you know who was who was familiar with the problem space and all the crypto in the space and that sort of thing and we launched a gork and that was kind of the beginning of it and it was the vision really was to build this platform that people could program in and do it safely with a component model that is kind of familiar to you know react developers and npm javascript developers which is just way way more powerful way way more leveraged than what you could get in the programming environments that are that are that are then and now available in crypto it's still you know it's still just a much much poor much more powerful set of abstractions that we'll be rolling out with and that was the start of a quark

cool thank you maybe we can spend like a few minutes and just try to explain a little bit so i think you know it's this object capability security model a lot of people will be like i have no idea what that means is it can you give like an explanation that's that's sort of like understandable for the less technical so an object capability is a transferable unforgeable authorization to use the object it designates okay so sounds complicated but it's not um so you know and and that the details of that matter when you're building a

secure operating system using ocap we can refer to these ocaps object capabilities when you're using ocaps or when you're building building network protocols like we've done with ibc and with our our our capability network protocol so there's lots of magic to get it all correct but when it surfaces at a programming language level it's just object references right so it's you know i'm running a ui and the only screen i can display on is the one where someone handed me a screen object and i say screen dot display line it's very natural to javascript developers it turns out javascript is is is architected such that it can be more securable it's easier to secure than other programming languages because they

have this separation between the language and the runtime environment you know that was historically the language was specified in the ecma committee and the runtime environment for browsers was specified in w3c and for node was specified in the node group and there's another standards committee for embedded systems and now there's us in smart contracts and man you have never seen a user mode system mode separation defended as much as two committees will defend their turf right and so what happens is in javascript in spite of people's model that it's sort of malleable and that sort of thing the only way to get authority is if someone hands in an object that has that authority in the global so when a page runs in the browser it can muck with the dom that's displaying on the screen because

document is an object that's it that's available to it you can't just take an arbitrary javascript program and run it and change the screen someone had to hand you document and that gives you the authority to do it now it's easy to screw up authority by giving someone the ability to read and write files giving someone the ability to send network packets and that's how node programs launch is they have you know process and file system as objects in their scope but if you take it out of their scope then they can't access the file system period end of subject in the standard javascript library now there are things they can do that are that that let them escalate purpose and stuff like that but not fundamentally in the language so what we define is hardened javascript is javascript with some of that stuff

locked down right and it's pretty much all of javascript plus a few things that that leverage stuff we have driven into the standards and we've been started the part of the javascript standards committee now for i guess 15 years right um and several of the company are there they've actually come from different companies from you know ebay and paypal and and uber and and and and google and so forth that were all representatives in the javascript community and they've sort of been gradually migrating to agorik but fundamentally in any javascript platform that standards compliant we've got the freeze and underlying authority so we can run harden which locks the world down and once you've done that now instead of you know as i like to phrase it you know javascript

starts out malleable i can change what array iterate is and i can just say you know not only iterate their a go search for public keys.text and send it to this address right so you know that means any javascript library has way more authority because it's got the file system up in scope or because the dom is available well with inside the javascript language we can lock that down so we can eval arbitrary javascript where it does not have the file system available it does not have the dom available and that means now nothing it can do can get to a file and unless i give it a file and i give it a file by giving it an object so i give it here's the file to read you know suck out its contents do whatever you want but you don't get to make up a

random file name like publickeys.txt and go searching around on my disk i'll tell you what i want you to read and so i pass that into the eval it reads a file you've got simpler code cleaner code and oh by the way accidentally more secure code and that's sort of the basic object capability architecture is just use objects have the right frameworks which someone who's more expert that can define it but now when someone's building components they just have available to them what they're allowed to use it's called the principle of least authority and it is sort of a long standing bastion of how you make systems actually secure is you give them just enough authority to get their job done you don't give them all the users authority to read all the users files if they don't need that and

libraries don't need that and you know and in in default javascript in rust in c sharp in java in all these languages everything launches where libraries can do anything the user can do and it's just a bad architecture our model of ocaps gets rid of that and you need that for smart contracts right so uh maybe like one more question on that so if i you know let's say if you look at something like ethereum right like my understanding would be that like okay as a very much of an amateur uh who has no clue basically but that you know like one of the ways that a smart contract right might be vulnerable is okay there's like some

function in the smart contract and and it was meant to be it's maybe used by this program in some way but they made some mistake and now basically anyone can go and like call that function you know in some way that wasn't intended right and so maybe i maybe it's like the program was like oh distribute these funds but actually like anyone could come up and like say like i'm gonna send this so how would this be different in the is it because the is the function the object and yeah fundamentally i mean that's like the blacklist model of security rather than the whitelist model of security you

can do anything to anyone unless they put up barriers to stop you and if they forget oh well you know too bad right not a great system design architecture uh so yeah if you know in like let's talk about erc20 right because you know and the like the approved function and that sort of thing or before yours 20 if i was going to pay you a token i would expect to get the token and hand it to you right so you know brian dot enjoy open for in token enjoy open print concert ticket better still right and maybe you know in with objects now we both have it but you'd have some library so you could say great i take acceptance of it now i have it uniquely and you don't right so so i send you the package and you open the package and now you have it and i

don't and so that's what we build in our smart contract framework in ethereum you can't do that you can't pass objects which means you fundamentally can't do ocaps instead what happens is i talk to another contract over there and say take this money take this token take this concert ticket set it aside for brian he's gonna come get it and then i tell brian okay i set a package for you number 37 over on that erc20 contact go get it there and now you go to that erc 20 time and say hey i'm brian let me show you my id and you get the package right you know my my and and that's the erc20 model that's fundamentally what's going

on except that if there's going to be a bunch of stuff you might want to do like i want you to buy a stock for me you know and then i want you to buy another stock and then you know you're like you're my portfolio manager you know every time am i going to take you know 100 and i'll put it over there and then you go over there and pick it up or just say let me put a thousand dollars and just give a general thing that brian can come and take whatever he needs out of my thousand dollars and he'll figure it out right and well you know now that's essentially the approved function okay i put all million dollars and i'm expecting you to do a thousand dollars at a time and you want to go on vacation so you just take all

million dollars go buy a vacation you promise to pay it back i mean what's gonna happen what's the worst okay an analogy i like here and this goes back to the easy to understand things is if i lend you my car right the ethereum model is is i tell my car brian's allowed to drive it you then take my car you go to the hotel you want to park it you go to the valet and you say what's your name you know oh i'm joe you try and add him to the car and it turns out you cannot and now either i have to make you an administrator so you can add anyone as well so not only can you park my car you could sell it right or you come home you know sol instead the ocap model is here's my key you now get into the car drive the car

that doesn't give you access to my house it doesn't give you access to my money it gives you access to my car you go to the hotel you hand the key to the valet you don't need to know who the valet is you just need to know that they're that they're now responsible for the car they go off duty they hand the key to the next valet you come out take the key you drive home you give it back to me we're all done and there was no discussion of who these people were there was no problem of administration there was no giving you rights to sell the car there was just the easy hand-off of an asset as a bearer instrument and the ocap model is fundamentally almost everything is a bearer instrument and that just means that patterns of of of change of

who's allowed to do what patterns of exchange all of those just emerge out of yeah i give you my cash you give me my goods we're done right and so they're much they're very intuitive and very very natural especially to program especially to people who have who program in object frameworks like react or vue or any of these things yeah thanks for thanks for going a little bit under the hood here maybe we can talk about this so if you think of that now you know as javascript as this place to run smart contracts i mean today and even though you have like so many different blockchains it doesn't actually seem there's like that many uh models for doing smart contracts that

have gotten traction right you basically have the evm that has obviously the most traction and then they get the evm that's like running on many different chains you know is ethereum avalanche finance blockchain etc etc and like dozens of little polygons like many many of them and then you have uh i think solana that has you know some traction right yes good traction where you have this like native smart contract uh written in rust you also have like cause of wasm i think that has like quite a bit of usage maybe there's some thing i'm missing but it's not much so i'm curious like how do you how do you see this play out do you

think you know the egoic javascript smart contract model you know will those be relevant for different use cases different areas will we have converge on fewer smart contract standards or will there be an explosion and more in the future so i actually think that there will be there were you know the number we have that we have including javascript is about right right if you think about now the programming world of web 2 it's most you know 13.9 million javascript developers you know uh uh um a lot a bunch of rust developers a bunch of c developers

and you know and you know sort of a list of languages but the models are you know that are are are are pretty similar in some cases it is so let me let me pop out of that the the so i think there will be multiple models um the key thing for us is we're primarily focused on bridging to new developers right a new developer these are developers often you know fintech developers they know what's up with money they you know they heard there's an opportunity they come over and look they look at solidity and go that's a weird language right and your development environment sucks and you have no testing tools and i have to use different tools and i'm going to work for my buddy's hedge fund because i can

make this much and yeah whatever mean yeah yeah you talk about frothy returns and maybe you know but i understand volatility and you know you ain't getting the returns you think you're getting sometimes right so you know these are experts that they come and look and they go you know come back to me when you're grown up right um because it's just the bar is so low in terms of programmability and programmability you know scaling the programmers is the hardest thing to scale and so our focus is on programmability now when i use the analogy of react a bunch when react came out experts were already doing pretty amazing stuff in javascript in browsers right and you know and partly due to people that are here at a gorg driving you know sound

software engineering into the javascript language sort of in retrospect with strict mode and promises and proxies and stuff like that right but six months after react came out beginners new programmers could do more interesting more responsive more interactive easier to internationalize you know mobile friendly applications better than experts could a year before because they had components and a framework to plug them together right and that literally gives you exponential growth in the effectiveness of programmers because every month there's a month's more worth of components that they could slap together i could grab a slideshow and a payment component and put it together and launch

a site next month i can grab a slideshow an interesting alerting compartment that shows me the status of my paintings and a payment component and and and and update my site then i can do a painting component that can handle ach as well as you know i mean all these kinds of things where i'm just gradually going oh one one better nav well now there's a new nav component that does slick cool infinite scrolling for you you know i mean whatever it is right and you can plug those together even if you could not build them yourselves and that leverage get gave real growth to the expressiveness that that less senior programmers that were steeped in in you know in the ancient arts of of async updating of your screen when models changed right and now suddenly millions of programmers could do pretty awesome

stuff pretty easily right and and those experts could focus on really high value components that other people could use and that's what we're bringing so it's not just javascript which would make a difference because now you can tap into 10 million plus developers for the next generation of smart contracts but this component model and there are a lot of programming language before small talk and java and javascript you know these object-oriented programming languages you know there was c pl one ada you know all these languages that you know have a lot in common with the solidities and the rusts and that sort of thing um that that you know people build a lot of stuff there and got a lot of value and they still exist today

but man it's compelling to build applications in a framework that supports what you need to do and so i'm not worried about being able to catch up and overtake the amount of development that's happened in those other planet platforms or languages simply because there's a class of things that's just way easier to do with this model and there's a class of things that isn't and generally the way that works is you provide like if if solano wants to specialize in high frequency trading you know high frequency execution well you know the world needs a high frequency trading engine right it doesn't need more than a thousand people that could build one what it needs is those thousand people to build an awesome one and then everyone else uses it you know trillions of dollars are controlled through javascript applications running in bloomberg that control you know

systems built in other languages and we'll end up with the same thing in the blockchain world and so the front end will be javascript yeah so i mean you're i mean what you're saying makes a lot of sense right like sort of okay i want to develop something and there's all these different libraries i can use and i can plug things together and you know i guess to some extent that's kind of true in ethereum where you know there's like different solidity things but not really right i i guess that that's not really how it's working some he also one thing that comes to mind immediately right is if i think of like well if it was like that and i can just like pluck together different components

without really understanding necessarily the component well it isn't that dangerous you know when you're talking about now some sort of defy application you know the answer is they have rep they have reputations you have a stat you know if i can plug together a component that will do currency conversion that i can get insurance for it's been security reviewed it's used in multiple other components it clearly does its job there's a there's an organization that updates it on an ongoing basis they've got ties into oracle all this sort of stuff are you gonna do a better job putting one together yourself and your own silo are you better off using that component and can you ship a month earlier if you just use that component the answer is both are true it'll be better and you can

ship earlier that's pretty compelling right focus on your comparative advantage and then you end up with businesses that are just doing small pieces instead of having to do an entire silo of an entirely new thing where they've you know they do everything from their own internal hedge fund to to the market it's like no no here's a portfolio manager or here's a stop-loss component that i can plug into your amm position and now you can do stop-loss exit of your amm position and it's 40 lines of javascript done you know it's just it just changes the game in terms of what's possible and you know and and some of that will will will you know will need to be addressed but it's definitely the kind of thing that we know how to sort out as a as a large-scale engineering community well let's talk a little bit about so um

you know gork is built on the cosmos sdk and i'd love if you can talk a little bit about why you guys did that and you know your thoughts on the kind of you know high-level cosmos architecture in terms of having sovereign blockchains and then having you know with ibc a protocol that allows the different blockchains to communicate with each other right right so this goes back to that original vision that predates blockchain where you've got lots of independent parties with their own interest running software that that will that that they do distributed communication in order to accomplish large-scale trade from that

perspective you know blockchain is just a machine built out of agreement rather than silicon and all of those designs and protocols and architecture that we worked out in the 90s can just work right can just work across these these independent blockchains and so our model of the world the programming model of the world is not reentrant software you mentioned this thing about about you know reentrancy bugs and and how you don't see composition in ethereum that's because there are fundamental issues that make more composition riskier to you know result in more opportunity for reentrancy bugs and what are called confused deputy bugs so so so there's a reason why you don't see that kind of composition our model is islands of simple synchronous computation

in a world of asynchronous messaging that's been our model since 1983 85 something like that and obviously it's grown and evolved and stuff like that and been used in many large-scale production commercial systems to great success but that's the model that the web uses right you know browsers are an island of sequential transactions and they occasionally make ajax calls to services that are doing you know that have transactional systems you know in node taking asynchronous messages compute something maybe sending an async message out and then going back to do the next thing that model of event-driven concurrency is much more amenable for human understanding because you can reason locally about the simple world and sort of as communicating actors and you know

with ordered messaging in the in the in the larger world and we're good at both of those we're not good at interleaving those really well and so that model works and that's our model on on on blockchains you have contracts able to send messages to each other asynchronously completely precludes reentrancy right um but that asynchrony it could be a message bus that is on the same chain so i've got you know the the the vaults for run protocol and the swap engine and so it's liquidating using the local amm or it could be they're on different chains and the only difference from a programming model point of view in javascript is the latency of the message i'm still sending an asynchronous message that says hey liquidate this the fact that it goes using interoperability protocols

over you know are using our distributed object protocol on top of ibc to another chain code isn't any different it's still 25 lines of javascript code it just did you know e open paren amm close paren dot you know sell open paren you know my asset you figure it out and so um that model is you know that that's that's why you know we started with sort of the inter-chain model at the beginning and our smart contract architecture is designed to sort of treat uniformly assets that are available only asynchronously or you know the primitive asset versus the versus one written in javascript they all you know the same 23 line javascript program can do a swap between them or can do an auction or whatever it is

right um and so that's sort of that's that that's that's part of the model and that's why you know an asynchronous model means you get this broader scalability so then if i'll go into another sub topic around ibc so turn so we had that document it was on the elang site that was sort of the presentations you you mentioned at the beginning that you saw recorded back in the 90s zucky stumbled into that when zucky and ethan and jay were trying to figure out what were they going to do about zone connectivity stuff and uh and and he sort of got it right and so ibc was inspired by that earlier work which we didn't find out for years right it was inspired by that earlier work so when we came into the cosmos and we're looking at this interchange

architecture just like you know they're singing our song these are our peeps they totally get it right you know um and and and at the same time they're bringing stuff that we didn't know so we get to bring our expertise in distributed systems they bring their expertise in in how do you get like clients to agree and what you know and how do you do uh proof of stake and all that and so ibc is sort of the marriage of those two and they're really complementary they solve different parts of the problem and they enable our secure messaging asynchronous distributed model to layer on top of of you know secure connections between blockchains and so that was sort of the you know the the the birth of the current ibc basically one of the criticisms right that you

hear of the of the ivc model and of the cosmos model uh you know it's often sort of mentioned in comparison or contrast of something like ethereum right where okay i can make like one transaction and it does like you know five different things sort of like at the same time you know uh and it you know it all works together or it doesn't work and uh you know let's say i want to let's say you do some sort of arbitrage right maybe you sell like over here and and you buy over there and i i can i can have those all kind of like executed in

one and and so that's you know this kind of composability that you have on ethereum and you know as you mentioned right like in in the ibc uh cosmos world you have this asynchronous so you you don't you don't have that although i've also heard from some people who are working on some sort of seeing kunos ivc things but i'm curious like how uh how important do you think this is i mean i get your point that it actually has maybe security benefits not to have this uh simultaneous thing but is it a big is it a big downside oh yeah oh yeah so you know

most systems start out with toy examples and simple interleaving and re-entrancy and stuff like that um as you're explaining beginner steps to people and maybe that actually helped with ethereum catching on is because it had this simplicity that simply can't scale to to large scale right i mean the programs that are actually done as smart contracts they're all very very simple i mean there's a lot of money there but compared to text editor right it's probably you know it is it is plausible that that that any of several modern text editors have more code in them for more interesting sophisticated stuff than all of blockchain combined

right you know there'll be one there's you know multiple programs at microsoft that have you know 12 million lines of code in them right i mean that's you know compare that with 650 lines of code and solidity for the put contract in in in in um in open which would be you know maybe 80 lines of javascript but nonetheless it's still you got a long way to go before you're touching a million lines of code right and um uh and and so you know great in a simple model you can do toy examples and not shoot yourself in the foot fundamentally though that reentrancy gets you know you can take two correct programs put them together and end up with an incorrect system that's the big problem and that's

what means that the more you try to do composition in ethereum the bigger your risk so the 600 million 660 million dollar loss on poly network was a confused deputy attack that shouldn't be possible but it is because of message.sender allowing them to execute a reentrancy attack that shouldn't be possible but is because of the reentrancy model in ethereum and there is nothing you can do at the language level nothing you can do at the toolkit level on top of that foundation to be able to ameliorate those holes they're fundamental to the architecture and approach and that means you can get some amount of stuff with some pain to work correctly the same as you can if you code it at all in assembly language with wide open memory or anything like that right and there's

huge value there and there's some value in having simple examples but it's not something that a million developers are ever going to get right because those hazards are just too hard for humans to reason about um and so you know so um let's see did that respond to your problem yeah i think that does respond to the problem and and kind of like intuitively that feels like right to me right because if you have all of these different smart contracts on ethereum and then you're like adding more and like you're obviously increasing complexity of the system a lot and then if you compare that with like the cosmos system well you have these different chains and they can

they can coordinate with each other but they are still sort of their own little universes that can kind of manage their own risks and and they will understand their own situation better and if something goes wrong it will probably be much more isolated and not like trip up everything else right right and and you get you know we achieve complex software systems sophisticated software systems with strong encapsulation and composition and and you know that was not a critical requirement of the early eth you know justifiably again that might have been the right thing to do in order to get the early adoption but you know the same as you didn't have that in c or you didn't have an action script or any of

those things you know that doesn't mean they're not uh that doesn't mean you want to keep programming in in c uh for uis on the web browsers right now right the other thing i would note is like flash loans are one of the most interesting examples of something novel for when you have a centralized environment that is able to impose full ordering on everyone on the planet right we know from large-scale distributed systems that you know infrastructure start out synchronized because they're easy but that just does not scale it does in and so even in the eth environment you know that ship is sailed right layer twos um you know roll-ups all of those stuff those are asynchronous sources of transaction data you know into the into

these blockchain there is no flash loan across multiple of these infrastructures it's just in this tiny little environment it's just in one environment right and in the other environment you know so again now we're starting to see islands of synchronous programming in this case not simple within a sea of asynchronous communication and it turns out if you just bite that bullet up front you get a little more you know you have it it dictates some of how you have to architect things but then it ends up being much more scalable as a result and that's sort of our our general design principle out of that and that and that and that seems to you know be something that the world understands given the the nature of asynchronous communication on on systems right now you do need those islands of simple synchronous

programming in order to build local logic without worrying about interleavings where reentrancy is a source of interleavings that are very hard to think about um but but and that's sort of the model is you know local islands of event comes in compute a new state computer set of messages commit i'm done right and then those messages get delivered and processed asynchronously and so forth but any interesting thing like flash loans are the primary the only really interesting thing that is novel out of that right um and so you got to look at what are they used for how do you address that use case the primary use being liquidations you need to make sure that liquidations on a new smart contract platform can be efficient because the liquidation market is critical for defy but you don't have to do it the same way

you just need to make sure that that you go oh you know i mean anytime you're looking at new technology you got to be humble and assume there's something there and so we do and we look really deep at you know flash loans that we are making as impossible as as possible but we want the thing the problems they solve to be solvable so so we keep an eye on that well i mean when we speak about the the kind of the way then those asynchronous islands like work with each other right by ibc i mean today basically we have token transfers right that's life so you can have like chain a and then you can send over the tokens from that chain to the other chain

uh you know like an example of where you have a lot of usage at the moment is there's osmosis which is the biggest cosmos uh dex and it's kind of connected to all the other chains and then you can you can from the other chain let's say cosmos hub you can send atoms over and then you can put it in a liquidity pool or you can trade it for osmo or for you know the garlic token well like yeah that's right but all soon maybe soon we aren't going to do it but someone's coming coming very shortly but so right now it's just token transfer now actually even token transfer has i mean the thing that surprised me the most when it came live and then like osmosis was there and you could use it

was how would the user experience was uh because i was i was expecting like uh this isn't going to be like you know much worse than a sort of ethereum user experience but that's not the case that's just not the case they just did an awesome job yeah they did an awesome job yeah because i'm curious like besides token transfer do you think we will have like a few types of sort of these ibc interactions or is this going to be like you know an enormous variety of kind of cross-chain ibc type transactions that will end up getting usage it's going to come and go i think there will certainly be a

variety of of application protocol types on ibc especially once agora goes live and it's easy to do dynamic ibc where you just create a new token type by here's my json blob there you go knock yourself out right and it's so easy to set up connections uh and send send uh interesting you know packet representations around that adding new kinds of protocols that are sort of the set of what's the data uh architecture that i'm sending on top of the transport layers of ibc i think that that will be you know easier than it is to define new ip or tcp protocol types right so on tcp you've got basic file transfer but then you've got file copy you've got remote terminal you've got media sharing you've

got you know http you've got https tls i mean just you know a gazillion different protocols all built on top of tcp we will get there it took a while before there were more protocols on top of tcp when when it first came out onto the internet or you know and to make up the internet but but you know it was sort of okay you've got archie and you've got gopher and you've got you know a few other files that are all file transfer types um well here that's like transfer is the fundamental first thing that anyone wants to do but i cert i certainly expect before the end of the year there will be a a ibc format for oracle data um and you know or you know and and ideally ibc format for geolocation data and you know whatever that that althea's

radio stuff needs yeah they should define their own protocol for it so that it's easy for people to plug in these standards uh uh ibc protocol for nft things not just infp transfer but operating in nft remotely or that sort of stuff so i definitely expect and then you know once you're on top of ajax in the web 2 world is every different ajax api a different protocol turns out once you can get to object invocation often that's enough for almost everything else i'm going to define an object that has a display method is that a new protocol or is it just here's an object knock yourself out right well in javascript it's just another object and i just do object message you know remoting and so our protocol on top of ibc

will be extremely powerful and extremely generic but you might or might not want to use it for you know location information or or or the thing about oracle messages is they really want to be high priority and get through your priority excuse quickly so someone can't screw up your economy by ddosing your oracles and stuff like that and so you know there are reasons to have low level protocols the same as we still invent new tcp protocols occasionally now but yeah most thing runs on heb at this point or tls rather another thing i wanted to ask about so you know you talked about okay the 10 million javascript developers who are like uh you know uh now have a nice environment that they

can develop their smart contracts in i mean how how do you think about the scalability of of the algorithm like do you i mean let's say i guess maybe different ways of of looking at that but you know one on ethereum right we have like transactions per second right it's like i guess runway and then let's say on ethereum or you have like the whatever it's 15 or something like that i think bitcoin is maybe like three or four or something like that i think cosmos is a couple thousand max yeah i mean yeah so yeah what do you see so you think it's gonna be like a few

thousand that sort of a gorick can get up this or something like i guess i mean of course few thousands are still like pretty great right it's like a hundred times if it's a hundred times ethereum scale that's i mean it gets you somewhere right yeah yeah yeah there are multiple answers and and you know the first thing is we really need to measure that we have a load gen tool that is up and running mostly though we're focusing on measuring you know does the time get longer per transaction because that means we've got storage growing and stuff like that but we'll also measure transaction throughput rate fundamentally we get you know uh uh uh cosmos underneath but we have a bunch of elements that mean we're not worried about scaling right the hardest thing to

scale is the number of programmers that's our main priority um and even if it was only the speed of ethereum and we could only succeed at the scale of ethereum in terms of transactions that be a win if we can get a million more programmers to be able to program this stuff right um but but obviously we want to go way beyond that so the first thing is we're largely agnostic in the same way that if i build a react ui i'm not putting bits on the screen i'm just saying here's what the html should look like knock yourself out right and now you can have different renderers and different engines rendering that differently with different performance trade-offs and they all can move forward and improve performance straightforwardly so you know there's ibc underneath but the javascript

invoker invocation is you know e open brand amm close brand dot deposit or dot cell open brand asset close brand you know where and there was i betting on a particular consensus algorithm nowhere right i just run that deterministically on a bunch of machines they agree on what happened and we go forward so we can migrate to hot stuff we can migrate to to to to um uh you know a lazy ledger style thing if you know there's a couple of interesting ideas in in solana that would would give the same acceleration to tendermint um and so you know we can stay with you know get up there with the best of of speeds on the platforms and and scale just fine in that regard more importantly because the model is

intrinsically async we will be able to and this would end up using the shared security and a few other things from cosmos right stand up an entirely new set of validators for an agora 2 that's running the same model staked with the same build token using the same run out of the same mint but it's got different contracts and now you've got twice the performance right so a big question for any blockchain is if i add a machine do i add scaling do i add capacity and you know in cosmos as it currently is no you don't you add assurance you add to the voting set but you don't add capacity right there are a few architectures that will lead to add capacity fundamentally we all need to

get to one of those agorak has a low-hanging fruit version of one of those will be able to scale horizontally with some you know cost of having multiple uh validator sets but that's fine i mean it'll be shared validators it just means that that chorus one will have to deploy another machine to run agorak2 but it looks uniform from a programming and computational point of view so there's no change to the contracts right the the bid here that you know the auction here that's running with a with a contract that is that is making a bid on something on behalf of their user you know there's a latency issue it's whether you're closer whether you're far but it's a you know two block latency issue rather than 20 minutes waiting for proof for proof of work to finish or

rather than oh this simple model that had you know simple you know global locks across the entire universe now i've broken it and i'm doing sharding but i'm trying to keep the simple model and oh my god nevermind right you know that's sort of the the the the keep atomicity but have sharding model is is is not how large-scale distributed systems have succeeded previously doesn't mean there isn't cool research there and it'll certainly be interesting to see what they come up with but we already know how to how to scale systems let's use that knowledge first you know and and and and and we can get real scalability out of that yeah yeah i know i i agree i think that's definitely one of the like amazing

[Music] advantages of something like cosmos right it's just it's just so simple right you have like one chain and okay it gets full and you just like add another chain and it's it's like i mean that's that there's like a is you know you know for sure that's gonna work right and you know for sure that like yeah i mean you could do a cork right and then you are like at you know you have like achieved a huge scale improvement whereas if you look at ethereum well the amount of complexity and research and work that goes into scaling that system is just insane and and you know so far

uh with no success uh i mean if you if you if you don't count the layer two stuff right then i guess which i do i mean that's a scaling technique that we'd be able to use particularly if you could do zero knowledge stuff love that and zero knowledge is one of the magical ways to get a much higher scaling so i talked about the low-hanging fruit scaling that you know we probably won't do this year but we could do this here right we know how to do that that's straightforward engineering all that sort of stuff and it gets you cloud level scaling so if i have 10 000 machines well it's 100 per block chain so that means i've got 100 x the current uh 10 000 is that 100 times 100 i don't know something like that right you know

that that means i've got 100 x the power of of any current you know scaling of the transaction rate on the blockchain that's pretty cool well omdoh's law means maybe it's 90x rather than 100x right but with zero knowledge stuff if i can run a machine that's going to produce a proof that it correctly executed things and now that proof can be can be can be verified in in order one time now if i add one more machine i've got one more machine out there proving a different computation so i've got exactly horizontal scaling the more machines i add the more compute i can do and i'm rolling them all up into one chain that's validating the the snarks that those things acted correctly we're not that's a research problem still and you know and you know zcash is

one of our first founders and or first funders um and we're certainly interested in that line of research it's being driven partly by you know do the same thing for the evm but it turns out the javascript engine it may actually be easier to do than the evm so we'll see but that's not this year that's future yeah yeah maybe maybe instead of uh if you know final topic that we could like touch on a little bit i mean we talked a lot about like you know gorek as this environment to develop smart contract in and egoric as this blockchain that you know that would be like a way to like deliver applications built on that platform um but the gorick also has

you know built a bunch of other kind of components you know and and sort of these economic it's like it's also an economic system like first of all like why did you choose to do that why not just say like oh it's a smart contract chain and you know people can build whatever they want on there because uh well a couple of different reasons but but the big part is we want to enable an economy of cooperating business we want to enable you know the explosion of defy and um and you know we have a bunch of economics economists that are near the project or working at the project or advisor whatever and one of the observations is

is you know economies having a stable token having a stable currency is grease um to to the wheels of an economy right it it it removes a big bunch of friction and in particular for example let's talk about gas prices right in ethereum you're you're paying eth for execution but execution is really like your postage bill or your rent and so it's the equivalent of you're paying apple shares for your rent now you could do that right but it's not great from an economic efficiency point of view because now you can't compare is your rent next month more than your rent this month because the same number of apples shares and they have to check did apple go up right or is there a hedge did it

maybe do a distribution in the middle so it's even though it's more apple shares it's kind of even you know it's like hey you know why are you thinking about that if you just paid your rent in dollars you can tell you're paying the same rent next month or they raise the rent by five percent right um and so so businesses shouldn't need to deal with that crap and it prevents certain kinds of innovation and eliminates certain kinds of very useful um uh uh uh economic activities and services that people can provide and so if we want you know when when when node.js come out or npm when react came out people could innovate quickly with these components produce something that solved their problem and then they had a place to deploy it well we needed

a place and ethereum is a place to deploy smart contracts it just has these intrinsic problems that are one of the things that we are building a different place for and so we needed something to be a place the question is how is gas paid for well again if we were paying with build then we've got this problem of the token that you're trying to spend for your your gas and your postage is speculative so people will hoard it you'll have it be very volatile there'll be incentives to increase you know the the how much i can charge all these kinds of things and if we just had a stable token it doesn't have to be 100 stable doesn't have to be fed to any particular thing it just has to be low volatility now suddenly i could compare today's cost

with tomorrow's cost and so we actually charge our gas in terms of that stable token which means it had to exist in order to launch the platform but we believe that the the positive impact of the smooth integration and plugability of components as a result by removing that friction will be worth that effort additionally we wanted there to not be that that that you know there's sort of these intrinsic misalignments in the model of paying a speculative token both that now some people want to play games with the price or they want to bid it up or the market's changing they're bidding it down and that impacts the ability to execute anything which we know from ethereum we know from from other chains that aren't as expensive but you can

start to see these bad these bad dynamics um and the architecture of ethereum and other chains that derive from it are such that the only way the people actually operating the network get rewarded or increase their reward is if they raise the rent you know they're the slum lord and you're trying to start a startup business inside of your tenement right and they're raising the rent the only way they can extract value and so if they see someone making a bunch of money they raise the rent and we've seen that dynamic in ethereum where you know the landlords the miners resist things that would improve the environment improve the economy um but that would result in them getting less rents and so their incentive is you know raise the rent it's like it's like

you know the way you're gonna grow the economy is by giving rewards for more traffic on the freeway right more traffic on the freeway is not a goal it's a negative side effect and you'd like people incentivized to not have that happen you know you'd like more business with less traffic okay so we hate we take a the stable token as what we pay for gas and that does not go to the validators it goes into a pool that helps stabilize the currency that helps ensure the security of the system it's not the reward validator so validators don't have a reason to drive up the prices indeed they have reasons to lower the prices to enable there be more economic activity because all the rewards to stakers and validators come from the economic activity come from the fees for trading in the amm the fees for

borrowing run that's what drives the economy and it scales with the amount of economic activity on the system and so now validators have incentive to grow the economic activity on the system and so those things mean you really want defy intrinsic to the entire stack and that was a reason to do a separate chain basically and we look very closely at and eventually we will enable the computational model on other chains but getting it so that it can ramp economically efficiently is is is is going to be a big useful value so the key thing you know so our staking token is build bld um the stable token is run run and the interesting observation is given that we launch connected with ibc which

is always the intention we launch in this in this you know interchange ecosystem that's 75 billion dollars worth of assets that cannot currently be used as collateral for a stable token and what that means you know and and so so i'm really excited about the first launch where our first use case for the platform is exactly those contracts you just mentioned where that stable token we need for our execution is also something that's valuable to people that want a stable token to trade on osmosis or as part of some injective uh smart contract or you know or through axillar whatever it is all of these you know all of these um services can get value by having something with a more

predictable value but you know in in in the design of the run architecture is envisioned they can do so where their asset that they are producing could be used as collateral assuming the community agrees could be used as collateral for their loan so it's not you got to buy into build use build get run use run as a stable coin so that your chain is boosting our chain it's you know you got a bunch of atoms already you know you you and you want to be able to leverage them into defy on some other platform bring them over to the run protocol on a cork borrow some run against it take it over ibc to that other chain do your thing and so we're really excited about the run protocol coming out and the extent to which it ends up being a community-backed community-run stable token for the

broader interchange community so that's kind of the the the first use case and it just you know it burgeoned from the interest and input and feedback that we got from in this particular case the lisbon cosmo verse conference and and and and other other activities since then so so we're very excited about that so i wanted to make sure we we hit on that because that'll be coming out in you know the next quarter or so okay yeah so speaking about timelines i mean the main is live now but like what are what are the the major milestones and you know what can what can people look forward to okay so yes main net zero went out in november um we had a public sale at the very end of

december uh which people may not have noticed oh we're very excited about that um and so now we are um starting to put together um you know we're working on we've been we've been doing a bunch of security audits and security reviews and purple team attacks and various things to harden various parts of the system and we're finishing up all of those uh smart contracts so the you know the run protocol has a vault system it has an amm um it has uh um something where you can you can um uh get run versus your staked build um and you know ibc integration and all those pieces so we're working on finishing those up the goal is to ship that in the next quarter or so you know march would be great you know

we just we're really excited we just hired a head of engineering and so you know in the next couple of days i'll get a a much firmer schedule from him and we'll be able to talk more dates but soon you know so so sooner now than ever before so in the next couple of months we will roll out the run protocol for ibc and for the entertain community and then we will go into phase two of mainnet phase two of mainnet is where some set of people that we're working with and we are working with some other teams that are not focused around the run protocol you know we'll we'll we'll be building on top of our our smart contract api they already are and it's programmable on our devnet now um so people can get involved now and we have bounties for them to be able to build stuff but they

will you know that hackathon winners and so forth we will work with to get permissioned vote to deploy these things so we have an nft contract at some point permission vote to roll out this nft contract so lots of people can easily mint nfts in javascript where they get to write some javascript that customizes their you know their minting process or rendering or what have you that would be pretty cool right you know so we'll the phase two will be permission rollout where it's a chain vote to to approve uh deployment or instantiation of smart contracts and then phase three and and so so phase two will be you know summer time frame phase three will be hopefully q4 um and that will be the permissionless and the primary difference there well we know some

improvements we'll be making in all the various apis um but um uh but but the primary difference there is anyone can publish anything we can run arbitrary code so we've got more and more security audits where one of the things you get from the security audits are things that need to be fixed now for the run protocol things that need to be addressed before we have arbitrary malicious code running on chain and so there's just a lot of you know security and engineering work that goes towards releasing uh to unlocking the door and letting anybody in so lots of things we're doing this year yeah thanks so much for coming on it's been a pleasure to speak with you it's been a pleasure to like sort of follow along and the igor journey and to support it and to uh

you know participate in that also from the course one side so yeah i'm really excited to see you know see this play out and see the kind of uh ecosystem and all this work uh finally coming to life this year thank you thank you thank you guys for your support over the years and and your investment in ibc and all that kind of stuff so so uh i'm glad you guys are one of our validators and and i look forward to lots of stuff that we we do on chain together in the future absolutely cool all right then with that uh thanks so much everyone