Ethereum's Scarcest Resource Why You Should Join the Ethereum Protocol Fellowship by Josh Davis
Ethereum Denver·Mon, Oct 9, 2023, 12:00 AM
Speaker
The presentation will provide an overview of the Ethereum Protocol Fellowship, a program designed to support developers in learning and contributing to the Ethereum Protocol. The program includes training and mentorship from experienced Ethereum developers, as well as opportunities to work on real-world projects. Current fellows will share their experiences and insights from participating in the program.
Transcript
F that is tasked with supporting the core protocol so I'm gonna let Mario here talk a little bit about uh what a core developer is and uh take it away Mario thanks a lot Josh and hello everyone again thank you so much for joining us uh today and uh yeah I wasn't nervous about this presentation until I found out they put us after Carol so yeah the bar is high and uh yeah before we get to the topic about the protocol fellowship and our little project first we need to answer question what is the core developer um what is ethereum core developer and to answer what is ethereum called developer first we need to know what is ethereum anybody um yeah I I like to ask this question at my talks uh folks what do you think what is ethereum it's a big client it's a client that's great yeah yeah yeah that's right oh yeah we get we get the right question pretty fast like normally I hear ethereum is the future ethereum is love right um yeah so ethereum is client it's um it's a protocol it's um ethereum is a is a protocol it's a set of rules which we defined and core developers are people who maintain and develop and flourish this protocol so yeah ethereum starts as an idea uh Define or explain in a white paper of ethereum let's say but from this idea we get to the part we can actually touch which actually defines how ethereum should behave and uh that specification um originally in yellow paper today we have a bunch of eaps we have executable specification and based on these Common Ground there are implementations so we take this specifically defined way how the software should behave and we uh we write it down into actual code and that's the ethereum execution client and consensus client so if I if the answer to what is ethereum for me like the most material way how I can touch ethereum would be the code of the execution and consensus clients so yeah the consensus the execution clients are the original ethereum clients that what what ethereum used to be before the merge and at a time the client um verify the proof of work but now it's governed by the consensus client which implements the beacon chain the proof of stake so we have five client implementations on both sides which are actively developed and maintained uh that's 10 teams already and then there is testing uh because when we we have it like each client uh Team tests its own software but then there needs to be testing which makes sure that it's all interoperable that it's all works together properly and and um and uh according to spec and then there is the research teams uh those are uh the research around the protocol tries to mix it uh better generally right a more scalable secure and um this is what the Corporal is but I would like to also mention a few things which are not the corporate call because when I talk about ethereum developer uh you might mostly imagine some uh person who writes already who write smart contracts defy applications and this is on top of the protocol this is the the application layer which it does not um uh contribute to the protocol itself and yeah I know nft projects infrastructure like block explorers uh layer twos and our languages built on top of ethereum it's all important to note that actually some of these contribute back to the protocol like layer twos we had Carol here and uh the people from optimism contribute also to the protocol but they don't primarily work on that uh yeah and so these developers who are around it or building the application layer that's the major majority of them the web3 devs uh grew pretty fast in past few years so uh you might notice everything around here right all the all this ecosystem around us built by many many devs uh growing fast on the other hand the core protocol uh is uh uh the teams in the curriculum are smaller uh there is a protocol guilt which is a um which is a collective of 128 uh uh 128 core contributors but there is more of them uh there there is around 20 teams developing the core protocol all together it might be around maybe 200 people and uh around yeah around 130 uh in the protocol Guild so we are looking comparing those numbers where we're here we are at like six seven K uh just based on GitHub uh we are talking about like what is it like 20 times 40 times less right yeah no bad math ah it's a lot less so yeah the app developers those are people building the smart contracts um and uh the responsibility of these folks is to create secure environment of their application for its users uh it's a high level development uh not uh yeah and uh mostly these projects are competitive market driven businesses also also um also some public goods uh but mostly with profit incentives and you can imagine this as a building some fancy product some fancy car yeah we could put the Dodge Lambo there uh but yeah fancy car and uh and the core devs are those who build the roads the highways for these fancy cars so people can actually write them so we are so these people are building the actual infrastructure in the system level languages so the implementation of the clients are in many various languages um yeah implement the console execution clients um and the responsibility of core devs is to provide security for all the users not just the application specific but all the ethereum security is based on uh that these clients these implementations behave correctly well and not just that like we see here other chains which are fork in ethereum and basically just reusing most of its code so uh the responsibility extends even Beyond ethereum and the the main difference in the dynamic here is that the core devs are mostly uh collaborative there it's it's not really competitive like I'm talking about 10 different clients teams here and they work together even they are all building uh the same product trying to compete for its users basically but they are collaborating to make together ethereum better and uh so it's like more ethos driven and yeah that's the that's the cool Highway so yeah if you are maybe web tree Dev or uh Dev in general and looking into the core development so uh why is why are these core devs so important well uh as I said they maintain this client they maintain the ethereum itself um the if you heard about the EIP process and uh the research the upgrades of ethereum General this is these people do it right the 4844 we heard here the tank shirting the the scalability and and uh other uh roadmap items we have their our product a result of work of these people um last year vitalik said that even after the merge ethereum is only 55 percent done uh finished so and in the road map there is really a lot of things to finish and each of these little squares is being worked on on somebody from the core development and uh it's because these people are mostly driven whether by the vision of ethereum or uh just being excited about the uh about the technical challenges there and um yeah I think it's a I think it's a a great mission to become one of the core devs and uh we are trying to help you become one and uh so how to do that is is yeah uh our EPF uh project Josh it's yours yeah all right thanks Mario for that explanation about why core development is important and uh why we need more core devs in the uh development community so I'm going to talk a little bit about the uh ethereum protocol Fellowship uh which is a program that is designed to make the process of becoming a core developer researcher or contributor a little bit easier it's a wide wide ecosystem out there with lots of information that's not very well aggregated so it can be challenging for somebody who's interested in getting into getting into this kind of work to do so so uh we developed the protocol Fellowship to to make that process easier a brief history of the protocol Fellowship it was eventually uh initially originated by uh Piper Miriam who's a long time ethereum developer originally called The Core developer Apprentice program and it was designed to bring devs into the portal Network which is a pet project of of Pipers he ran two cohorts and then got enough Developers for his project and decided to pass it off to the general uh EF Community to see if this program would work for the wider core developer Community the program is funded and coordinated by the foundation meant to better the core developer community so we recently ran the third cohort uh we have many of the fellows from that third cohort here sitting in the audience we had over 600 applications for this particular cohort we did over 40 interviews uh officially accepted 24 applicants the program is a permissionless program so we do allow anybody to participate in the program with mostly the same resources and and benefits that an officially accepted fellow would also have access to so we had we ended up having 36 total fellows submitting at least one development update so working at least a little bit on a project we had 20 projects can reach the final stages of the uh the program and yeah so some of the benefits of the EPF uh one of the big ones is that you get an introduction to the development Community sometimes people have a hard time reaching out to developers or knowing who or how or when they can reach out to to find help or get feedback on projects they're working on we provide a semi-structured process for for fellows to do uh their their work on their projects we allow developers to work on the projects that they're passionate about so we don't actually tell them what to do we kind of just say what do you want to do and go and do it we help connect them with mentors in the developer community so people that are experts in their field connecting them to the fellows that are working on projects that are relevant to that particular Mentor we offer Financial stipend so that people are able to focus on working on this project and finally we provided a look into what the experience of being a core developer so some of the projects from this past cohort uh we had some people working on a techu light client the vertical tree research some open Mev games an ethereum Monitor and and a bunch of other projects that you can see up there on that list um we're running a little bit short on time but we're going to bring uh one of our fellows up Kevin who was one of uh the permissionless participants of this program to talk a little bit about the work that he did okay I will keep it as short as possible so hi I'm Kevin um I was part of the last cohort and I want to talk a little bit about my project I worked on and about my experience so the project is called reward apis and to boil it down into one sentence and the goal is to develop apis that provide detailed reward data for reviewing validators validators mainly have free duties attestation make proposing blocks and participating in a sync committee and the problem is there is the data is obviously there but there's no easy way to access the data so um there are some custom build Solutions but it would be nicer to have some standardized set of apis so to the project can be divided into two Milestones the first one was deciding the standard is Beacon API endpoints and the big API is a set of apis for consensus clients to enhance the interoperability and currently there are five consensus clients and the second part is um the second milestone to implement those endpoints into one consensus client and we decided to go for rust for Lighthouse sorry uh consensus client written in Rust so I want to show you how the sync committee rewards look like so just imagine your validator or you're running Lighthouse at home and homesteaker and you have like two validators you are now able to um to input your validator index or even your public key if you want to and at the end the desired slot you wanted to get a data from and the output look looks like the following you're getting the validator index and the reward paid for participating in the sync committee and the public key gets converted to a validator index so how does the the future of the project looks like um we are done with implementing it but there are some other consensus clients picking up our design apis and I think it's a huge success that other teams want to want to have them into their client as well and another thing there is a blockchain Explorer called Beacon chain and they decided to run our apis they had a custom build solution before and I think there's also a huge success factor for our project so I want also to talk a little bit about the experience I had during the cohort so a funny thing is I was not initially selected so this means I got um access to all the resources except of the financial stipend from early on so I had access to the calls I had access to the chat group I had access to the mentorship and everything the whole program is permissionless and Midway through I received the offer to to get a stipend so what I also liked about it is you can choose what you want to work on so um as as they already said there are you can choose your own area you're interested in or you can you can look at a list of project ideas proposed by some mentors to work on and also the last thing I liked a lot was the welcoming community so I met a lot of smart people kind people and welcoming people and the mentors were amazing so I learned a lot in a really really short period of time and how does my future look like first so personally I really enjoyed working at the EPF and core development and I'm now working on an EIP called 6110 it's it the goal is to supply um validator deposits on chain and I met a guy who wrote that EIP through an AMA organized by the EPF so you have also access to a really really good Network yeah that's it from my side awesome thanks Kevin so we got one minute left here we'll talk quickly about how the program works uh you can go ahead and take up a picture of this timeline because I'm going to Breeze right through it uh we have a three-stage program the first part is about onboarding and getting to know ethereum a little bit better and trying to figure out what kind of project you'd like to work on once you have figured out that project you're going to do a deep dive for a couple of weeks learning as much as you can about that particular project and then the remainder of the project of the program is uh dedicated to uh the execution of that project during that entire time you have access to mentors to give you feedback on your project proposal and uh the work that you do during the uh duration of the program so if you'd like to join the fellowship uh these are some of the key metrics that we're looking for people that have strong written and verbal communication skills you'd like it's best to be very self-directed and self-motivated it's good to have some sort of technical foundation and to be able to write code in some way shape or form even more importantly though it's important to be interested in low-level systems architecture and even more important to have a passion for ethereum blockchain and the ethos surrounding it uh some strong signals for your acceptance into the program or at least a second look at your application uh well-written answers in your application an active GitHub account with some sort of Open Source contributions uh low lingual proficient low level language proficiencies and if you have some kind of protocol work those are all great things for us to see when uh looking at your application so uh stay on the lookout uh at the ethereum foundation blog and Twitter and a Google group where you'll see a QR code on the next slide go ahead and start preparing your applications if you haven't already made uh contributions to open source software or are familiar with ethereum protocols those are all good things to do we are going to be starting another cohort either in the summer or the fall so you have time to get your profile ready for that here are two QR codes for the Google group and the GitHub repo from this particular cohort thank you very much again I'm Josh this is Mario we're from the ethereum foundation running the uh protocol fellowship and we hope to see you as core Developers thank you so much [Applause] [Music]
Automatic transcript — names and jargon may be misspelled.