Lecture 6 is about devnets, networks spun up to test the implementation of changes, and are not made from an existing network state.
Index
Lecture
Office Hours
Guest Speaker
Supplemental Resources
Lecture
â–¼Lecture Transcript
The following transcript was auto-generated, and may content syntactical errors.
Office Hours
(embed office hours video here)
(office hours slideshow link here)
â–¼Office Hours Transcript
The following transcript was auto-generated, and may content syntactical errors.
00:00:07.000 --> 00:00:17.000
Alright, so we are in our final office hours. For understanding Ethereum network upgrades.
00:00:17.000 --> 00:00:30.000
Today is Wednesday, February seventh. It is about 6 h after the. Wholesome network underwent.
00:00:30.000 --> 00:00:40.000
A upgrade. Maybe closer to 5. And so at this point.
00:00:40.000 --> 00:01:10.000
In the course, we've talked to, pretty much how a upgrade works and we've talked about all of the sort of steps all the EIPs that are being included in the Den Coon upgrades specifically and we're at this like precipice point where we've had every single Test Net upgrade occur and at, this next week.
00:01:13.000 --> 00:01:22.000
Probably you'll be at the all core execution devs call. We'll actually like set the timeline based off of feedback.
00:01:22.000 --> 00:01:29.000
Of when the Dan Coon upgrade will occur. So.
00:01:29.000 --> 00:01:42.000
We've kind of seen now like the whole process that comes up to this point. And so today's office hours, we're just gonna have a conversation about really what we've seen out of Devnet 12.
00:01:42.000 --> 00:01:53.000
The Sepolia upgrade and the Holski upgrade and what those have revealed to us, the changes we need to make because of them.
00:01:53.000 --> 00:02:08.000
And kind of where we're at. So maybe we'll start with. Kind of the most pressing thing that I think would impact the, overall Dencon upgrade.
00:02:08.000 --> 00:02:12.000
And that is some of the behaviors that have been seen on Devnet 12 do you think that's a good spark part to sort of start contextually Matt
00:02:12.000 --> 00:02:21.000
Yeah, that'd be great.
00:02:21.000 --> 00:02:34.000
Okay, so just as a reminder, there's been 12 Dev Nets this week is all about Dev Nets and each Devnet doesn't necessarily seek to test the entirety of.
00:02:34.000 --> 00:02:49.000
The upgrade but it does attempt to get at pieces of it. And so, you know, with Devnet 12.
00:02:49.000 --> 00:02:57.000
We were Last week we kind of shared the specs, but I'm just pulling up the It's the, the, the, pendant dock specs here just to share with everyone.
00:02:57.000 --> 00:03:15.000
And it, it was very comprehensive in terms of the, you know, testing.
00:03:15.000 --> 00:03:34.000
A lot of of EIPs across all of the all the clients and this the intention. Was that this would start and then kind of run until the girly fork and my understanding is it's actually still running right now.
00:03:34.000 --> 00:03:35.000
Is that correct, Matt?
00:03:35.000 --> 00:03:43.000
Yes, the It's about to die. Cause we now have some test to look at, but we're keeping it around just a little while to.
00:03:43.000 --> 00:03:48.000
Continue to mess with more. We don't want to try to break Sapolia or Holkie.
00:03:48.000 --> 00:03:54.000
So we are kind of just Messing with girly a little bit still and messing with Devon at 12 by spamming things like blobs.
00:03:54.000 --> 00:04:03.000
There was some previous issues with clients not handling blobs spam correctly. So we have patched some of those things, there's some changes to behavior.
00:04:03.000 --> 00:04:13.000
We're also using the Dev Nets as a means to patch like to test client releases for things like.
00:04:13.000 --> 00:04:20.000
I don't know, we have, you know, look those bugs for example and you wanna still be able to test interoperability and be able to test the the setups between clients.
00:04:20.000 --> 00:04:23.000
So we keep the Debian around a little bit longer to test kind of notional releases before we put out official client releases.
00:04:23.000 --> 00:04:41.000
Because the next one kind of is the big one. If we if we set a main net timestamp at some point and we put out client releases, at some point when we put out client releases, then users will need to have those releases, then users will need to have those releases well in advance and they also will need to have those releases well in advance and they also won't necessarily be able to
00:04:41.000 --> 00:04:52.000
downgrade their clients. 2 prior versions. So we want to make sure that we have everything tested and we want to be also have a place where we can test notional upgrades before we start putting out client releases.
00:04:52.000 --> 00:04:59.000
You can do that on test nets, I suppose, since we have the forks there. But we don't wanna be spamming those test tents, right?
00:04:59.000 --> 00:05:10.000
With weird stuff. So we have that's why we keep kind of both around right now.
00:05:10.000 --> 00:05:30.000
And so just to kind of get into like. Just because the specs of the. The depth.
00:05:30.000 --> 00:05:45.000
Such if client teams like make an update to their to their client, they can go ahead and actually make those updates on the Devnet the same way that you'd make any updates to any existing network.
00:05:45.000 --> 00:05:50.000
So that's it's how we're able to like see those changes and things that are, needed to So.
00:05:50.000 --> 00:05:59.000
Let's so that kinda covers, you know, we've been seeing. The issue is related to.
00:05:59.000 --> 00:06:10.000
To blob spam trying to like, resolve those. S.
00:06:10.000 --> 00:06:11.000
2 weeks ago, 3 weeks ago, 2 weeks ago.
00:06:11.000 --> 00:06:23.000
Think it was on the either the it was the Wednesday before I think it was the 30 first. I think it was one week ago actually.
00:06:23.000 --> 00:06:31.000
One week ago. Goodness. Okay. Time is moving really weirdly for me.
00:06:31.000 --> 00:06:40.000
And. Largely had went. Went successfully.
00:06:40.000 --> 00:06:53.000
There were. And then, Holeski just occurred hours ago. Largely went.
00:06:53.000 --> 00:06:58.000
Successfully.
00:06:58.000 --> 00:07:20.000
So at this point. There I think with with whole skies gonna run there's gonna be the observation of like blobs on, And there wasn't really like any.
00:07:20.000 --> 00:07:28.000
Anything thus far on, that's. That's happened in terms of being like particularly notably eventful.
00:07:28.000 --> 00:07:29.000
That from what I've seen.
00:07:29.000 --> 00:07:30.000
Yep. Yeah, we had a small drop in participation after the fork, but that's typical because it was like around 5% which is probably just 5% of people who didn't upgrade their notes.
00:07:30.000 --> 00:07:33.000
A lot of the times, used for testing like Gurley was to see if your validator setup is working correctly.
00:07:33.000 --> 00:07:44.000
So presumably folks had set up validators and they probably forgot to update them or they were comfortable with what they did and they applied it on main net and then they never looked back and then used their hardware for something else.
00:07:44.000 --> 00:07:50.000
So that's we had no finalization challenges. We had attestations at around 88% effectiveness.
00:07:50.000 --> 00:08:01.000
Proposals at around 96% full, and sync committee at about an 86% effectiveness, which is actually pretty good.
00:08:01.000 --> 00:08:12.000
It's lower than something like main net, but again, that's because people, if you mess those duties up on main net, you get penalized, whereas Horski, is free beyond free.
00:08:12.000 --> 00:08:38.000
So no one. People people are probably not as as careful there so that's those are well within normal ages and we were happy with the results
00:08:38.000 --> 00:08:51.000
Awesome. So I will just give a brief kind of like, here's what happens next overview and then we'll kind of open it up to questions about any of the of the of Devnet 12 any of the prior Dev Nets or the upgrades.
00:08:51.000 --> 00:09:04.000
So at this point, like Matt said, like we always expect there in any sort of.
00:09:04.000 --> 00:09:11.000
Upgrade there's gonna be some group. That does not. Properly update their their client like that is universally true.
00:09:11.000 --> 00:09:24.000
And ideally that number is like as low as possible. So there is kind of a range of.
00:09:24.000 --> 00:09:36.000
Of there's there's a range in terms which you want to hit and just to give you a sense like the The merge had an incredible like.
00:09:36.000 --> 00:09:44.000
Participation, everyone was like really prepared for it and part of that was like there's so much messaging that went into it.
00:09:44.000 --> 00:09:50.000
So at this point, once the date of the main net upgrade is set, and the final client changes.
00:09:50.000 --> 00:10:19.000
Are made. Interestingly, what's been a long process of testing and. You know, reporting out data, analyzing data, turns into like a, I would say typically like a 2 to 6 week time of like really pushing messaging about, hey, if you are a staker, you're a solo staker, like you have to upgrade.
00:10:19.000 --> 00:10:27.000
You have to be prepared for this upgrade because you want to get that participation number to be as high as possible.
00:10:27.000 --> 00:10:37.000
I know that there is some math around like what would be the, number of
00:10:37.000 --> 00:10:53.000
The number of like providers who or just like solo stickers that they didn't upgrade. What it would you know what would what would happen and that was all sort of many of those calculations were done in the run up to the merge because there was like this.
00:10:53.000 --> 00:11:03.000
Fear that if users weren't. Paying attention or even worse taking sort of malicious tack that they could you know fork a theorem in a way that would be really harmful to the overall Ethereum community.
00:11:03.000 --> 00:11:24.000
At this point in time, one of the reasons that we want, you know, high participation remains that, but it's also to make sure that, people are not finding themselves in a situation where they're.
00:11:24.000 --> 00:11:32.000
Falling into these cases of being like slashed. Awesome, unnecessarily, any sort of issue like that.
00:11:32.000 --> 00:11:41.000
The reality is that, you know, because we've decided to secure the network now by proof of stake after using proof of work as like sort of a mechanism to sufficiently distribute.
00:11:41.000 --> 00:11:52.000
The, the East supply to make it sufficiently decentralized. Now it's like really important to message and get people to a point where they're doing those upgrades.
00:11:52.000 --> 00:12:02.000
So while client teams are going to be at a point where they're, you know, making those final changes and observing.
00:12:02.000 --> 00:12:13.000
You'll often times at this point see them really start to have to do outreach to their user bases and make sure those folks are really informed.
00:12:13.000 --> 00:12:25.000
They understand what they're doing. Sometimes doing a lot of hand holding through upgrades. Matt, in the past you've recorded videos where you've actually like walked through.
00:12:25.000 --> 00:12:43.000
Yeah, I think base to take you set up and talking people through what they needed to do Yeah, so there is this shift and I think it's really interesting because now it's like full circle where we've gone through all this highly technical work, but because solo sticking, you know, it's become very accessible.
00:12:43.000 --> 00:13:01.000
Now we have to kind of simplify, simplify, simplify and get people to upgrade and get ready for, the upcoming upgrade while simultaneously already starting on the next upgrade, which has been already happening in process.
00:13:01.000 --> 00:13:10.000
So you kind of see it's like this. Constant circle that we're spinning round the wheel and at any given time multiple activities are happening.
00:13:10.000 --> 00:13:20.000
It really is impressive the amount of information that client teams are keeping in their heads and the amount of expertise that that is shared.
00:13:20.000 --> 00:13:32.000
I was just before this meeting watching, I think it was 6 days ago there was the execution layer meeting number 1 80 and, Matt is, is on that one.
00:13:32.000 --> 00:13:41.000
Right out the gate, but you know, we're already talking about in that meeting, there's a presentation.
00:13:41.000 --> 00:13:50.000
From Joshua about the like anatomy of Verkal trees and how that is gonna come to place.
00:13:50.000 --> 00:14:17.000
So it's like we haven't even that isn't even in this upgrade and we're already moving to that point and I think that is like really, really interesting and we'll add that as a as part of our video watching.
00:14:17.000 --> 00:14:25.000
The time stamp for when that happens and then this upgrade will occur. So. We'll open up to questions now.
00:14:25.000 --> 00:14:43.000
Any questions that folks have?
00:14:43.000 --> 00:14:53.000
Any questions? I'll do anything remotely related to chord development at this point.
00:14:53.000 --> 00:15:00.000
Or if you wanna ask about. Any of the products I manage like Basu or Web 3 signer.
00:15:00.000 --> 00:15:07.000
Or taku I can be Hello, eloquent enough.
00:15:07.000 --> 00:15:14.000
Okay. Explain those.
00:15:14.000 --> 00:15:15.000
Yeah. Okay.
00:15:15.000 --> 00:15:22.000
God, what a question. For the recording, you should skip through this part. There are theory of clients and one of them is a remote signer.
00:15:22.000 --> 00:15:31.000
That's as specific as I'm going to be unless you want to be more specific.
00:15:31.000 --> 00:15:41.000
That's for signing transactions. When? And what sense remote?
00:15:41.000 --> 00:15:48.000
Yeah, so the remote signing basically keeps, it separates your signing key from the logical act of actually signing it and from the clients.
00:15:48.000 --> 00:15:55.000
So you expose your client to the broader internet so they can do things like peer. It can take part in gossip networks.
00:15:55.000 --> 00:16:08.000
And just general P twop layer stuff. But that also potentially means exposing your machine to the broader internet, which is not necessarily something that people want to do with private keys.
00:16:08.000 --> 00:16:30.000
So Web 3 signer provides capability to logically separate the clients from the keys themselves and also from something basically called a slashing database so not only does it protect the keys like that but it provides a backing data base that allows you to manage thousands of keys at the same time without signing duplicated messages.
00:16:30.000 --> 00:16:36.000
Oftentimes people get slashed not because they are maliciously running keys in multiple places, but because they screw up configs.
00:16:36.000 --> 00:16:50.000
So Web 3 signer keeps a log of all the messages signed by various keys and indices and it will lock validating keys and prevent you from getting slashed essentially by die doing equivocation or signing duplicated messages.
00:16:50.000 --> 00:16:56.000
So the real benefits are slashing protection and risk, and, key management and security best practice.
00:16:56.000 --> 00:17:05.000
It also does the cool thing of letting you really quickly switch. Consensus layer clients and execution layer clients.
00:17:05.000 --> 00:17:14.000
So if Web 3 signer manages your keys, you can swap out the CL almost. Like in flight, if you're willing to miss like an attestation, so.
00:17:14.000 --> 00:17:22.000
It helps people switch things. It's also used by a lot of companies that do things like Eat Docker and Dap Note, for example, where they provide out-of-the-box solutions that let you.
00:17:22.000 --> 00:17:31.000
Switch between clients and manage the clients yourself. They use web 3 signer to avoid slashing and to simplify the key management on behalf of users.
00:17:31.000 --> 00:17:38.000
And does anyone switch clients? Like, like, have multiple clients running on the same.
00:17:38.000 --> 00:17:39.000
Bye.
00:17:39.000 --> 00:17:49.000
Yeah, a lot of folks use back like fallback clients. It's not recommended to run more than one valid in client at the same time, but you can run more than one beacon node, for example, if your beacon node goes down, you can swap over to a fallback beak node.
00:17:49.000 --> 00:17:58.000
It's the same with an execution layer client, which is actually harder to run a fallback. It's more expensive, but if you have.
00:17:58.000 --> 00:18:02.000
A bug in one client or if it goes out of sync for some reason there are tons of kind of multiplex solutions that allow you to fall back to the next available client.
00:18:02.000 --> 00:18:22.000
That's why what through signer is crucial in that use case because If you store the validating client within the beacon node and you swap pika nodes you run the risk of slashing yourself by running the beacon node at the same point even for one slot.
00:18:22.000 --> 00:18:31.000
So while you hand over the failover, if you're doing it via web 3 signer, all that through signer does is basically connect to the new beacon node and it already locks that validator so you can't sign the same message twice regardless.
00:18:31.000 --> 00:18:49.000
And then, yeah. And now if you're in the recording, you can come back here.
00:18:49.000 --> 00:18:50.000
I guess just.
00:18:50.000 --> 00:18:51.000
And then, oh.
00:18:51.000 --> 00:18:58.000
Any questions about the upcoming hard forks? The other forks we have app for this one could be interesting to talk about Prague if anyone has questions on Prague.
00:18:58.000 --> 00:19:03.000
And how we might be scoping that sorry I see one you came off me go ahead
00:19:03.000 --> 00:19:16.000
Good afternoon, Tom and Matt. And I have a couple of questions. And. Some of them, most of them are regarding the 48 44.
00:19:16.000 --> 00:19:36.000
18 Now that, the, the, has been deployed. I would like to know if, all the roll ups or at least the main roll-ups I've already implemented everything to make use of.
00:19:36.000 --> 00:19:54.000
For functionalities like those in the in the 48 to 44. This is one question. The other question is, Regarding the blobs in the 48 to 44, EIP.
00:19:54.000 --> 00:20:00.000
Once the time is up, the weather time is the due date is. Is reached for each blob.
00:20:00.000 --> 00:20:18.000
What happens next with those blobs that are floating around? Is there some sort of like a garbage collector way of freeing that storage that was dedicated for those blobs that are scattered everywhere.
00:20:18.000 --> 00:20:27.000
Or how does it work, And my final question is regarding the final project. I'll be I'm interested in knowing what is next up to.
00:20:27.000 --> 00:20:36.000
After this, it has been really very interesting. This this course has been really interesting and I like to know what's next in terms of the project if I'm not proud.
00:20:36.000 --> 00:20:38.000
Thank you.
00:20:38.000 --> 00:20:42.000
Great. I'll answer those first 2 questions and then Tom, I'll let you discuss the last one.
00:20:42.000 --> 00:20:55.000
So the first question is the answer is some of the roll-ups have started to take advantage of 4 4 4 optimism has deployed, 4, 4 on their test net that runs on top of the girly network.
00:20:55.000 --> 00:20:59.000
And I believe they have one that runs on top of the Sapolia network as well.
00:20:59.000 --> 00:21:10.000
So they are starting to test those implementations. I think it's reflected in the token price of some of those because I know that Arbitron has deployed some on their testants as well.
00:21:10.000 --> 00:21:19.000
I think the ZK roll-ups are a little bit slower to adopt this technology primarily because there's a little bit more to adopt this technology primarily because there's a little bit more of an unknown of primarily because there's a little bit more of an unknown of what it means for a ZK compression.
00:21:19.000 --> 00:21:30.000
Whereas the optimistic roll-ups are a little bit more it's a little bit easier to maintain compatibility with some of the The main net stuff, they kind of just say, okay, cool.
00:21:30.000 --> 00:21:37.000
But a lot of them have they have to update their smart contracts. So optimism, it seems, has, is testing their new smart contracts right now.
00:21:37.000 --> 00:21:53.000
Presumably Arbitur and all of the other layer twos are doing the same because if not they're missing out on Hey, ridiculously cheap like they're missing out on a huge reduction cost for themselves, which ultimately leads to revenue for the roll ups, right?
00:21:53.000 --> 00:21:57.000
So I know for a fact again that there are 2 probably more testing these right now. The linear network is getting ready to test them as well.
00:21:57.000 --> 00:22:05.000
There's others that are really close, but since they're live on Test Net people have been absolutely using the blob transactions to submit various things.
00:22:05.000 --> 00:22:15.000
To to Girlie into Sapolia. I have there's there's something called blob scan.
00:22:15.000 --> 00:22:23.000
So if you go and Google blob scanned, you might be able to find it's an ether scan like thing that just takes looks at blob data.
00:22:23.000 --> 00:22:25.000
A lot of it is very opaque because it's just straight up bytes, right? Because the blobs are arbitrary data.
00:22:25.000 --> 00:22:35.000
So it's just, it's usually just huge byte strings. But you can go check out what that looks like.
00:22:35.000 --> 00:22:43.000
That's I think your first question. The second question was what happens to the blobs when they are done with their useful life?
00:22:43.000 --> 00:22:48.000
So on the networks, we only enforce that you keep the blobs around for 30 days. This is enforced in your consensus layer node.
00:22:48.000 --> 00:22:57.000
So consensus layer nodes, I believe, I know for a fact that tech who does this but they often probably offer a mode to retain the blobs as long as you want.
00:22:57.000 --> 00:23:10.000
Teku's archive mode will basically just keep everything it sees around forever and not prune stuff, presuming you have enough disc.
00:23:10.000 --> 00:23:21.000
But the blobs that are on the network themselves. There like we said, we tie them to slots via the KCG commitments and a slot is just where a block goes in the Ethereum blockchain.
00:23:21.000 --> 00:23:31.000
The reason we call it a slot is because sometimes they're empty. Not every block. Exists but we still want to keep track of the slot for the purposes of proof of state.
00:23:31.000 --> 00:23:39.000
So slots are 12 s long. If you think about 30 days, it's, you know, 30 times 12 times 60 times 24.
00:23:39.000 --> 00:23:48.000
And then you have a certain number of slots in the 30 days. So those nodes will prune the blobs that are associated with slots older than 30 days.
00:23:48.000 --> 00:24:00.000
I'm not sure if they do it all at once. Like you mentioned, where we have kind of a garbage question or if they do it continuously, meaning, you know, I'm gonna every new block that comes in every new slot I'm going to prune the oldest blob.
00:24:00.000 --> 00:24:07.000
Maybe there's a mechanism where they wait. Some number of hours and then they prune them all at once that they don't have to do extra work on the node.
00:24:07.000 --> 00:24:11.000
I believe that's an implementation detail that's left up to the consensus layer clients and they probably all handle it actually a little bit differently which is the beauty of client diversity.
00:24:11.000 --> 00:24:22.000
But in the case of The nodes, they're only required to keep it around for 30 days.
00:24:22.000 --> 00:24:29.000
Websites like Blobscan that Tom put up will likely keep these blobs forever and an off chain capacity.
00:24:29.000 --> 00:24:37.000
So they're going to store the data that's stored in those blobs for access by anyone that wants it or anyone that's curious.
00:24:37.000 --> 00:24:43.000
But they they won't have that data available on chain which means it loses its liveness properties.
00:24:43.000 --> 00:24:53.000
But. The data is still relevant for stuff. It was a live on the network at 1 point. Not live now.
00:24:53.000 --> 00:25:05.000
So my guess is we'll see. Archival blobs pop up. But they won't be considered they won't be stored on the network on chain which means the nodes operating the network won't run them.
00:25:05.000 --> 00:25:12.000
Or won't retain them, but they will still be around kicking around for you to access in an archival off chain format.
00:25:12.000 --> 00:25:16.000
Think like an ether scan, right? Type type situation. So apps can make use of them, but they maybe don't have the same trust properties.
00:25:16.000 --> 00:25:26.000
As they do when they were on chain. Well, they definitely don't have the same trust properties.
00:25:26.000 --> 00:25:33.000
But they will still be around and note operators have the ability to prune them or not. It's up to them.
00:25:33.000 --> 00:25:37.000
Only have to retain 30 days worth of blobs
00:25:37.000 --> 00:25:40.000
Thank you so much.
00:25:40.000 --> 00:25:43.000
And then there was was there third question in there? Cause I was.
00:25:43.000 --> 00:25:44.000
Yeah, about the final project. Next steps.
00:25:44.000 --> 00:25:46.000
Yeah, it's a final project. Okay.
00:25:46.000 --> 00:25:57.000
Oh yeah, final project. Okay, yeah, so final project, we will, Friday kind of open up basically.
00:25:57.000 --> 00:26:05.000
A submission. Form where you can, basically put in.
00:26:05.000 --> 00:26:19.000
Any piece of content so it can be a It can be a,
00:26:19.000 --> 00:26:33.000
Twitter or ex post it can be anything on the forums. That we've mentioned Ethereum magicians, that you have like.
00:26:33.000 --> 00:26:43.000
Participated in. To, either help. Further along. Knowledge.
00:26:43.000 --> 00:26:45.000
In the upgrade space. So it's gonna have a really wide like definition of what's done.
00:26:45.000 --> 00:27:03.000
The main thing is that and we'll put the rules around this is that like. Properly site, that if there's any sort of use of AI you have to say exactly, you know, what that was.
00:27:03.000 --> 00:27:12.000
In that you certify that the work is your own. But will, just as the timing of this.
00:27:12.000 --> 00:27:25.000
This course is hitting and we're kind of at the upgrade. Side, you know, basically any evidence that you can show of participating and help spreading knowledge of.
00:27:25.000 --> 00:27:30.000
The. Of this upgrade, that will count as a final project and we'll just give it a completion grade.
00:27:30.000 --> 00:27:44.000
We just wanna make sure that it's there and that it that will be like sort of the final sign off and if you complete that, you will have like successfully completed the course.
00:27:44.000 --> 00:28:01.000
You'll have to go through and just ensure that you Checked off all the lessons, but that then you complete the course and we will, let you know if there's something from like an education Dao standpoint.
00:28:01.000 --> 00:28:07.000
That will be
00:28:07.000 --> 00:28:21.000
Sent out just our platform naturally will give you like a a completion. Screen and in certificate, but we wanna make sure that we can get some.
00:28:21.000 --> 00:28:30.000
Confirmation from education down whether there's some special branding that we can deploy and so yeah that would be That's it.
00:28:30.000 --> 00:28:47.000
So pretty wide definition of what that is. You can be as creative as you want, or you can be as creative as you want, or you could be pretty straightforward and just, you know, showing, hey, this was me commenting on these EIPs and and you could be pretty straightforward and just, you know, showing, hey, this was me commenting on these EIPs and adding to it.
00:28:47.000 --> 00:28:56.000
It can be for this upgrade or for future upgrades. And if you've participated in other, network upgrades in some capacity.
00:28:56.000 --> 00:29:02.000
We're open to accepting that as well. So yeah, that would be the final project.
00:29:02.000 --> 00:29:15.000
You should be pretty straightforward. And attainable. But it does ask you to kind of put yourself out there and either participate in the process or invited others to participate.
00:29:15.000 --> 00:29:22.000
So. A summary thread of like, hey, I took this course. These are the like where the most interesting topics to me.
00:29:22.000 --> 00:29:28.000
Here's where you can learn more. Any sort of like, you know, pointing people in the right direction.
00:29:28.000 --> 00:29:36.000
Particularly as we're going into the upgrade now, it's really helpful. So, We are intending to essentially as you complete this project, enlist your help in getting people to be aware of the upgrade.
00:29:36.000 --> 00:29:48.000
And that it is happening.
00:29:48.000 --> 00:29:49.000
Yeah.
00:29:49.000 --> 00:29:50.000
Thank you, Tom.
00:29:50.000 --> 00:29:52.000
Maybe we'll run more courses. We don't know. We should.
00:29:52.000 --> 00:29:53.000
Hi.
00:29:53.000 --> 00:29:59.000
Yeah, we would love to run some more courses, but we would probably take a little break. After this one.
00:29:59.000 --> 00:30:07.000
Hi guys, and. So first of all, I wanted to thank you for this great course. It was really enjoyable and I learned a lot from that.
00:30:07.000 --> 00:30:20.000
And I had a question. You mentioned a lot of teams that belong to firms or work in some way or another are attached to the industry.
00:30:20.000 --> 00:30:44.000
How exactly does it work? I mean, they just, you know, if I work at a firm, I can kind of put together a team or you know is there any kind of formality here or a way to control for, you know, people you know pushing an agenda or I don't know where doing something that would not necessarily be I know benevolent I'm just too I would like to hear more
00:30:44.000 --> 00:30:46.000
about that if Okay.
00:30:46.000 --> 00:30:59.000
Such a good question. Yeah, I think also we can maybe get into just the general economics of like what incentivizes people to participate in this.
00:30:59.000 --> 00:31:00.000
Hmm.
00:31:00.000 --> 00:31:05.000
So all Matt, maybe we can. Ping pong back and forth on this. So
00:31:05.000 --> 00:31:17.000
When we showed you that overall slide of all the groups that participate and you know what i will actually pull that back up because I think that's a great way to.
00:31:17.000 --> 00:31:21.000
To end this
00:31:21.000 --> 00:31:38.000
This, this course. There is. Like actually very different. That go with each of those groups and honestly like very different ways.
00:31:38.000 --> 00:31:46.000
That they get paid. So that's what I mean when like there's different incentives in different ways that.
00:31:46.000 --> 00:32:00.000
That they get paid. And, so Not to be. This is not meant in a cynical way, but oftentimes, at this point in time on Ethereum, you can kind of think about it like.
00:32:00.000 --> 00:32:11.000
If you kinda wanna know. How people are aligned, like follow the money. Right? Follow the money is kind of the easiest way to think about it.
00:32:11.000 --> 00:32:12.000
Yeah.
00:32:12.000 --> 00:32:19.000
So. I'll just point out an example like layer 2 developers and bring that up. Juan was just kind of asking that question about like, you know, are the LT's ready and like they do need to be ready.
00:32:19.000 --> 00:32:35.000
They are preparing for that because you know there a lot of times their revenue streams come from The token, the what's the token price of the L 2?
00:32:35.000 --> 00:32:41.000
What is the,
00:32:41.000 --> 00:32:42.000
Okay.
00:32:42.000 --> 00:32:50.000
TLV on the L 2, cause that tends to be correlated with the token price. And then, how often that token is used transactionally because they can often make revenue running a sequencer, right?
00:32:50.000 --> 00:33:17.000
The sequencer that's rolling it up. So they want to, their incentive in being involved is not to decisions made that could adversely impact their L two's ability to settle on Ethereum as its security layer and
00:33:17.000 --> 00:33:33.000
Take a separate coffee there because of that. There is an understanding, a balancing act that oftentimes the project managers for Ethereum have to do and understanding what is the incentive.
00:33:33.000 --> 00:33:42.000
Of that team when they make suggestions and try to balance it out. We're still in a phase right now.
00:33:42.000 --> 00:34:00.000
At the Ethereum standpoint, even as big as we've grown. Even with sort of you know, we've really seen the global adoption of crypto and that When you look at the participants on these calls, on ACD, all core execution depths consensus.
00:34:00.000 --> 00:34:14.000
I are calls. It's still like. Small. It's still like relatively small and so there is sort of a natural even with pseudo anonymity.
00:34:14.000 --> 00:34:40.000
A vetting process of kind of knowing it's still possible to know all the actors. And I think what you've brought up will become the essential alignment will become more challenging in the vetting more challenging and will rely more on people's past, like his, like basically the history that they're bringing with them and the things that they've worked on to sort of get a sense
00:34:40.000 --> 00:34:50.000
of is this a team that's actually showing up with a opinion that is going to be additive and help and expand.
00:34:50.000 --> 00:35:01.000
You know interest in in the space or is this a team that might be coming in being like extractive and trying to.
00:35:01.000 --> 00:35:13.000
Potentially, maliciously impact the community. So. I think right now it's kind of a balance it like in some ways.
00:35:13.000 --> 00:35:17.000
The
00:35:17.000 --> 00:35:21.000
All the
00:35:21.000 --> 00:35:35.000
Complexity. Of the process of participating. In core development. Is a sort of unintentional screening mechanism.
00:35:35.000 --> 00:35:40.000
To.
00:35:40.000 --> 00:35:52.000
Essentially see who gets through the process and participates because it provides a way of like essentially vetting people and seeing like what they're working on, what their intentions are.
00:35:52.000 --> 00:36:03.000
Now, The EF has been very good about recognizing like, hey, we actually do need to make programs that are more accessible and not make this unintentionally gatekeeping.
00:36:03.000 --> 00:36:10.000
So there's things like a summer of protocols is a program that was run. There's Ethereum Fellowships.
00:36:10.000 --> 00:36:19.000
And in that way, they're actually able to sort of reach out and bring in new voices. Researchers R&D folks.
00:36:19.000 --> 00:36:21.000
But in a way that also gives them a specific onboarding process, right? They're going through this with the cohort.
00:36:21.000 --> 00:36:40.000
They're working on a specific project. They potentially been given a grant to do that. So that is kind of how, Those are 2 ways that people are able to be brought in and be brought in in a way that sets them up.
00:36:40.000 --> 00:36:48.000
To be successful and be a productive, contributors. I'll hand it over, Matt.
00:36:48.000 --> 00:37:01.000
If there's more nuance or more examples that you want to sort of give around. Ensuring that, you know, the teams that are participating are doing so with good intent.
00:37:01.000 --> 00:37:06.000
Yeah, I mean, there's the simple one of like, if it smells. Like a duck and it quacks like a duck, it's a duck.
00:37:06.000 --> 00:37:16.000
And if people, we, we can kind of sniff out when folks are being intentionally malicious or intentionally pervasive.
00:37:16.000 --> 00:37:25.000
And that's why the client teams are held incredibly neutral for the most part because thankfully in part due to the client sensitive program So the client teams are paid to exist.
00:37:25.000 --> 00:37:43.000
They're also often paid by the protocol guilds. So there are incentives that are run by the EF that allow these clients teams to not be captured by corporate interests with the goal of you know, basically having a revenue stream that is not relying upon selling out or being bribes or other things.
00:37:43.000 --> 00:37:52.000
So it's very easy for I think in these open forums, especially for these to be sniffed out.
00:37:52.000 --> 00:38:07.000
The Ethereum Foundation itself is also pretty good at this because They have no interest in being really captured by any of these interests and they also represent the GET team, which has a very outsized voice on the execution layer because they represent.
00:38:07.000 --> 00:38:15.000
You know, thankfully now around 70% of steak. But yeah, it's we're It's very much so a sniff test.
00:38:15.000 --> 00:38:20.000
And I think that the EF has done a good job of providing incentives to keep these teams neutral.
00:38:20.000 --> 00:38:32.000
It's also much like, you know, I think the layer two's add a new element to this where there they are taking part in protocol development in the very real way.
00:38:32.000 --> 00:38:44.000
And Ethereum itself, Ethereum layer one is also relying on the layer 2 to scale the network of networks, which means that we have a symbiotic relationship.
00:38:44.000 --> 00:38:58.000
So I think it's. A little bit of a give and take it's a little bit of we you know we're allowed to also be cat like you're allowed to express the interests of some corporation on these calls because there's typically in there's typically a reason why they want to do something, right?
00:38:58.000 --> 00:39:22.000
They want to enable a new use case. They want to enable Ex set of users or they want to bring capital on chain and I think that the ethos is still very much closely held within the client teams and in order to become a relevant participant in core development you have to kind of show credible neutrality if you Tom had that clip of the person being like I wanna be a Cordev and you know.
00:39:22.000 --> 00:39:30.000
I wanna do all this like yes, you're more than welcome to come in and try, but if, if you haven't been a credible neutral source of improvement and.
00:39:30.000 --> 00:39:35.000
XYZ, you. Probably not be given this much of the time of day. But yeah, there's a variety of mechanisms in place.
00:39:35.000 --> 00:39:45.000
And I think that, you know, people get their salaries paid one way or another. Whether they are able to impart their will on to core development.
00:39:45.000 --> 00:39:55.000
You kind of have to convince everybody in this chart. Which is a lot harder than you think. And that's, I think that's all I have to.
00:39:55.000 --> 00:39:56.000
Cool.
00:39:56.000 --> 00:40:11.000
I think the final thing I'll add is like One part that maybe we don't talk about as much as like how is maybe flipping the question and saying it like I want to be involved but I need a you know and maybe long term.
00:40:11.000 --> 00:40:30.000
Wanna do this full time. How do I get paid? How do I sort of, you know, pay the bills, keep the lights on, and get to do that, that this work that interests me and fortunately there's a lot of different ways to do this.
00:40:30.000 --> 00:40:36.000
I think this mirrors a lot what you see in other open source communities, but being web 3.
00:40:36.000 --> 00:40:37.000
Okay.
00:40:37.000 --> 00:40:54.000
We do have a unique flavor to it. So, like I mentioned, there are really great grants programs that the EF sponsors that have focused on bringing in researchers people who've worked on.
00:40:54.000 --> 00:41:08.000
Who who are working on interesting research areas and they give them the money to do that work to make that the thing that they're working on part or full time.
00:41:08.000 --> 00:41:22.000
Other companies including consensus historically have followed right because you know, Matt and I, we work for consensus, like, you know, there's, there's an interest.
00:41:22.000 --> 00:41:31.000
I call it pragmatic decentralization as someone who's working on a a decentralized protocol.
00:41:31.000 --> 00:41:57.000
That's my day job. You can't do everything and sometimes it's easier to just pay people smart people who are interested in the problem to do it, then try to bite it off yourself or find someone who's who's aligned so there are ways to, get grants from, companies, from foundations of L twos and other networks.
00:41:57.000 --> 00:42:08.000
And then there are. Also. Like, like, Matt said, like, there's the protocol, guild.
00:42:08.000 --> 00:42:23.000
There are funds that are specifically made for client teams to get paid there are Dows that will often times, provide payment for being like that representative.
00:42:23.000 --> 00:42:33.000
So there is ways to. Month Each as each month goes by, there is more ways it seems to like.
00:42:33.000 --> 00:42:44.000
If you want to make a living doing this. And you want to do it in a way that maybe it's with a company maybe it's on your own that there's more and more avenues.
00:42:44.000 --> 00:43:09.000
I do think at the outset when, Ethereum started it was very much like, hey, hopefully, you're participating your, you know, bought in and your, you know, basically using the protocol and that is your way of like, creating the for yourself.
00:43:09.000 --> 00:43:21.000
The way to to sort of make that a living. But at this point, That is very much diversified in terms of the different ways that you can.
00:43:21.000 --> 00:43:32.000
Can participate. It's a great question. I mean, in some ways, it's like, That's our answer, but I think for each of these different roles.
00:43:32.000 --> 00:43:53.000
You could have a completely different answer. For how they see themselves aligned and that is kind of the beauty of of this course and that it's like in the end Maybe one of the conclusions is like, this is a great example of like a very like just enough structure, just enough anarchy to get.
00:43:53.000 --> 00:44:09.000
The nice sort of middle path of Getting still getting things done but having there be enough enough you know Okay, chaos in sort of the chaos theory way that things move forward and that there's innovation that there's challenges to what we think.
00:44:09.000 --> 00:44:16.000
Yeah.
00:44:16.000 --> 00:44:32.000
Cool guys, thank you for your answer. And another question. And maybe someone aligned, there's a lot of research going around, you know, some of it from the, foundation and some of it, you know, from other sources.
00:44:32.000 --> 00:44:59.000
And a lot of it comes from you know people in via you know in academic world that they publish and interview but there's a lot of other things that are you know just appear as a post or something like that is there I wasn't clear is there some kind of peer review process or something that you know at least you know things coming out of the Hey, you know, that are results that are actually kind of a verified and, you
00:44:59.000 --> 00:45:03.000
know, read through, that are actually kind of, a verified and, you know, read through, verified and, you know, read through such.
00:45:03.000 --> 00:45:18.000
Is there any kind of a process here that will, and such is there any kind of process here that will kind of a process here that will kind of establish the credibility of the you know research that is a tied to the
00:45:18.000 --> 00:45:19.000
Hmm.
00:45:19.000 --> 00:45:28.000
There is at this time not like a formal, peer review process in terms of like a journal based like that a journal would have.
00:45:28.000 --> 00:45:32.000
But our peer review. I think in this space looks a lot more like a code review to be perfectly honest at this point.
00:45:32.000 --> 00:45:49.000
It's more like, like, in almost Like as we think about this. So maybe to talk more about like the upgrade and the testing process, right?
00:45:49.000 --> 00:45:57.000
If someone wrote a blog post saying like, here are the things that I think will be done by the CIP, the peer review process.
00:45:57.000 --> 00:46:15.000
Is almost the EIP going through the different phases in being accepted and then implemented into a client. And then test it on the Dev Nets and the test nets like that becomes our peer review process in terms of pure writing and ideas.
00:46:15.000 --> 00:46:30.000
I think we've, our community has indirectly taken the approach that has been pioneered by Vitalik and Vitalik has actually taken this from other influences where Hill.
00:46:30.000 --> 00:46:40.000
If he writes something, he typically is distributing a draft of that to other people and then we'll cite it in his writings of saying like this was reviewed by these people.
00:46:40.000 --> 00:47:08.000
Thank you for your comments and in feedback. And so when we think more on like the research in Dertical side, that's done in week.
00:47:08.000 --> 00:47:12.000
Yeah.
00:47:12.000 --> 00:47:13.000
Yeah.
00:47:13.000 --> 00:47:17.000
4 though. In week 5, I think we, you know, it was week 5. We pointed out some writing that was done by a combination of the T it was like researchers, R&D researchers from consensus in the Ethereum Foundation and they were actually doing like formal verification and so they actually did go through more of a.
00:47:17.000 --> 00:47:24.000
Similar to a peer review process that I've seen that math mathematics journals use.
00:47:24.000 --> 00:47:30.000
So like, We don't really have, I think short answer is we don't really have the like.
00:47:30.000 --> 00:47:34.000
Science.
00:47:34.000 --> 00:47:54.000
Like, nature, journal, peer review process. Ours looks like a hybrid version of a combination of like code reviews that happen in software tech companies and open source communities combined with sort of like how mathematicians are doing like proofs in showing each other.
00:47:54.000 --> 00:48:04.000
Rob, you. Might have some insight on like, I mean, maybe just. You can talk about like how you think about like.
00:48:04.000 --> 00:48:27.000
Peer review with regards to tooling i would assume it's more focus from from the EF side on like sort of the code review side right code review and any open user feedback.
00:48:27.000 --> 00:48:33.000
You mean like if someone submits a ER to remix, do we accept it?
00:48:33.000 --> 00:48:41.000
Right, like how do you, handle that more like a PR to remix this almost more like a code review process than like a.
00:48:41.000 --> 00:48:55.000
Going through their citation like Oh, they cited this going through it. It looks more like a like it is a code review rather than like a looking at their sighted sources potentially.
00:48:55.000 --> 00:49:09.000
Yeah, I mean recently like, There was a someone wanting to add some chains to remix and It was discussion like, do we want to add this chain?
00:49:09.000 --> 00:49:17.000
Or it was actually as a plug in so. If so, we first we thought, no, we don't want to add it.
00:49:17.000 --> 00:49:25.000
Because if we had this, then everyone's going to want something similar. And then we realized, oh, actually, someone actually has to enable this to.
00:49:25.000 --> 00:49:32.000
To use it. So. You only gonna see it if you wanna use it.
00:49:32.000 --> 00:49:41.000
Anyway, so it's this balance of, making the tool usable, but this is not really, This is just the tool itself, so.
00:49:41.000 --> 00:49:49.000
I think it's, I mean, but maybe like in terms of, and the IP is.
00:49:49.000 --> 00:50:06.000
You know, it's with the, is this functionality gonna be useful for everyone and rallying support around that and and since the remix team is so small, it doesn't, it's just a discussion, but.
00:50:06.000 --> 00:50:23.000
Maybe we could actually, have some formal. Process to go through that we were. To make it more inclusive as the project grows.
00:50:23.000 --> 00:50:24.000
Yeah.
00:50:24.000 --> 00:50:27.000
The EIP itself is probably the closest thing, the EIP, ERC process, given how it's structured.
00:50:27.000 --> 00:50:28.000
Yeah.
00:50:28.000 --> 00:50:34.000
It is effectively Ethereum's version of peer reviewed research.
00:50:34.000 --> 00:50:42.000
Yeah. So yeah, that's a good example. Here's an example I was thinking of.
00:50:42.000 --> 00:50:50.000
I mean, suppose the you know from time to time people kind of public put out these the potential vulnerabilities.
00:50:50.000 --> 00:50:59.000
That could happen And I'm thinking, I mean, okay, does anybody, if I'm kind of trying to catalog and trace all the vulnerabilities.
00:50:59.000 --> 00:51:09.000
Is anybody looking at you know this post about this vulnerability is just really a vulnerability or just, you know, something that something.
00:51:09.000 --> 00:51:26.000
You know, someone who hypothesizes about what could happen, but you know, No, like, Yeah, that's kind of, I was thinking in that direction.
00:51:26.000 --> 00:51:27.000
Okay.
00:51:27.000 --> 00:51:28.000
I do have a really Good example of that. So there is like a disclosure. There is like an ethical disclosure program.
00:51:28.000 --> 00:51:39.000
And so you do, it actually becomes, you do have to like show. That the owner built like so the one that I'm most familiar with.
00:51:39.000 --> 00:51:54.000
Was like a implementation of the protocol such that like. Honest actors could be slashed in these edge cases where they weren't able, where like they were following the protocol, but they could still be slashed.
00:51:54.000 --> 00:52:07.000
And so that was. Disclosed and there was a bat like They were paid for that, but they had to show that it was like mathematically, they had to show that it was possible.
00:52:07.000 --> 00:52:20.000
So that does. Exist. And I believe there is a burden of proof. Like you can definitely hypothesize about it.
00:52:20.000 --> 00:52:21.000
Yeah.
00:52:21.000 --> 00:52:28.000
There is a lot of hypothesizing that happens on. Social media channels, but to actually get this sort of, compensation for it that goes with ethical disclosure.
00:52:28.000 --> 00:52:45.000
There is a system towards doing that and let me just find that really quick so I can drop that in so it persists for us.
00:52:45.000 --> 00:52:57.000
Because that, yes, so that is like, that's, that is a real thing.
00:52:57.000 --> 00:53:00.000
And that's proving it through formal verification.
00:53:00.000 --> 00:53:17.000
I think formal verification is a very If efficient way to do that.
00:53:17.000 --> 00:53:20.000
So.
00:53:20.000 --> 00:53:28.000
There is. Let me show you the bug bounty program.
00:53:28.000 --> 00:53:34.000
In this covers. I believe this covers the entire scope. Of bugs for Ethereum.
00:53:34.000 --> 00:53:45.000
So it for, Ethereum. Not for. .
00:53:45.000 --> 00:53:52.000
So it's protocol client per solidity bugs and there is actually a leader board that you can follow along and.
00:53:52.000 --> 00:53:54.000
Okay.
00:53:54.000 --> 00:54:06.000
These are the clients that are featured in it. And here is like. How you do it and.
00:54:06.000 --> 00:54:20.000
You it says what sort of out of scope and how to submit. And here it is. What you can get paid.
00:54:20.000 --> 00:54:24.000
Okay.
00:54:24.000 --> 00:54:25.000
Okay, great.
00:54:25.000 --> 00:54:30.000
Yeah, so I will paste this in the chat.
00:54:30.000 --> 00:54:33.000
So the likely leaders are in the lead.
00:54:33.000 --> 00:54:38.000
Yes, yes.
00:54:38.000 --> 00:54:46.000
Cool. Well, that brings us to the end of our session today.
00:54:46.000 --> 00:54:56.000
And so what we'll do is we'll get everything up. By Friday so we can do submissions and then we will have a few more communications that will come out.
00:54:56.000 --> 00:55:23.000
As we get into the finalized date of the upgrade because we'd love to do just like a watch party and then we'll also publish out a couple of dates of potential, maybe informal in person meet ups if people are going to be at there in events over the next 3 months or so where we will be there and always grab good to just like grab a coffee.
00:55:23.000 --> 00:55:27.000
No. Not now, not now.
00:55:27.000 --> 00:55:32.000
So, yeah, that's it for today. Thank you, everyone, for attending.
00:55:32.000 --> 00:55:33.000
Yes.
00:55:33.000 --> 00:55:40.000
And, we will have everything up. In terms of final project submission for Friday.
00:55:40.000 --> 00:55:41.000
Thank you so much.
00:55:41.000 --> 00:55:42.000
Thank you.
00:55:42.000 --> 00:55:43.000
Okay, thank you very much for your time. And for your efforts. Okay. IA good one.
00:55:43.000 --> 00:55:44.000
Thanks all.
00:55:44.000 --> 00:55:47.000
Okay, bye bye
Supplemental Resources
Proceeds from collectibles editions of this post will be distributed as follows:
100% to Education DAO Optimism Treasury (0xbB2aC298f247e1FB5Fc3c4Fa40A92462a7FAAB85)
![highlight](/api/highlight?text=Understanding%20Ethereum%20Network%20Upgrades%3A%20Lecture%206&author=Wiki%20of%20Web3&url=%40education-dao&avatarUrl=https%3A%2F%2Fstorage.googleapis.com%2Fpapyrus_images%2F0d52faf4f06b6f12a70a766642132c91.png&featuredImageUrl=https%3A%2F%2Fstorage.googleapis.com%2Fpapyrus_images%2Fb62cccca5a453c9a4de56da20deddca9.png&size=512)
![Wiki of Web3 logo](/_next/image?url=https%3A%2F%2Fstorage.googleapis.com%2Fpapyrus_images%2F0d52faf4f06b6f12a70a766642132c91.png&w=384&q=75)