The UX of Staking on Ethereum and Why it is Critical to Decentralization Colfax Selby
Ethereum Denver·Sun, Oct 9, 2022, 12:00 AM
Transcript
how's everyone doing this morning good thanks for coming into my talk although it's the first one in the morning um as you mentioned my name is colfax selby i am the founder of gitpo app which is a decentralized reputation platform that's focused on representing off-chain accomplishments and contributions on train through poeps we're specifically focusing on awarding those to open source contributors coming up very soon but i also do a lot of work with the e-staker team and the e-staker team is a group of people that focus on educating folks on how to run solo validators at home and also building tools to lower the technical barrier to do so and github is actually inspired by a lot of that work like how do we empower these open source communities to have more contributors and build more effective software so today i'm going to talk about the ux of solos taking on ethereum and why it's so critical to decentralization before i get into that quick high level for those not familiar ethereum currently works on a consensus mechanism called proof of work and it's migrating to proof of stake soon which has a number of changes that are going to happen sort of on the underlying the user experience is going to largely stay the same but a lot of things are going to change and it presents a really good opportunity for us to increase the decentralization of ethereum so i was actually in the cab on the way here scrolling through twitter as we always do and i actually saw this tweet thread that's going on right now about how the staking ux is not very good and how that's leading to centralization talking here a little bit about how there's a lot of like 30 percent of all ethereum validator keys is controlled by kraken and coinbase and that's a big problem and so we need to do a better job of having a ux that is much more accessible for solo stakers that's better for decentralization so before we dive into that let's just revisit what it means to be decentralized so decentralized the verb means to move the control of an organization or government from a single place to several smaller ones now decentralization can happen in many different ways and really centralization can can come into the network on many different levels and decentralization is the reason why we're all working on ethereum right that's the whole point to have sort of this decentralized method of computing and doing all sorts of different things centralization is happening on so many different layers right now one of which is miners and node operators so those are the actual people running the consensus layer software another one is software clients so like what software are you actually using to you uh come to consensus on ethereum another one is hardware it's like what types of hardware are you using cloud providers a lot of people actually run their nodes in the cloud as opposed to like say at home and so say if aws goes down which they inevitably do for an hour every year that provides a big challenge for reliability also if any of the cloud providers wanted to not have ethereum work they can just click a button and it's not going to work anymore and then also geography so here's some quick charts on node operator central centralization in proof of work and in proof of stake proof of work you can see that three staking pools take up an over 50 of the the network this is a concern but the nice thing about proof of work right now is that if you so a lot of the actual underlying node operators that are participating in these pools can switch pretty easily so if the pool starts to be misbehaving or not behaving in a way that the node operators the underlying sort of miners believe in they can switch and proof of stake it's much harder to switch especially now before the merge happens and the withdrawals are enabled you actually can't switch easily from pool to pool so it's a very urgent need you can see here this is what the tweet was referencing kraken lido binance there's a lot of centralization around who's actually running these nodes talking about client centralization so this is the software that each of these node operators are running in proof of work land geth has a extreme majority and proof of stake i actually just updated these slides last night i did a similar talk six months ago proof of stake it's awesome to see prism prism still has a near super majority but this has had a lot of progress in the last six months so i want to give a big shout out to everybody that's been talking about client diversity uh it's really making a lot of progress also i forgot to mention but a lot of my easttaker friends are over there they'll come up on the stage afterwards and we can answer some questions for you guys if you'd like so a lot of work to be done in client centralization as well now diving into the node operator centralization problem which is kind of intertwined with a lot of these there are three major barriers to running a node and participating as a node operator one of which is hardware so how much hardware do you need what hardware do you need to actually run these consensus clients another one's monetary it's like what are your ongoing costs for operating what are your fixed costs for getting started and another one is technical and the interesting thing in the migration from proof of work to proof of stake is that these factors are changing and it's presenting us with a really good opportunity to have a more decentralized ethereum with proof of stake on the hardware side the hardware barrier and the hardware needs for participating in consensus is going down drastically you can see in these two images it's not a perfect calculation of one to one uh but you can see of course a banana for scale and on the left hand side you see proof of work very energy intensive very hardware intensive to participate in consensus because that's the primary method of voting in proof of stake we'll talk about the monetary barrier in a second but you're not actually voting with cpu cycles you're voting with eth and not only is that much more energy efficient but it's also much less hardware intensive so now we don't need data centers to participate in consensus we can actually participate in consensus with a very small machine the size of a banana at home the monetary barrier largely in proof of work land is hardware and electricity and in proof of stake land it's eth you actually stake your eth on your node so the monetary barrier is actually still quite high and there's a lot of really smart people working on that so that's not what i'm focused on right now what i do want to talk to you about is the technical barrier so the technical barrier is high in proof of work and it's still high in proof of stake but now that the hardware barrier is lowered a lot of people have the opportunity to actually stake at home and they can't though because there's still this high technical barrier because like how many people actually have enough technical skills to operate a node effectively i mean many people do but in terms of the total addressable market of the people in the world that can run nodes it's not nearly as many as we'd like for decentralization so on that note let's talk a little bit about what it takes to run a proof of stake validator so there's a bunch of setup that you need to do at the beginning you need to set up your execution and your beacon node formerly known as like eth1 and eth2 nodes you also need to set up your validator and you need to set up pretty robust monitoring because you want to make sure that you don't go down and you want to actually be a responsible node operator on the platform there's a decent amount of maintenance it's not too crazy but you need to pay attention to different like alerts for your underlying systems updates of software uptime pay attention all that stuff and then key management is also a little non-trivial you need to generate your keys you need to store them securely import them if you want to switch clients it's a little bit of a challenge to to move from one to another it's very it's a little risky because just a lot of details involved so at the beginning of proof-of-stake launching i mean the ux was not even where it is now so the ux has already improved quite a lot over the last sort of yeah i guess year and a half since or two years even since like we started actually playing with these early clients at the beginning like all you could really do is like go to the forums and get some help and advice from people that are actually like working on the stuff then different guides came out different communities popped up like the east taker community over here east acre community and many others have held workshops to actually teach people how to set up their nodes that's actually how i originally got involved in the east acre communities i went to one of those early workshops because they had a poep and it was pretty cool um now we're getting to the to the place where we have some good tooling and installers around automating the installation of your infrastructure but it's not quite where it could be where it's kind of like super fizz over here always makes this analogy of a toaster so like you know how you make toast you put bread into your toast and you just like push the button down and you don't need to worry about it the idea of like taking eath and then just like clicking a button and instantly staking is kind of where we want to get there's lots of tooling now that's coming up but we want to get even farther where you can essentially just like click a button and stake now benefits of a good ux you not only have more people being able to operate on the network as a node operator so that increases your node operator decentralization also geographical probably hardware as well because people are going to be buying their own hardware and running in their homes you also can have different tooling built in that automates the selection of clients so you can actually do a better job of having a more well-distributed set of software clients running and you also have the opportunity to increase the the responsibility of the node operator so now like right now i'm in denver something happens to my node at home either like i'm not going to be able to handle it right now on the spot so if everything were automated it would actually be actually create even a more robust network as well and so how do we get there um i've it's awesome seeing a lot of conversations going on around this we at easttaker focus a lot on keeping these conversations going we have a monthly community call that's a part of our steakhouse initiative which the steakhouse initiative is around building tools to lower the technical bar to staking our next community call is coming up on february 23rd so that's next week we'd love for you guys to come join the conversation you can also reach out to me on twitter we're building some tools ourselves we have launched a key generation gui that allows you to generate your keys without touching the cli and we are working on a one-click installer there's many other tools in our community like the steerium team is working on an installer and actually is already functioning and working right now and there's many others so come join the conversation also if you are working on projects that are related to this forget poep what we want to do is we want to help you find more contributors and so please reach out to me suggest your repo on our website and we'd love to work with you to figure out the right way to reward poe apps to your community of contributors so that they can build a track record of their work and then they also feel recognized by your community it can incentivize engagement a little bit the second thing i want to talk about in terms of call to action many of you guys have probably heard that devconnect is coming up in april and it's a big conference hosted mostly by the ethereum foundation sort of preparing for devcon coming up in october and east staker's going to be hosting a three-day workshop there around staking the last day of which which is april 21st we are doing a hackathon and at that hackathon we're specifically focusing on building tools that lower the technical bar to staking so if you're interested in hacking or even if you just have some ideas if you want to help write some documentation or even be a tester especially for non-technical folks i really encourage you to come to the hackathon there and we can keep attacking this problem together so thank you guys all for your time [Applause]
Automatic transcript — names and jargon may be misspelled.