Governance Voting Concept

I would say I widely agree, we need a bit more structure and hierarchy to the decision-making processes in order to reduce noise and increase effectiveness.

Specifically relating to DAOs, I don’t think we need that yet. Many rings (and we have a lot of them) have self-organized to some varying degrees of success at continual working-group style meetings. I believe this type of effort would encourage broader participation along narrow subject bands, and could serve to focus some of the energy in the community if adopted. We don’t need a formal DAO for any of them yet, they’re not that big yet (at least in terms of formal participation). Even the security ring, at 250 members, we only see about 10% participating on a regular basis. That is enough for informal governance to work efficiently.

We can adopt “Rough Consensus and Running Code” both within and across these subgroups as an organizing principle. The purpose of the groups is to focus energy, to give those interested in certain topics a curated feed of information for them to digest and act on.

What we have currently is a floodlight, an unrelenting torrent of energy dispersed in every possible direction. What I want is a bunch of lasers, focusing energy into a directed stream of power, and focus those lasers towards a single point of massive power and effectiveness. A few of them might get misaligned, but even one laser is more effective than a floodlight at cutting through the crap and getting into the deeper issues. </terrible-analogy>

3 Likes

Fun fact: this decision is not confirmed yet :slight_smile: Anything the Core Devs consider to be political tends to be problematic. As @fubuloubu points out, rings / working groups that can take on specific issues, fold in experts, and then come back with a recommended decisions and/or process (see: Signaling Ring) seems like a workable way to scale decision making.

I have no idea what the word “centralized” even means any more. Anyone can propose EIPs, anyone can develop code, anyone can suggest that EIPs are included in hard forks. Does a bunch of that take work and expertise? Yup!

Most of Ethereum is still amateur and smalltime. Lack of funding, lack of process. Should “we”* have a budget per EIP / per hardfork? Looking at the Istanbul roadmap, it’s not clear where security reviews fit in.

Do each of the Ethereum client teams have a dedicated security person?

*“we” effectively means the EF at this point, since there is no other we with a bucket of funds.

Anyway, I broadly agree with you – but pretty much I see “voting” as getting involved in the EIP and core dev process. Which is open to anyone.

The ETH1x process is going to be a real test of this.

2 Likes

Looking at that testnet deploy date, that would be my ideal time to get some security people involved, including a few teams on retainer, to do a deep dive into the EIPs and their interplay. (I wrote about that somewhere… Ugh, forgot!)

Yes. Parity has @kirushik, and Geth (really the EF) has @holiman. Still just two people, not enough IMO for a deep analysis even though they do exceptional work. Pantheon also probably has a great team that is hopefully more directly involved in the next hard fork.

I’m not sure what the QA process looks like with either of these teams (I am sure it is adequetely handled!), but QA per feature is not a good substitute for a deep dive on a pending release (frozen codebase, the whole nine)

I’ve said it before (somewhere…), and I’ll say it again: EF needs to put at least 2 teams on retainer for the next hard fork when it is released to testnet (or even leading up to that, to reduce coordination costs of the testnet fork). It shouldn’t cost more than $80k hopefully, and it’s only every 9 months. I’m sure more than that was lost collectively in the ecosystem over the last roll back. Heck, maybe even the news sites can put some money in from the funds they’d be saving not covering such an event.


TL;DR: Set up a recurring hard fork audit fund, have some matching funds or whatnot, and get saving! (or sign a retainer)

3 Likes

Ethereum is the most mature Blockchain to date. If Blockchain’s are going to be a real part of the global finance and business it will need a better decision-making process that it has today. All I am suggesting (On the magicians for them because it is the best platform for this discussion) is that we look at an improved process to use to document decisions from the community.

We are in a unique situation where we can experiment, make mistakes and improve with relatively little ramifications. We should take advantage of it. Frankly, I would like to see us move to quadratic voting soon, but that is a couple of steps further out.

Therefore, I think the question of community voting through some process should be opened up.

1 Like

Regarding our security team, it’s a bit of a mix between security and testing. On testing, we have @winsvega who’s mainly focused on consensus tests. We maintain two fuzz-testing frameworks, one based on hive and and one libfuzzer, for doing cross-client consensus tests.

The following people are involved in ether vanilla testing or fuzz-testing: Piper Merriam (testing), Holger Drewes (testing), @cdetrio (fuzzing) , @tintin, @wtf (Anuj), @Cryptomental (libfuzzer-fuzzing), @FrankSzendzielarz (hive) and myself (hive/fuzz).

Security reviews of EIPs have implicitly been part of the acceptance discussion. My hope is that it will be explicitly part of the process from now on. After that comes the security testing process, which is what we’ve been building up the capacity for ever since the dao fork (when hive was first created), through the shanghai-forks (which spurned the first fuzz-testing framework).

One of the main points we’ve learned over the hardforks is the importance of getting the features in as soon as humanly possible, so they can be activated for fuzz-testing and verified by other people than the core developers who have all the tools for debugging/testing within the go-specific rust-specific test harnesses.

6 Likes

Nice, it definitely sounds like the process is maturing, and that is a good thing. The last thing I’d like to advocate for is involving external review at the point of go/no-go testnet release, have one or multiple fresh, outside perspectives can often highlight when a critical assumption is wrong prior to the final release process starting. Internal teams are great for the heavy duty work, but you really need the out-of-the-box thinking that outside perspectives bring.

1 Like

I personally would like to start testnets sooner, since those are the playgrounds for developers and users alike to try out features and root out bugs. As @karalabe outlined in his EIP/EEF, even on a busy testnet we can make a rollout without announcing it – doing the fork as a sidechain which will die after a short amount of blocks, but still getting the replay transactions from the non-forked testnet.

At the point where it’s already implemented and ready to roll out, the EIP itself should be already vetted (before being finalized). It’s in that vetting-process where I think external contributions would be most useful.

2 Likes

I definitely agree, I think each individual proposal is getting enough attention as it is. The process has been a journey, but things are going well.

I think the complex interaction of multiple proposals and the existing assumptions of the chain definitely warrants that type of deep, external review. This occurs best when a testnet release has been completed, so potential issues can be explored in practice.


I definitely agree with the fact that there needs to be more of a formalized release schedule, so we can come to those decision points sooner and avoid last-minute changes.

1 Like

Pulling this from a cat-herders post. The problem I’m seeing is how, as an anarchic (non-hierarchical) community, we come a consensus as a whole. As a start I think various stakeholders need to self-organize to develop and express their own consensus. I want to hear from the miners themselves, from the investors, from the developers, from any other self-organized group. If they don’t care enough to get organized I don’t care about counting their coins or their opinions.

@lrettig

I appreciate your opinion and respectfully disagree. FEM is purely focused on technical merit. Core developers would like to be, but in the absence of a more mature governance mechanism, we have to consider more than pure technical questions. As one concrete example, I care a great deal about ethics as well.

As ever, I like for my opinions to be challenged. And we may agree more than we think we do.

Ethics I take to be a core value of our community, so I would surely block consensus on ethical grounds. I don’t know of a core developer who wouldn’t. So I see ethics as a constraint on all of our jobs.

I agree that decisions fall to the core devs that we are not comfortable making. So I’m reaching out to the community for help. “The health of the network” is where the core devs get to issues that might not be purely technical, but still within our responsibilities and open to objective discussion.

Since the health of the network requires the health of the community, and vice versa, I think there is plenty of room for presenting evidence, analysis, and the consensus of other groups in the community to the core devs in terms of the health of the network. We can engage with information like that in forming our own consensus.

But when the core devs can’t come to consensus on what software to build on the basis of technical merit or the health of the network we are up against the limits of our governance, and opinions per se are of little help. The consensus of stakeholders in the community, or even the community as a whole, is what I would want to see, and what we are not yet organized to achieve.

Knowing opinions can be useful in guiding the herding of cats, but I do think that low-quality information does more harm than good, and having a lot of it doesn’t really help. There are statistical and social aspects to that argument that are deeper than I can get into now.

4 Likes

Thanks for bringing up this important topic and sharing your perspective, Greg.

I’d be curious to hear what those arguments are. As you know (I’ve said this many times), in the absence of perfect signals – and we clearly do not have perfect signals – I’d prefer an array of noisy, imperfect, messy signals over no signals at all. I’m open minded about this and happy to be convinced otherwise.

Progpow and http://www.progpowcarbonvote.com/ is a good example. I know that only a tiny, tiny fraction of all ether has voted. But I still see value in this signal. Not just in the vote itself, but in the second-order effects and actions such as @koeppelmann’s vote (https://twitter.com/koeppelmann/status/1096017086198046722) and the way people responded.

1 Like

For me, this topic has evolved to a need for an independent signals group. A signals process will allow people from the various stakeholder groups to be heard. If the results are considered indicative then it provides very useful information to the core devs who, at present, for the most part make the decisions.

It is clear to me now that the Ethereum Foundation nor the FEM will or even should organize this signals group. It should be an independent organization that remains impartial, gathering information and refining the process. The process, as I indicate in the example above, does not need to be perfectly decentralized. Our processes are not ready yet.

But we do need effective signals and a process that we start with and improve upon.

2 Likes

The Signaling Ring is to meet at the Council of Paris, it seems to be organized by Daniel Kronovet @kronosapiens. Perhaps this is where an independent signals group may emerge; Magicians’ Rings are highly independent / self-organized.

There have been meetings in Berlin and Prague as well, plus discussions here: https://ethereum-magicians.org/c/working-groups/signaling-ring

1 Like

Thanks I will reach out to them and may be able to find time to remote attend some of the meetings.

Hi @jpitts, I am planning on attending the signaling ring but I had not been intending to organize. Am I registered as an organizer somewhere?

1 Like

I was saying that because you are the first one on the list :slight_smile: I may be able to attend as well, and there will probably be more as the Council gets closer.

The statistical issue is just that distinguishing signal from noise is a deep problem, and having lots of noisy measurements doesn’t help much if you don’t know the distributions and covariance of the noise, and don’t have a decent model of the signal.

The social issue is that this is published polling data with little statistical or empirical basis. (Per above.) So it can’t really be interpreted objectively, and we risk yet more opinion-driven divisiveness. It’s self-organization, deliberation, and consensus we need, not noise.

2 Likes

My vision is for a funded organization with a full-time person or two that actively work to bring out statistically valid signals. At this point I think we should aim for the active elements of the community. We push to get the developers, miners, traders to respond, such that their signals are relevant. For the core developers and the security experts these are extremely small communities so getting there signal will be much easier. Getting good data from the users and the holders of the eth coin will be more difficult.

I also do not believe that self organization of the community will be very effective. You need a small core of good people willing to spend time consistently in order to achieve results. Based on my experience with the EthSecurity organization (which is a fabulous active intelligent and motivated community), working on elements that aren’t core to their priorities (in this case the security aspects) just doesn’t happen enough.

I cannot see these organization people working as volunteers. The level of effort is too high. In addition, they have to be non-aligned.

I think statistically valid signals that are accepted by the community are achievable, but will require active work. The process will start out primitive and not fully decentralized but can rapidly evolve as the tools evolve.

1 Like

I hear you, but the community is unable to fully fund development, let alone signal gathering. And to an extent I really don’t care about these signals. If a group of stakeholders cares enough to get organized then I want to hear what they have to say. If they don’t care enough then why should I?

3 Likes

Seconded. Signals are important but, sad to say, we haven’t managed to get our act in gear enough as a community to fully, sufficiently, sustainably fund even core R&D so I don’t think full-time funding for signaling work is realistic in the short term. Aragon did fund Tennagraph, though. See https://github.com/aragon/nest/issues/47 and https://github.com/arrose/nest/tree/master/grants/Ethsignals.

1 Like

I’ve shared another voting concept here: Network Referendum: Better Governance/Signaling for PoW-coins

1 Like