Why Decentralization Matters - Gilad Edelman, Mary-Catherine Lader, Lane Rettig, Frankie Pangilinan
ETHDenver 2022 · February 2022 · 33:31
Ethereum core developer Lane Rettig, who went on to become a core developer for the Spacemesh protocol, joins a panel at ETHDenver 2022 examining why decentralization matters in practice rather than only in theory. The panel weighs concrete tradeoffs between decentralized infrastructure and the convenience of centralized platforms, touching on how Layer 1 blockchains, DAOs, and Web3 applications hold up against those tradeoffs. Rettig brings a builder's perspective from years spent working directly on Ethereum's core protocol.
Speakers
Topics
From ETHDenver 2022, hosted by ETH Denver.
Transcript
doing good doing good um did they already intro us okay cool so hi i'm gilad i'm a writer at wired and um sort of representative from the uh the normie world and um and uh in that spirit i think i'd like to talk about some kind of first principles type questions because if you explain why your l2 solution is different to me it won't make any sense so um i thought we'd start by just having everybody introduce themselves and and briefly explain what it is you're working on cool um do you want to start i'll start okay my name is nick i'm filling in for the uni-swap person so um sorry if you wanted to see someone from uni swap so
my project is called fuel and the organization is fuel labs and we work on sustainable scalability tech for ethereum particularly layer twos and particularly something you don't know of yet which is modular execution layers so um that's what i do hi my name is frankie i work at balance i'm head of research and development we have an amazing team and if you guys see anyone there please ask them questions we're doing a native safari extension um i'm explicitly looking forward to this year being the year of wallets let's push the envelope cool and lane hey everybody i'm lane i'm
a core developer um on a project called space mesh we are building the most decentralized blockchain the world has ever seen uh excited to talk about that what that means and why it matters um and yeah i haven't been in the normie world for five or six years you'll have to tell me how things are going there yeah we're all very scared and concerned about what's going on here um but uh but i gather from everybody here that you're essentially all just running charities so that's cool um so elaine let's start with you then because you're building the most decentralized blockchain ever so why from your perspective like what does centralization mean and why is it bad yeah so okay i'm glad we're starting with the fundamental stuff like i don't
i don't believe centralization is inherently bad let me let me be very clear about that right i i think that like there there are trade-offs right this is if blockchain has taught me one thing if kind of protocol design has taught me one thing the past few years oh yeah okay uh it's wow ice cream cone right yeah if um kind of my work in blockchain and protocol design has taught me one thing over the past few years it's that everything is a trade-off and you don't get anything for free so um you know i think that centralization is great when you need efficiency when that's the most important thing you need right but um the issue with centralization ultimately is corruption let me leave it at that for now we can kind of dig into that what that means or how we work around it with
decentralization so just to play that out a little bit and then uh maybe frankie you can chime in but when you say the issue with centralization is corruption what are what feature of centralization are you talking about is it that too much power is concentrated in too few hands frankie do you have thoughts on that um i'm gonna answer this in a little bit get that mic just way up close to your face oh yeah yeah i feel like i should answer this in a little bit of a roundabout way i think my favorite reference right now is the the realization i think back in the early days of facebook when photographers would put up their images on facebook and that the realization that they no longer owned those those photos and so like this is a clear sign
of centralization and like not understanding sort of like how how that one works and when we we kind of like take away power and strip yeah get that mic just right oh right here okay um i think that like for me this this view of centralization is this ability to strip away what people are and who they are on the internet and like not be able to own what they want and what makes them them cool and um so nick how do you think about then decentralization like what does it mean to decentralize if we're living in a world that is overly centralized how do you know and let me put it one one other way if you're
looking at something that you care about how do you make the judgment like is this meaningfully decentralized um so i think to get into and is this fine volume wise is good okay so considering i just joined this panel i'll need to come up with something real real flashy you can also just you can pass you can you no no i'm not passing uh so i'd say to start um decentralization is very very key because you're trying to make a system that doesn't break as easily so making systems that are durable and durability is very very key and then breaking up human power structures in a way that not
any one human can particularly have too much power because humans make mistakes vitalik makes mistakes all the time we love him but he makes mistakes we don't want any one party to have too we've seen what happens when that happens depending on you know what you think about the world so decentralization allows us a tool to break that up in a way where it can still be valuable to humanity but at the same time um you know we can still have a uh a moving force to change the system and and to make it function yeah so the question that i keep coming back to is like if you look at the history of the internet like the
foundational internet protocols and email protocols and other things are decentralized they're very decentralized and yet we see cycles throughout the history of the internet in which somebody comes along at some other layer of abstraction and centralizes power on top of those and that's kind of the story of web 2. um and i'm sure you guys are familiar with moxie marlin spike's recent blog post about this but i'll just read a little bit from it because if i try to paraphrase it i'll say something wrong but he argues and i'd like to get your thoughts on this uh frankie to start um so he says what seems strange to me about web3 is uh but to make these technologies usable the space is consolidating around platforms which goes back um sorry lane i blanked on your name to
lane's point about the convenience of centralization and he gives a couple examples so he makes an nft gets it it gets removed by openc and it disappears from his wallets which isn't supposed to be possible but he notes that his wallets are not actually interacting directly with the blockchain themselves they're making calls to one or two centralized um like providers of that service um so his conclusion is that this early on it's ominous that the space is already seeing that kind of consolidation so frankie like what's what do you make of that critique that we're already seeing a layer of sort of centralized service providers to be to be because it's difficult for the user
to interact directly with the blockchain yeah so um i think i think that for for this i would have to say that everything is kind of two steps forward one step back right we are seeing a lot of centralization i mean if we look at metamask today it's you like almost all of the traffic that we see in the ethereum ecosystem is going through inferior and if it's not going through the inferior it's going through alchemy so we're seeing providers already centralizing that and like collecting all that data and i think that we're just going to like follow this loop right and it's it's going to it just also it connects back to innovation so we need to start seeing things and i like that that bring us back to the other side of the loop as we continue
going up and forward but but what but but lane like what's gonna stop the cycle i feel like in this you know in the second matrix neo gets spoiler by the way neil gets to the end um and he meets the architect and he finds out there's been eight matrices you know that people keep thinking that they've defeated the matrix and then they're mistaken and that's it's you know it's all part that's all internal to the simulation and i feel like that a little bit of that sense here which is like oh no this time we're going to decentralize it and then the cycle keeps happening so lay my question for you is like what do you see in the in web 3 that has the potential to actually because obviously neo does break out of the loop so like what what
do you see now that's fiction but what do you see in web 3 that provides the potential to actually break free from that loop yeah no great question i'm happy we got right to the heart of the matter because i think this is like the most important question probably that we as a community could and should be talking about right now also first things first for anyone in this audience who hasn't yet read the piece that you're referring to that the moxie marlinspike piece i forget the title of it i think it's like some some thoughts on web theory or something so like after this panel like go find a quiet spot and read it because it is like the most valid criticism of web3 and decentralization that i've ever read so like read it and think about it it's important so getting back to the
question i think moxie hit the nail on the head with usability i think that's kind of what it comes comes down to um i also want to say like this is this is what keeps me up at night as someone who's kind of conceiving of and building these like decentralized protocols and applications and things uh looking exactly to your point at what happened to the original web the original internet right the excitement in the 90s around the democratization the the freedom that these technologies were going to bring these open protocols very similar to the energy that we have here today um and what happened ultimately how they were captured in large part by the googles and the facebooks and things right so you know again going back to the original web example running an email server is hard i've done it
i tried to do it again recently there's a reason everyone uses gmail because running an email server is really freaking hard um and and mining most blockchain protocols today is really really hard i'm talking about layer one but the similar things of layer two if you wanna run a validator if you wanna run a node if you want to run a sequencer any of these things so like our approach at space mesh is make it dead freaking simple you download an app you run it in the background you forget about it and you know moxie said in that piece that the core issue is that people don't want to run servers i would extend that by saying they don't want to run miners they don't want to run nodes because it's tricky if you make it as easy as possible that i think is the best chance we have just focus on
usability nick thoughts on that yeah i mean i think i think if we continue to use infuria the way that we do without verification proofs um we've basically just failed as a community to address most of these things because you know i mean infuriates and and systems like it are in a sense just serving data but the data is verifiable but no one verifies the data so basically it's worthless uh in many senses you're just trusting a website most of the time and most of the projects here don't do any of that well don't give you any verification they don't care really so can i just
that's a really interesting point and this is like again as someone who is really an a non-technical person this is a thought that i often have which is i understand the appeal of um you know blockchains providing transparency and immutability and the data is going to be there but i wonder how deep a problem that is of like the very small number of human beings who are going to be willing or able to actually go perform that verification and how meaningful it is it's like if something i mean look at how this might be a bit of a conceptual leap but look how mad the board ate uh got when they were doxxed which just meant like looking at public records and and publishing them those records were
public right but but no one goes to the building and looks them up and i wonder like how that problem might translate into into this space yeah i mean i think um first of all making things as easy as possible to actually leverage the tech that we have whether it be running nodes or actually verifying the cryptographic proofs can be made very very easily and it can also be it can be done in a way where um you know it's it's trivial it's it's not any more of a user experience hurdle than what you see in web 2. they just don't do it because there's a huge financial incentive to ship and not care about these things these things
don't matter to a lot of people yet but if you're building the system correctly it should be so easy to run that it's not an issue like for example the ethereum architecture is pretty difficult to run and infura had to sit there and figure out how to run many nodes in a scaled way just to serve us data so we could use it without having to run our own node but that was because the node wasn't designed for data it was just designed to run ethereum just the protocol they didn't think about data when they built it so when you build things for what we see now is how people use them it's way easier to just say well you know so long as you have these requirements you you can run your own verification this this this makes me
think of another point frankie that that moxie makes in this post which is that protocols move more slowly than platforms do and it sounds like the challenge that that nick's bringing up is like yeah you've you've figured out the thing that what that they didn't think of before but obviously you're not thinking of something now and it feels frankie like the challenge is like how do you develop a system that can like update itself flex like as fast as a centralized platform can when you realize oh we didn't we didn't build for this you're sticking me with all the hard questions aren't you uh so i mean like we'll have a five minute chill session right at the end where you can just pump your coins if that's
helpful that's what i'm here for yeah yeah yeah mike mike mike mike mike um so i guess like i i'm having like a little bit of trouble focusing honestly on this panel because every time anything's being brought up i'm just like like client where the [ __ ] are the like clients you know and like it makes me think like what why are we even like these centralized organizations need to put like i i think they're in as much danger as anyone else for not putting resources into developing like clients i think that of course like the light client is the apple at the top of the tree that we're all reaching for but it is going to be the thing that is going to take us out
of this loop otherwise we'll get stuck in this centralized part we won't be able to run like we need like clients that work in the browser we need like clients that are like efficient on phones and like like yeah no it's it's hard work to do but a lot of that work too is just like we need to put manpower on it and like actually put resources to it and give it attention in the next couple years because yeah we will get stuck and we won't know how to like get out of it and like we're not gonna and yeah protocols take a long time to develop and we've we've seen this with e2 and how it changes but there are some things that like maybe if we just start really simple and we just focus on reads and just being able to do efficient reads
like that would that would like at least help a little bit but we're coming to a point where like resources are going to get expensive i just want to say because it's an ethereum conference and i don't know how many people you know like clients or what a like client is or why it's important but because you're at an ethereum conference i'll say solana doesn't have like clients so whoo little spice little spice for you guys okay who lets you out of the house out there i don't know what that is but you'll learn eventually you know yeah so um yeah can i jump in yeah like clients are very important couldn't agree more we're thinking a lot about this in our work as well um kind of circling back to wait lane just just yeah maybe there are some people out
there who actually don't know what a light client is i don't so can you okay so uh this is great let's segue so um typically if you want to participate as a full peer in the blockchain network whether it's bitcoin or ethereum or you know any other kind of protocol you do what's called running a full node and what a full node does is it downloads every single block every single transaction executes every single transaction every state transition the same thing every other node and every other miner is doing and that's very easy to do for a protocol like bitcoin where the throughput is relatively low that doesn't require a lot of processing power memory etc it's hard to do for ethereum and it's basically impossible to do for a protocol like solana that's
extraordinarily high throughput right you need you couldn't do it on a laptop or a phone you need specialized hardware to do it the idea of a light client is that you outsource some of that work right so your node is not executing every single transaction it's just doing something like verifying the block header so it makes sure that the blocks are in the right order that the blocks are valid that you're not missing any blocks you're not actually processing all the data you're kind of trusting so there's so it's not trustless in the way that running a full node is it's partially trustful in that you're trusting that the nodes that are sending you the the blocks are um are themselves executing the transactions in the blocks but you do know that you have kind of all the blocks in the right order that's why it's called a light client you're
doing part of the work but not all of the work but the important point here is that you can do this on any hardware you can do this on a phone even right and or in a web browser in metamask something like this in theory and again because of legacy blockchains uh it's very difficult with a lot of legacy tech do things that are really fun like run like clients on phones because they're restrained by their legacy design and so this comes back to your upgradeability thing which is you know pretty key to this and i think newer protocols that are being designed are being designed with like clients in mind and particularly like clients using like merkle mountain ranges for example where it just means you could potentially
uh keep a root of all the state on your phone it's very light it's a few you know a few bites something like that so it's very small um but again like if we don't have a a religion and a mentality about checking things and about creating this environment for real decentralization then you will be using things through a website that's run by a company in a jurisdiction with a board and you're subject to their entire structure and that's it and there's no blockchain you could do that right now and fintech is actually in many ways traditional fintech can be argued as more decentralized than some systems now because to be honest there's just more companies doing things there's more
people checking you know so in a sense uh it's very easy to uh fall victim to this yeah we're gonna come back to that point but frankie had something to say i think i just like you say real decentralization and like i would love to sit here and be like fully decentralize all the things but to to do that i don't think that necessarily everyone should be able to should run their own client to agree with this this this concept would be to like say that everyone should go live off the land and we recognize that the reason we have cities is like so that we can don't have to deal with handling our own [ __ ] like you probably have to trust someone somewhere yeah but i think that there's a there needs to be a balance and i think that yeah we need
to keep when protocols are being designed there needs to be a pulse on like is this efficient will this run well can anyone run this and i think that like too many of us are stuck behind our macbook pros and like we're working with some of like the best equipment but yeah i think the pulse comes from like is this are we creating like a resource classes system and like can this run on any device and is there an option to do that but i don't i also want to make it clear i'm not fully against having federated servers and all that jazz yeah it's really nice actually there's a lot of nice designs where you might have a federated thing but there's a lot of proofing involved and so there are systems that do make
sense for that but again if you set your requirements to a node or if you demand asics for example which are highly wasteful you know for mining and you demand them in your protocol you'll be hugely destructive first of all and then secondly um you know you're not having a democratized system so philosophically it's against the sort of original vision of a lot of the cypherpunk things that we saw with bitcoin and what we tried to carry through with theory on what vitalik tried to carry through with his designs so i think it it really is sort of a thing you have to be religious about because you want a democratized base protocol you don't want a highly uh centralized base protocol yeah so i want to go back lane
did you just go back to that yeah so i i think we may be on the same page here you feel free to take things in different direction if we're not we're talking about technological solutions right and i think the technology has to be part of the solution but going back to the question you asked before how do we make sure the protocols keep evolving and don't get stuck and don't get captured there's a social aspect to that as well so i was thinking of circling back in that direction i think the answer there is governance and i think that a lot of protocols are trying to figure out this the answer to this question right now which is how do we allow our community our protocol to disrupt itself um i've seen really exciting things happening in a number of uh blockchain communities player one
layer two we haven't been very good at this up to now and like you know bitcoin has kind of sort of stops making big changes there's no more hard forks in bitcoin ethereum is kind of ossifying over time as well in certain important ways so this is an ongoing challenge but i think governance is kind of the answer to that original question on the social side right well i'm taking care of your devs i mean like we all saw that sweet where the bitcoin does aren't getting paid like exhaustion is real getting paid and not getting sued is important too well this i mean but sort of synthesizing what you guys are saying this sounds dangerously close to like people need to we need to rely on to be different from how people always have been but but but uh nick i'm glad you brought
up the fintech example because i think you got at a really interesting point which is you you can think about centralization and decentralization on like the level of the architecture of the thing that you're using but you can also think about it in terms of choice and so your point was that fintech in a way like web 2 fintech is in a way more decentralized because you at least have different options and um i wanted lane i was actually going to ask you that question of like how much is decentralization about having options i i think it's all about having options i'll give you a metaphor here that i like to use sometimes um democracy okay we don't all vote all the time
uh you know you should vote i try to vote but i don't always do it for this reason or that reason right but if i want to vote i can that option is still there and if things get bad enough i will vote and we've seen this happen we saw this happen in the last presidential election in this country so like i think decentralization is similar even if we're not all voting all the time even if we're not all running our own nodes and verifying things all the time the fact that we have the option to do that and if things get shitty enough we will do that like i think that's very important and we need to put in place credible systems credible incentive structures we need to install credible neutrality into our protocol designs so that that remains the case and actually i very strongly disagree with the point
you said a moment ago which is that we're relying on people to to be act differently than they have before we're not i think on the contrary these protocols are built around an understanding of human nature uh harnessing that through kind of mechanism design and cryptography and these tools we have now to build structures that are resilient against human tendencies like corruption and to synthesize a couple of these themes here like voting choice fintech actually is a really interesting so fintech is a really interesting case because it kind of only exists thanks to a statute that was passed into the dodd-frank financial reform bill in 2010 included a requirement that your bank let you pull your uh bank your data
out of the bank and that's why you can um you that's why you can then interact with like mint or betterment or something like that that's why you have that choice in the market um and you can think of and so that was an act of congress it was an act of representative government it's related to this thing of voting which is like a protocol of some kind democracy is sort of a protocol that is a legal legal protocol yeah sure yeah i mean there are different kinds of protocols democracy is the first decentralized protocol maybe it's sort of decentralized but it's it's actually federated um but frankie like how how like wouldn't it just be nice if if uh couldn't couldn't we save a lot of
trouble and like developer hours if congress just passed a law requiring interoperability oh my god why could you re-ask that question i'm so sorry like just wouldn't it be nice and sort of a shortcut if congress could just pass some laws that required you know interoperability and data portability and stuff like that wouldn't that get us really far towards the goals that you're working on um i can answer that if you want i mean like so you asked me earlier like protocol moves slower you know then like user facing applications is essentially that you're like reiterating the same question with like different terms government moves way slower than software does
i mean if you just like look at how we've how far we've come and they're just now catching up to things like we it's the internet has always been the wild west and it still is even if there are more laws and we have gdpr and we have the you know europe has tried to pass laws around uh privacy like you're not they're never going to they're an archaic system that we're replacing essentially like how is an archaic system that hasn't even caught up to what we're doing going to govern what's going on now that i'm totally sympathetic to that and obviously government is very [ __ ] in a lot of ways like no sorry and just to continue on that thread for a second if they could do something like that would we even be
here in the first place well that's my question that's what i'm asking so so the thing is there's a big difference between mandating uh a legal precedent for companies to follow on data and interoperability and essentially a platform or a in a sense a decentralized platform that people can actually leverage um the the lower level protocol and not have to reinvent this wheel it's not something that government can do or do well uh in a way because they're they're not going to be able to keep up with all of these things this is a very quick space it's very very fast so i think in a sense you shouldn't do that
because they can't keep up so and they've proven that pretty much every single time and i don't think even just mandating a single thing would address it i think in the end um you know what ethereum and all these other systems allow for particularly which is more important is the democratization of the access to build on these things because that's that's the difference of what makes the difference between fintech and someone starting a dex right now in ethereum some kid in his basement who's like 15 doesn't know anything can start a dex on ethereum now that's very dangerous and it's horrifying but they can and they will and they have and there's an interesting aspect of that philosophically because it's the
access to make that possible that makes this all interesting if you don't if you restrain the access which governments are really really good at they're good at really restraining access to things then basically we shouldn't do any of this because it most of these people wouldn't be here if the government just told them you can't do this so i think um we have a window of time before a lot of things get really really bad and i feel like right now it's sort of um proving that this access was worthwhile for humans to to to leverage so i think that that might answer your question just just quick thought if i may i agree with both of your points um with respect to government regulation
which government ethereum is not american ethereum's not european if name is not chinese this is this is something novel and and we don't have a government or a meta government in place um that could even theoretically regulate this stuff so i think the answer to your question is no just to clarify what what i'm talking about is less like regulating ethereum and actually um putting in regulations that um make building on something like ethereum like more attractive um right or be the the power of regulate the question i'm asking is what is the what is the power of regulation to um like help lock things open essentially um but but frankie i want to go back to you
so early early in the conversation you talked about that phenomenon of web 2 platforms like facebook sort of that dawning moment where you're like oh i don't i don't own this stuff like i can't take this with me and that that made me want to ask you to what extent are are you involved in building um decentralized alternatives to the kinds of things that we already use now right like facebook but on the blockchain versus using this uh technology to come up with things that we haven't even thought of yet so they're definitely things being built on or like using ethereum and other protocols now that are supposed to replace facebook but i don't think that we are even ready for that yet i think that if we if we really
want to go tackle those systems we have to take it one step at a time you know and we have to go from from the very smallest thing achieve achieve that and make it universally understood and i personally like would love to see and and what i am excited for in the next coming year if not years is actually getting rid of oauth i think before we can even tackle things like twitter and facebook and true ownership of data and identity we need to get rid of this concept of like somebody else is giving me access to my identity so that i can access things on other sites i mean every time we go somewhere and it's just like log in with facebook this simple act is essentially creating and composing an identity that
is not necessarily yours it has your name and it has your face but it's not yours somebody else's isn't that something that doesn't really require this isn't really criticism but that doesn't really require using interacting with the blockchain at all i mean no of course not it does not require interacting with the blockchain but the the kind of the the what ethereum is has done and what metamouse had done was getting people to use local keys to like sign messages to prove self without have it while still owning self right and having localized identity and some of these smaller tidbits these small pockets and ethereum are going are are like huge that are going to change and it's just little things we change
little things and everything trickles down right now the big question i have on that uh is and this is i think i only have like two minutes by the way just to let you know who said listen to three okay um do you see a way to get to a place where that becomes ubiquitous and yet people are not we're not expecting everyone to be custodians of their uh of their private keys or their um like with with no recourse if they lose that stuff you know i want i think that we will come to a point where research will put us in a place that everyone can be custodians with their own private keys i would rather see that actually and i think that that is it's a failure on our part if the average person cannot do that that is a user experience flaw
you know and i mean like i if you if you took anything that we were building now and you showed any normal designer in web 2 they would laugh at what we're doing we need to create better user experiences and better education so that this is common knowledge that you can be the custodian of your own keys yeah those are those are problems that are very solvable it's just there hasn't been a high incentive to solve it uh just yet but a lot of projects especially wallet projects and stuff try to solve it but actually that can be addressed pretty easily things like multisigs are actually being highly under underutilized in the space and they actually address that really really well where you lose several factors you can still recover all your keys so all right lane last question and then i
think we're gonna get the hook um how will you know um in three years from now whether this is succeeding or failing decentralization yeah that's a hardball question okay how do we know in three years if decentralization is succeeding or failing i i think my answer would be around user agency right i would like to see the average user of the average application exerting more agency and that could take several forms it could take managing my keys it could take managing the keys for my community or my family or my friends managing data it could mean sort of being more mindful about which
applications we use and how we use them making small changes to open source applications that's a short answer cool all right thanks guys thanks everybody thank you thank you