You are viewing a single comment's thread from:

RE: Our Plan for Onboarding the Masses

in #steem5 years ago (edited)

My input would be to get these done yesterday. Communities, SMTs, and light accounts (fixing the sign up bottleneck) should be 'mission critical'. Everything else should come after, specifically EIP and SPS. Put all your resources into delivering those first couple ASAP. They are significantly more important to steem and steemit's survival.

Sort:  

That's basically the situation. Because work on EIP and SPS is complete :)

Good deal. What do you think about changing the witness votes from "30" to "10 or 5"? Right now our Top 20 witnesses are basically all being decided by just a couple of the largest stake holders. That isn't really decentralized in any way... dropping the number down to "10" or even better "5" would significantly help with that.

I think it's definitely worth considering, and one that should be raised with the Witnesses. I would say that we are at least in favor of getting the conversation started about whether this is something that should be implemented in a future hardfork. If someone were to make a great post about this, we'd be happy to Feature it so that the idea could be presented to more people.

At least one post was made about these ideas 9 months ago.

https://steemit.com/steem/@ats-witness/steem-witnesses-vote-number-and-decay

And there were others.

I think we are literally gonna have to run them out of town on a rail.
How tone deaf can they be?
I guess they think muting makes them right.

Forking is still an option. I would support it if targeted properly.

I see steem-engine spinning up witnesses just as quick as they get enough of the bs.

Why they would drag steem around is beyond me.
I figure most of the community goes.

At this point it's not just a few that are aware of stinc being an albatross around our necks.

It would be even more decentralizing to use the concept of 1 vest = 1 vote in the witness system. In other words, you can choose to use all your stake voting on 1 witness, or spread it around in any way you want, but it is not your SP x 30! You can delegate your votes out in whatever % of your stake you want, but if a 1 million SP account votes 500k to witness #1 and 250k to witnesses 2 & 3, they’re done... 1 million votes used.

Interesting. I wonder which would be an easier change at the coding level? I personally like 5 votes per account, but your way would work as well.

It took me a second to process what you're asking because I was thinking # of witnesses and not # of witness votes. I think this would be an excellent suggestion though it's going to take the same witnesses who benefit voting to end said benefit.

Posted using Partiko Android

Yep, which is part of what is wrong with this system. The foxes are watching the hen house. We need to make these changes and we need to make them as soon as possible. One or two stake holders should not be able to select all 20 top witnesses...

That is a bad idea. In fact the ideal number of witness votes should be unlimited and it only isn't because of an annoying exploit with backups (and it is indeed frustrating and perhaps worth reconsidering that the little 1/21 slot forces us to weaken the voting system and indeed the whole platform).

This may seem counterintuitive, but the idea of the approval voting method is to vote for all witnesses you believe are competent and not malicious. Those evaluated as such by the most stake are chosen. Smaller limits of votes leads to more gaming attempts to manipulate the list, and in doing so very likely makes the system less secure.

Right now our Top 20 witnesses are basically all being decided by just a couple of the largest stake holders

At the same time this is false (for example several of us don't have a vote from freedom yet we are still there), and also ultimately the way it is supposed to work. The people with the most at risk should have the most say, it should require a lot of stake to get any witness into the list, and also you don't want relatively small(er) amounts of stake to ever be able to elect any witness, and certainly not multiple witnesses (see above re. "less secure").

In terms of the biggest stakeholders having huge influence, I think the bigger concern might be people not voting at all, and a lot of stake sitting on exchanges in liquid non-voting form. Because when it comes down to it the biggest stakeholders aren't even that big (freedom owns about 3%!), so their relatively large influence over witnesses is an indication of not that much stake actually voting. I really don't know how to do anything about that.

That is not false at all, it is a general statement that is absolutely accurate. The top 20 witnesses are in fact being decided basically by a couple of the largest stake holders. That is a fact. All are receiving a vote from one of the top couple whales. That means that you have 2-3 whales basically dictating the direction of the entire platform. How do you not see that as a problem?

and also ultimately the way it is supposed to work.

Perhaps if the goal is to just have the richest person dictating things for the entire platform, then yes this is how it is supposed to work. However, many people have touted that having witnesses elected by the people helps decentralize the governing process, which it absolutely does.

As a counter example, if one malicious group were to acquire enough stake they could vote in all of the top 20 witnesses themselves, yes it would require a big stake, but it could be done in theory, they could vote in all 20 of "their" people and guide the entire platform in the direction they want or just crash the chain to watch it burn.

While that may sound extreme, there are people out there that do things just like that, in fact there are even some on this chain already.

Yes, that is unlikely, but it is still possible.

Reducing the number of witness votes per account makes that much harder to do.

I think the bigger concern might be people not voting at all

Yes, and that is because their vote literally makes no difference. If votes were maxed out at 10 or even better 5 it would allow for a much more democratic witnesses structure and it would make more votes 'matter' which in turn would likely incentivize more people to actually vote.

Not only that but it would also continually encourage witnesses to do things in the best interest of their voters, a la more of the community at large, which isn't exactly what we have going on right now. As it stands now, in most cases, you just have to cater to a couple of the largest accounts and you are in.

I very much question your assumptions about how a smaller number of votes would work. The total vote weight would fall dramatically and people with a lot of stake, despite fewer votes, would then still have enormous influence over the now-lower weight totals.

Consider the extreme case of only one vote. I'm reasonably certain that every single top witness in that system would still have at least one very large stakeholder vote supporting them, including some large stakeholders who would split their account in order to have more flexibility in voting. It is even quite possible that some large stakeholders, or possibly all of them, would be able to place one or more witnesses into the top list with their votes alone. That is bad, not good.

It is far from clear to me that more votes favors larger stakeholders in any significant way; everyone simply has the same increased opportunity to express support for more candidates, including smaller stakeholders doing so. For example, with only a few votes, as a smaller stakeholder if your first few choices have no real chance of being voted in, then you have to choose abandoning them to have immediate influence between candidates all of whom you may dislike but are credible current candiates. With more votes you can continue to support your first choices (who may then gain additional support over time) and also have immediate influence on the margin. That is the sort of strategic gaming that approval voting aims to (and largely does) eliminate.

There is no way to avoid someone with a million (or even a thousand) times more stake having enormously more influence, and if you could that would be bad because it would mean that an attacker will less stake would therefore gain more influence.

At a minimum, this proposal would require a far stronger argument than what you are making that it would have the beneficial effects you suggest (like an actual paper, with proofs, which considers among other things, strategies like account splitting).

In the absence of that, the baseline assumption I'm going with is that approval voting with unlimited (or at a minimum least >20 votes) is best here in order to get witnesses that are 'acceptable' to the largest amount of stake (which is both a desirable governance and security property)

BTW, remember, most of the largest stakeholders currently vote for more than 20 candidates (most vote for close to 30 and ideally the limit would be higher). It is then the smaller stakeholders who decide among the candidates who are acceptable to the larger stakeholders (and also vice-versa, because there is no inherent ordering to the votes, but this may be less clear to you without really thinking it through).

Again, yes, the largest have the most influence (and when the disparity in stake is very large, the disparity in influence is as well), but all votes absolutely do count.

As a counter example, if one malicious group were to acquire enough stake they could vote in all of the top 20 witnesses themselves, yes it would require a big stake, but it could be done in theory, they could vote in all 20 of "their" people

Under your proposal this would still be the case, they would just need to split their stake into 4 or 5 accounts. The total vote weights necessary to get in the top 20 would fall dramatically, so the total stake required would correspondingly fall.

Since when has "an actual paper with proof" been needed for anything on here?!

Sheesh.

Even in your argument of one vote per account (Which I am not advocating) you make my entire point. You say that the 20 largest stake holders would be deciding the top 20 in that scenario... Ok fine, well guess what, then we at least have the direction of the platform dictated by 20 people rather 2 like we have now... which is exactly my point.

The whole point is making the witness selections more democratic and decentralized than they are now, which is exactly what this would do, I am not sure why you are so against that to be honest.

dictated by 20 people rather 2 like we have now

No 20 accounts, not people.

The whole point is making the witness selections more democratic and decentralized than they are now, which is exactly what this would do, I am not sure why you are so against that to be honest.

I disagree that's what it would do. I'm not against decentralized nor democratic (though in a stake-weighted system 'democratic' is always somewhat of a misnomer).

The point that should be clear by now is that in terms of voting system, single non-transferable vote is actually quite terrible. (Everyone is forced to vote only for candidates right on the margin or 'waste' their vote, and this is especially harmful to the influence of smaller stakeholders, not larger.) Yet, here you are claiming that it would be better, which should be a clue that your mental model is off.

you don't want relatively small(er) amounts of stake to ever be able to elect any witness, and certainly not multiple witnesses

But why not actually?
People use to describe this situation as an "attack", but for me only the ability to put in "one's own" irreversible transaction deserves this term.
What actuall harm can perform one malicious witness?

Even one malicious witness can significant disrupt the chain and cause consensus delays, as well as losses or malfunctions to services which don't wait for many confirmations/finality (which many don't and this usually works because witnesses are not malicious and accidental consensus disruption due to network delays are usually rare).

A single witness can't put in an irreversible transaction anyway, as other witnesses can always replace the block, either deliberately or by accident (above network delays, etc.)

Also, we do have backups, and they can certainly be malicious. So one malicious top 20 is actually two malicious witnesses (which may be the same actor) in a round when a malicious backup is scheduled. The potential for mischief multiplies...

There's an interesting post from Dan Larimer on Medium about decentralization, suggesting some plausible solutions
https://medium.com/@bytemaster/decentralizing-in-spite-of-pareto-principle-eda86bb8228b

Can't see it without logging in. It seems to be that we need a witness vote total less than whatever the decision making witness total is. Meaning that if 20 witnesses decide things, we need less than 20 votes, ideally significantly less to mitigate the largest accounts splitting their stake... Something like 5 votes per account seems like a good place to start.

Personaly I would be happy with the proposal, but it looks like there's some concern about network security, as it's expressed by @smooth
Dan is suggesting more complex solution, quoting reference

To summarize the proposal my suggestion for community to review is to divide the 21 producers into 4 categories:
8 — STAKE²
8 — DAYS * STAKE²
3 — RAM
2 — (AVG BURN/DAY)²
Electoral College
Rather than producers having to choose one of these categories and limiting the number of slots to 21, the network could select 100 delegates and then use approval voting of 1-vote per delegate to select 21 block producers. This added level of indirection gives people more voice without sacrificing blockchain performance and prevents producers from having to pick a category.

Either way, I think some changes need to be made.