Organized by: LXDAO

In this fireside chat with Vitalik, we will explore coordination by examining the multi-layer coordination challenges and potential solutions within the Ethereum ecosystem, hoping to inspire thoughts on how to manage coordination issues in decentralized ecosystems and provide insights to overcome these challenges. Here is the text content 👇

Bruce: Hello everyone, I am Bruce, a core contributor to LXDAO and ETHPanda. Today, we explore the theme of "Coordination," looking into multi-faceted coordination conflicts and potential solutions within the Ethereum ecosystem. Through this dialogue, I hope to spark thoughts on how to address coordination issues in a decentralized ecosystem and gain insights to make the entire ecosystem operate more smoothly and efficiently.

Vitalik, as an important participant and observer in the Ethereum ecosystem, we are delighted to have invited him. First, please let Vitalik introduce himself briefly.

Vitalik: Hello everyone, I am Vitalik Buterin, co-founder of Bitcoin Magazine. I have been involved in Ethereum for the past 10 years. I started with research work but have also engaged in many different aspects of the ecosystem.

Bruce: Today we are discussing coordination-related topics. From your perspective, how do you define coordination within Ethereum? Are there any good examples of coordination in the Ethereum ecosystem?

Vitalik: I think coordination can mean many different things. In an abstract and general sense, coordination basically means that multiple people act together towards a common goal, rather than acting in a way that ignores each other's needs or is antagonistic. This can mean many different things. For example, it could mean that people contribute to certain public goods, such as projects that are valuable to the entire ecosystem.

This can also mean that people work together on some common standards, like people transitioning from speaking one language to another because the other language is better in some ways. This is basically what happens every time there is an Ethereum protocol upgrade. It can even be highly chaotic efforts where people are doing different things independently but still contribute to a common goal. Wikipedia's editing is one example. No one is trying to direct others, and no one is forcing everyone to do things in the same way at the same time. But the result is that you still have many contributors making contributions to something that benefits everyone. So I think all these different types of coordination are happening in the Ethereum ecosystem, which largely relies on this.

Bruce: Speaking of the Ethereum ecosystem, due to the concept of "infinite gardens," the Ethereum community encourages diversity. However, this diversity can lead to competition for resources and reputation or similar issues. So what conflicts and coordination challenges have you observed between communities regarding competition and cooperation? What solutions do you think could promote better collaboration and development between communities?

Vitalik: So far, one of the challenges we have seen, which I think we have solved quite well, is the collaboration between different Ethereum clients to upgrade the Ethereum network and simultaneously update their code. Many different parts of the ecosystem are doing this, and it is actually quite an impressive achievement. Ethereum is a unique ecosystem, where the largest Ethereum client Geth only accounts for about 52% of the network. This is not seen elsewhere. In most ecosystems, basically one participant controls almost everything. We see this in browsers, in Bitcoin clients, and even in many attempts to decentralize social protocols.

The challenge of this approach is that we still have to reach a consensus on the next upgrade that happens every year. There are many structures within Ethereum trying to do this, trying to help achieve this goal. For example, there are face-to-face meetings held annually, in fact, several times. We held one in Kenya and had a smaller meeting just yesterday. Then there are all the AllCoreDevs meetings, online discussions, incentives, etc. Initially, the Ethereum Foundation provided some very important funding to these client teams. Even to this day, it still provides some funding, but most of their income still comes from the clients themselves; this is one example.

Another example is funding public projects for the entire Ethereum ecosystem. Historically, the Ethereum Foundation has been doing this, but now we see the emergence of Gitcoin funding, Protocol Guild, and other foundations. We released a transparency report about two days ago. One interesting statistic is that in terms of the amount of public funds allocated in the ecosystem for 2022 and 2023, the foundation only accounts for 49%, just under half. 51% comes from other organizations. Now I think there are other challenges as well. One major challenge is standard cooperation between Layer 2s and between wallets. This is a field that is currently starting to be discussed. And all these discussions about supporting public projects continue. Now more people are trying different experiments because Gitcoin, Optimism, and Protocol Guild have started to take the lead in demonstrating.

Bruce: You just mentioned the coordination conflicts between clients and so on. As the Ethereum ecosystem evolves, the EIP and ERC standard-setting processes have also involved more stakeholders, which has made the process more compact and slower. What major conflicts have you observed in the standard-setting process? How do you think we can balance openness and efficiency to reach consensus more effectively and promote the development of standards?

Vitalik: I think there are three types of conflicts, and it is important to think about them separately. The first is when different groups try to push different standards because the standards they are pushing benefit them. This situation occurs not only in Ethereum; it happens all over the world. The second conflict is when people push different standards simply because they have what is called "not invented here syndrome" or because they want to gain pride and social status from creating something that is used by everyone. The third type is actually not a conflict at all; it is just that people have some small disagreements, and you just need to make efforts to get everyone to sit down together and put aside differences to reach a solution that everyone is relatively satisfied with.

In the first case, I think one thing we can do in a decentralized world is to establish basic norms about what types of standards might be adopted. For example, if you publish an account abstraction standard that requires sending account abstraction transactions through my server, then no one will accept it. People only accept things that appear truly neutral.

Another thing we are trying to do is because at Devcon and ETHcc, many people are dissatisfied with having too many competing peripheral events. Therefore, we conducted this experiment: during Devcon, we will discourage people from holding any form of peripheral events. Peripheral events can take place before or after Devcon, while during Devcon, we encourage people to establish community hubs within Devcon. If your community hub is not simply advertising for itself but can promote substantial cooperation between different partners in the same industry, then the foundation is more inclined to support it.

So basically, we won't hold Optimism events, Arbitrum events, or Starknet events separately, but will hold a multi Layer 2 event as part of Devcon. In this way, at least on a social level, it encourages cooperation to happen, rather than having one person push everything and then passing proposals as their own. This is also how we started to experiment with more standards, trying to establish such norms. I think this also helps to solve other problems. On the one hand, there is the pride that people want to support their own things. On the other hand, there is a very human tendency not to yield to someone else's "strong dominance," or to resist things imposed by others.

And the way to solve these two problems is to encourage more cooperation, even doing so from the very beginning of a process. As for the third problem, it is that communication between people is still insufficient; we just need more people and organizations to create forums that can facilitate such dialogues.

Bruce: Thank you. The next question is about Layer 2. Because we all know that Layer 2 solutions play a critical role in Ethereum scaling. So how do you view the coordination challenges between Layer 2 and Ethereum? What challenges or strategies exist in aligning the development and governance of Layer 2 solutions with the rest of the ecosystem?

Vitalik: Layer 2 initially started in a very independent way, with many people beginning to build their own tech stacks, just trying to create something usable, something that could scale Ethereum relatively quickly. And now the real focus of the ecosystem this year is basically that Layer 2s already exist, they are also functioning normally, and they can achieve their intended goals. So everything is migrating towards Layer 2. But how do we ensure that Layer 2 actually feels like and operates as an ecosystem, rather than feeling like 40 different blockchains? Here are specific examples. For instance, if you have tokens on Optimism but have some applications on Arbitrum, then the deposit process, which is transferring tokens from one place to another, becomes very difficult. There are many similar situations where there are too many non-standard elements and many things lack a unified standard.

So we have started discussing how to standardize these cross Layer 2 contents, which involves participation from Layer 2 teams and wallet teams. This is a field making significant progress.

Bruce: Thank you. Due to time constraints, Vitalik, do you have any other thoughts on coordination to share?

Vitalik: Speaking of coordination, I think there are two important aspects. One is the social aspect, which is the communication between people, and the other is the economic aspect. Interestingly, people like me tend to overemphasize the economic aspect. However, I feel that in this conversation, we are actually more focused on discussing the social aspect, which is quite good.

But the economic aspect is also very important; you cannot try to force people to act in ways that severely contradict their incentives. Because as you can see, if you overly rely on moral pressure, then eventually people will feel frustrated and angry, and then rebel against you, sometimes even going to tell others some completely different crazy ideas. So I think in this regard, as an ecosystem, what we have succeeded in is funding small projects. For example, if you have an important public good that needs funding, and you only need $100,000 or $300,000 to do a demo, then many people will fund it, including the Ethereum Foundation, individual funders, DAO organizations, individual Layer 2 projects, ETH whales, and if they see the demand, many people will give you $300,000.

And the challenge we face is when a project transitions from needing $300,000 for a demo to needing $30 million and serving the entire Ethereum user base as a mainstream project, the incentive mechanisms basically shift from completely socialist to fully capitalist. It's like at the $30 million level, there is actually nothing that can really incentivize you to act in a socially beneficial way besides market incentives. Because everyone basically says you already have enough money. And we want to fund those projects that would otherwise not receive funding.

When you are already a company, you have users, you have investors, then the next challenge is how to continue to act in a socially beneficial way, such as following standards, not trying to create vendor lock-in, and continuing to remain open source, especially as the incentive mechanisms become fully marketized. So I think a fundamental challenge is how we can genuinely improve incentive mechanisms at the $30 million level? For me, this is an unresolved issue. I really welcome people trying different approaches to solve it.

Audience interaction

Q: I really wanted to ask a question about standards, but some of the things you said really inspired me. You just mentioned the sudden shift from small amounts of funding to $30 million. Although these two situations have different operating mechanisms, isn't that sudden shift itself a problem? Can't there be a more gradual way? What experiments can we conduct? For example, in Web3, small businesses—I feel like we see far too few of these kinds of businesses. It seems everyone wants to take off or is just hanging around, doing sauna and other fun things. How can we support more small businesses? I'm curious how you think about this question, or what interesting attempts you have seen.

Vitalik: I think there are different types of support. One way of support is more proactive; if there is a promising project, it needs to be provided with a user base, helping the project to be used in a coordinated environment, allowing it to connect with reality and improve. For example, at Devcon, we practiced many things, such as ZK identity verification tools like Zupass and various on-chain or open-source projects. Part of the goal of doing this is to help projects overcome the barriers of network effects, that is, no one has heard of them and no one is using them; this is a form of non-monetary support.

On the one hand, in terms of funding support, once a project develops to a high level stage, the issue is basically that we need to find a balance, you want a funding model that is not entirely charitable. Because even at the $3 million level, if you only rely on charitable funding, it will quickly be depleted. You need a funding model that is not purely charitable, which expects to see returns, but at the same time is not solely driven by returns. The key question is to find out who is willing to participate in this model in terms of funding.

I think people are willing, there are many people, even many ETH Whales, who hold ETH simply because they believe in this vision and are even willing to make some small sacrifices, but at the same time, they are not in a hurry to donate everything they have.

On the other hand, the issue is what the actual institutions are, what the patterns are, that is, what kind of funding models can truly encourage projects to remain open source, remain friendly to standards, remain decentralized, and ideally, if you eventually become very successful, be able to give back to the next wave of projects.

I know there are various projects in the ecosystem that are basically trying to pool funding from different large ecosystem participants. The basic theory is that if you have this funding, then at least if they have confidence that everyone is participating at the same time, they will be willing to invest in projects on that basis, but so far, this is definitely still in the early stages.

Q: Another question is about people starting their own projects rather than working on existing ones. It seems there is no incentive. If you are part of someone else's project, there is no economic reward. What we really need now is user experience and onboarding guidance. But people, especially venture capitalists, if we want to do a bigger project, they only fund the infrastructure. What can we do to improve this situation?

Vitalik: That's a good question. An interesting thing is that our private good funding and public good funding have both somewhat failed in this regard. Because if you look at projects like Optimism's retroactive funding or Gitcoin, one of their main weaknesses is that they have basically turned into popularity contests. To obtain a large amount of funding, you must have a high public profile, you must have your own marketing department, as if you are basically a political party. But many people are not interested in this model; they do not want to be full-time, self-promoting politicians. And this is essentially a model that conforms to existing social status trends, which clearly favors creators over maintainers.

I think at least in terms of public funding, if we can consciously strive to create mechanisms to identify and support those maintainers, it could be very helpful. I have seen in public good funding that retroactive funding communities are trying to do this, essentially trying to identify downstream dependencies of large projects that everyone agrees are valuable, identifying dependencies, and then identifying the dependencies of those dependencies. This way you can support the entire graph.

There are also people in Optimism who are even very explicitly trying to dig and find such projects. For example, the inventors of Keccak (a hash function used by everyone) are scholars who do not know how to showcase themselves on Twitter. A few years ago, they received a $200,000 retroactive grant. So I think, at least consciously creating a public information graph to show who has contributed to what and making it easier to get attention is in itself an important dependency. Because once you have this, you can more easily support any mechanism trying to improve it.