Dev tools & infra in a multichain world - Panel w/ Bogdan Habic, Sahil Sen, Lei Wu, Valentin Mixov
ETH Belgrade Community·Sat, Oct 7, 2023, 12:00 AM
Speaker
Developer tools and infrastructure in a multichain world - Panel w/ Bogdan Habic (Tenderly), Sahil Sen (Quicknode), Lei Wu (BlockSec), Valentin Mixov
Transcript
hello everyone I'm glad you're here at 4 20 for the last uh session not somewhere else um so on this um panel we're going to talk about um devtools in infrastructure with uh people that are coming directly from the trenches people that are building these things for for you for the developers so I'm pleased to introduce to you uh sahil who is a senior developer Advocate at quick notes and he's focused on educating devs around blockchain Concepts and dapps he's coming all the way from Mumbai we also have lay the co-founder and city of boxec that focuses on building blockchain security and he's coming from Beijing so again very far and bogdon the co-founder and situa Tenderly who is leading the the team around the full stack infrastructure in web free coming 300 meters away coming from Belgrade yeah so let's open up the discussion with um the question what is the current state of devtooling in infrastructure and how do you compare it with one year ago maybe Baldwin can start sure so I think uh we should also look at generally Tooling in web 2 we're constantly like forgetting how web2 doing things so in the last year things have been progressing much faster much much faster so for example for the last five years or up until a year ago more or less tanjali was the only like multi-chain developer tool more or less and then a year ago a bunch of companies started popping up which are doing an amazing job I mean block SEC for example with their Falcon yeah but no but it is true so in the last year we had like six times as the amount of innovation compared to like the previous four years and I'm actually very glad that's happening and I think that actually came into existence from frustration of the app developers that like when you're developing on a single chain things might be okay but as the future is multi-chain I think people are now realizing hey this is a thing solved by tools not the thing solved by anything else so I'm really I'm really happy with how things have been progressing so far especially in the past year yeah yeah from my understanding of observation the tools are getting more sophisticated in the past year for example The Foundry like the rising on Foundry last year and of course there are as you said there are new developers new tools are developed for for example like us the Falcon so I think things get more interested and more promising yeah yeah I mean I'll just say go what they said that until yes last year they were just not until last year but even now there are only few players but until last year there were there were even fewer players for example take a library ethers and web 3.js were the major players but right now uh Foundry is full stacked and then wagme is a new library which is coming up so that's what's happening a lot of new players are coming and that's just for libraries but in even in infrastructure tooling right uh earlier if the node providers were but right now there are other players like inferior Alchemy quick node change stack there are so many players coming in there are so many different different providers and what I truly believe is that we still have a very long way to go the entire web3 ecosystem is still it's in the tooling stage everyone is just developing tools and we are going to see a lot of more tools coming up and it's gonna take a lot of time to get to the stage where people actually build real life applications where normal day-to-day person can use but right now it's it's in the tooling States if only devs are in the web 3 ecosystem the users are only devs uh person who knows how blockchains work person who knows what's the web 3 ecosystem is about only they are using the applications so yes a lot of tools are gonna come and they are coming and I think just to add maybe to that quick note did an amazing thing so it was just a node provider I'm doing the just because that's actually a very tough business to run we will talk about I think nodes as well as bid but you guys released the quick alerts or the alerting feature as well and did the marketplace as well and like all of these things like we have been so far thinking only about this is a node and this is the tool but the truth actually in web 3 is going to be this is this blob of technology that they use to solve my problems and I think a lot of the players in the space are realizing this is a fusion right yeah yeah it's just like AWS right earlier AWS just used to provide servers but after some time they probably started providing other other like applications other other layers on top of servers as well where developers can just go to their platform take apply take their server and then add on different different things and then it makes their like developing Journey easier so it's just like that definitely yeah which is great for developers right I mean the more tools we get the better the development experience and seems like it's much better compared to one year ago and seems like right now the challenge is this multi-chain world that we all kind of seem to be transitioning to so can you give us some insights what are the hard Parts about supporting multi-chain world um byte code is the first one I guess so we have two terms right now in the space one is evm compatibility the other one is evm equivalence first of all I think it's completely backwards that we need two terms for this but EVN compatible basically meant a smart contract written in solidity and or Viper can execute on a network not execute correctly but it can execute on a network and it tangely supporting 30 something networks at this point no network is evm compatible each Network basically especially from a tooling perspective have these like delicate intricacies about them that you need to correctly solve for in order for you to work on a particular Network so I guess that would be that would be the biggest problem I guess lack of standardization and lack of documentation I guess as well so yeah do you you mean uh there is no two networks that if you take the same contract and you run it on all the different networks the result basically is going to be different not for all contracts but for most yes the easiest way to see this is gas semantics for example arbitrim pre-nitropost Nitro optimism pre-betric post Bedrock all of these basically change on these Network upgrades and it's complete it's a completely different runtime even though it looks the same it runs the same the output isn't the same and that I think causing a lot of problems yeah okay so uh for me I think the major the main difference the main changes comes from the you have to tell the difference between amount of different ecosystems from the several aspective perspective the first one is the chain level as you mentioned is if this chain is even compatible that's fine that will be okay but if it's not for example there are some mistakes will be made by the developers if they don't take care about that for example I remember just in this April there is a app deployed on the uh this thing yeah yeah that's right so they use the transfer function to transfer the user but unfortunately they cannot do that on the existing era so they locked but I don't follow up maybe they have some other solutions to solve the problem so that's the first first level the second one is the I can say it's a the D5 protocols that it they relies on I mean for example if you realize your code relies on oracles for example the unit swap give up something like that if another chain doesn't have that you need to consider your code logic right yeah and the the third one is I guess is the DF itself I mean because you uh oh um in different apps you in different chance you may have different Behavior I mean if you try to make it um be consistent with each other or not it's a problem so that's basically the three level I guess need to be considered and besides if there's a something like if there for example your answers will move cross chain back and forth the extra Safety and Security must be considered so that's yeah bridging basically yes so once you you you need to move assets between the chains you rely on a bridge and many times that the centralization risk like a single point of failure as we saw with the multi-chain just a few days ago in Phantom yeah I mean talking about bridges they are like it's not just a great experience right they are slow they are like prone to a lot of attacks I mean talk about verbal attacks like some time back so yeah Bridges is a very big issue then another big issue is and I'm talking in context of ethereum layer twos multi-chains so um ethereum's main node gland software on which nodes are running get the other l2s are making layer twos are making their node clients a fork off get or something like that but a lot of times they poke the get but something which something which works on ethereum May or might not work on their chains right so they do some tweaks here and there and a lot of time those softwares breaks and I'm talking from the infrastructures point of view a lot of time those softwares break and they will release a new update like just like after five minutes of the folk they'll come to us and they'll be like okay you need to update the nodes because the chain is practically halted and stuff like that and I'll take a specific example for example uh the BSC chain which is called the BNB smart chain right now their folk of Geth was a community managed and Community run folk so for a long time it wasn't even updated it there were no commits on their GitHub so it it had a lot of problems so that's the thing running infrastructure for these different l2s is very difficult because each software requires different uh requirements it can be software Hardware configuration everything but it's changing right now because companies like Aragon or Aragon whatever you want to call it they are bringing a single client which you can run for multiple chains so it's changing in that way but yeah I mean running those infrastructure is a bit but it's interesting now thinking about it we had multiple clients to have client diversification and now we're ending again centralization correctly yeah first they started with get and then they Diversified by Aragon open ethereum parity and now it's again headed into that same direction yeah yeah I also think just the thought about bridges I really like what the instadapt team did with avocado wallet with account abstraction where you just have usdc there and they basically solve for everything else you're not even bridging at all you're basically paying to a paymaster it's an account extraction term but you're paying to a pay master and they basically take care of how money is being used to pay for gas on each individual Network you're still exposed to it kind of implicitly but it used at least you feel safer and I think again the future for wallets will be you're not looking at which chain you are yeah I mean that's mostly yeah definitely yeah but don't you think even that can be a security has that but because I mean the pay Master is like trust trust it's a trusted person it's it's not trustless right no no bundlers pay masters we just didn't have a hack of a bundle of paymaster so this will age very poorly what they said but so far it sounds smart yeah it's uh all about ux because you know multi-chain World sounds great but it's a problem from a ux perspective because people you know it's it's hard enough to explain to people what is gas and how to pay for your transactions and now you have like all these different chains where you have like different gas that you need to pay uh for so yeah I mean it's uh it's quite complicated and if we drill down a little bit on the security front because I think this is something that also kind of impacts users a lot uh what would you say from a security perspective are the challenges for a multi-chain app and help tooling could potentially help with this I guess lay is the best one to start okay so I guess it's still an open question so what I can say is it's quite a straightforward feature uh like if you don't verify your transaction messages I mean the chain ID it might be replayed right I think it's a useful feature because technically you guys just released that feature last last week I guess yeah so that's one thing I came up came up into my mind so I just want to ask YouTube guys from your perspective what's the secret security features I think it's also like tenderly if you look at Twitter we're mostly talking about simulations and forking as like the main thing our company mission is to kill goreley as a as a test at this point but uh why we talk about simulations because we think simulations are a quick way and a quick fix to a problem that's going to take multiple years of like actually knowing how to verify what will happen on chain I think if a user wants to buy an nft and you show them an image of their wallet losing an nft probably 95 percent of people won't confirm the transaction versus where we have now you get this hex binary blob and you just click sign and you're basically anxious for the 14 seconds that are needed to confirm then it fails you spend 60 bucks so nothing you do it again and then you hope you haven't been rugged so I think one is giving information to users how they can make security decisions implicitly security decisions that would be one but then afterwards like a bunch of tooling still needs to be done I mean open Zeppelin exists as a company for reason voxic exists as a company for a reason like all of these things need many more years of many more time in the kitchen basically for them to see I guess the light of day and yeah apart from the smart contract security I think uh in the layer twos or other chains apart from ethereum I think centralization is a big issue and because of the centralization those chains can be taken down very easily compared to ethereum so that is a very big security issue yeah like uh for example the l2s right now they pretty much have a single sequencer so if you bring down the sequencer you can help the whole chain and if you do that for long enough it's a big problem yeah or if you can manipulate the sequencer to get your transactions like validated uh first before others it's a big issue yeah yeah yeah and because I just talked to Boston that three days ago and I just expressed the same idea I don't know whether it's um it it's it works or not because I'm a we asked security guy so we just think from the security and to the developer communities and from our perspective at the very beginning just like web 1.0 or 2 or 3. so people focus on the how to add some functionalities right and as the time goes by when there are variable assets there so security becomes some top priorities stuff something like that so that's what we believe yeah it's it's a challenge and we saw that with Oiler I mean a protocol that's been around for a very long time um hundreds of millions of dollars deployed there and then you know a book was found in an upgrade that happened like six months ago um so yeah it's a it's a never-ending story although I saw the statistic that the amount of hacks in the last six months is uh quite low so hopefully is it the number of hacks or the number of US Dollars amount of dollars we're in the bear Market that's why the amount is low I guess the amount of hacks is still very high maybe enable Market this would be in the Billings probably yeah that's true that's true um okay well let's go a little bit on the infrastructure side um what we would you say are the biggest challenges around running client notes at the moment Mental Health yeah and this is how you react if you're running notes and then you break up crying can I start yeah Okay cool so you have guessed Aragon parity in the last couple of years that you would run uh so he'll mention correctly configuration different different servers that are needed for example you cannot run a BNB node on Google Cloud no matter how much money you throw at Sundar pichai because basically the ssds are too slow the latency is too slow so you need to run it on bare metal or AWS or whatever so uh first of all syncing these things is almost impossible BNB cannot be synced anymore very interesting fact so you need to roll up from a snapshot it's very start to start hard to start as a company if you want to run your own nodes because the costs are extremely high I mean that's why quick node exists as a company that's why we released node as a service product as well and then the third thing is that so many things are undocumented you will get the slack message at 4am guys we're hard forking in like 15 minutes I mean we need to do this quickly so that's like at least the top four for me and then yeah uh yeah we we also provide the RPC stuffs but it's from our perspective on the security Community yeah the problem is first wise if you want to provide a stable service that's very difficult yeah the second one is the story issue right some some Champs like BSC they they have too many blocks there and so it's it's a hard issue and beside besides that because we try to provide some serious service like like monitoring and and uh threat prevention so which will build on top of on top of that so that may require small uh better performance that that's how I can say it's very difficult yeah difficult thing yeah and then I guess you have the most experience I mean the thing is that you mentioned that you cannot run BSA on Google Cloud that's very true and you'll need a bare metal but a lot of time you are running it on a one by metal company's servers and a week after the data grows so enormously that that particular bare metal won't be even sufficient or that particular bare metal provider won't be sufficient so you have to switch to another one then they release a new client which doesn't work with this configuration of your Hardware so you have to move again so there's a lot of context switching and a lot of improvisation when you are running like multi-chain servers and multi-chain nodes exactly and it has become kind of impact mostly impractical for a user for or for a company who doesn't do that full time to run their own nodes right now so so the problem issue basically it's becoming harder and harder to run these nodes and I mean that's uh from uh high level perspective uh actually doesn't sound great because you know relying on third parties to run these nodes it's uh it's problematic it's again like a point of centralization so do you see uh any kind of uh light in the tunnel that this thing is going to become better I think it's also like this is for for full archive notes by the way so running the light node is very much possible to do it on your laptop data availability is actually I guess the topic in this space but
Automatic transcript — names and jargon may be misspelled.