HF Idea / Proposal: Witness Disapproval Feature

in witness •  11 months ago  (edited)

HF Idea / Proposal: Witness Disapproval Feature


HF Idea / Proposal: Witness Disapproval Feature

Hi! I'm able to post again, cool! ;-)

Some info about Witness Rank used as a sub algorithm of UA

When discussing the algorithmic mechanisms of UA, of which the "Witness Rank Initiating Trust Vector" is a sub-algorithm, some people I've spoken to have raised their concerns regarding its weight / importance. A brief reminder: in short, for example @gtg now has a 19.02% witness approval percentage, which number we use as well to initialize @gtg with "19.02% UA Trust" to pass along UA to the accounts he follows (and from there on the UA computations flow to their followings and their followings, etc.). The same is done regarding UA for all active and up-to-date witnesses. And the core reason we implemented Witness Rank this way has been "Let the People vote for the Witnesses (via witness voting), and the Witnesses vote for the People (via their followings)", as a means to create a two-way decentralized UA feedback loop.

Regarding the concerns of using Witness Rank as a UA sub-algo: valid point, I think personally (of which this post is proof of). I've also asked around why the Witness Rank mechanism inside UA raises concerns, and large and about these aspects (summarized) were mentioned:

  • disagreement with the stake of individual witnesses (not really active / engaged, bought-for witness stake, personal reasons);
  • too much SP power owned by a select few witness voters (close to impossible for newcomer witnesses to enter top20 ranks).

As a consequence, it was reasoned that (some of) those witnesses shouldn't be allowed to pass on that much "UA Trust" to the accounts they are following, and / or didn't deserve their own high UA scores & ranks. While I can certainly understand that concern, and think it's a valid concern even, the current Witness Rank status quo is what it is. It was there for quite some time already, and used for various purposes, despite the fact whether the UA algorithm uses Witness Rank or not. Witness Rank now is what it is, and whether UA should incorporate it, and if so with which weight / relevant importance, remains a subjective question.

This made me think about possible solutions for UA to still use Witness Rank as a sub-mechanism, while at the same time properly solving those concerns in a way that makes (even?) more people satiesfied & happy. One solution we (@holger80 and @scipio) have already implemented, is a UA factor that deals with inactive and not up-to-date witness nodes. (At our first implementation, that caused some sudden "UA rank jumping" when a node was disabled / re-enabled, after which we added a time-damping function to reduce the effect of only temporarily disabled nodes.) A second (possible) solution is to lower the initiating "weight factor" of WitnessRank inside UA computations. But while determining the "correct weight value" remains a subjective task, the real underlying "problem" remains the same: is the current Witness Voting Mechanism Correct and therefore Usable for an Influence Metric such as UA? (And again, this is another subjective question).

HF Idea / Proposal: Witness Disapproval Feature

The above thought process gave me another idea that might be controversial, but when implemented blockchain-wide both adds more justification to WitnessRank as a UA component, as well as solve some major issues regarding the order of WitnessRank. And that idea is to add a feature to disapprove a witness:

  • the same 30 Witness voting slots can be used as it is now;
  • each witness slot can then be used to either "approve" or "disapprove" a certain witness;
  • which adds a mechanism to express disagreement to a certain witness stake, identical to "flagging" a post which is used as a mechanism for post / comment reward disagreement;
  • such disapproval could then be expressed at the expense of "a lost approval slot";
  • which might add more Witness Rank dynamics;
  • and as a consequence add more incentives for witnesses to "do good" and also "to not do bad", with respect to the platform.

This disapproval feature is just an idea of mine; I'm curious to learn what others think of it. Please let me know what your thoughts are about it, and share your thoughts in the comments!

Thanks for your time!


While reading the comments, I had another idea to add to the disapproval idea: why not reduce the number of voting slots from 30 to, for example, 5 as well?

  • this would mean top-SP holders cannot single-handedly determine the entire top20;
  • while at the same time, being able to disapprove a witness, just 5 slots with either approve/disapprove features, making things far more dynamic
Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Hi @scipio!

Your post was upvoted by @steem-ua, new Steem dApp, using UserAuthority for algorithmic post curation!
Your UA account score is currently 6.212 which ranks you at #226 across all Steem accounts.
Your rank has not changed in the last three days.

In our last Algorithmic Curation Round, consisting of 298 contributions, your post is ranked at #1. Congratulations!

Evaluation of your UA score:
  • You've built up a nice network.
  • The readers appreciate your great work!
  • Great user engagement! You rock!

Feel free to join our @steem-ua Discord server

Yay! I ranked #1!

  • yes, yes, I'm one of the two UA dudes, but the algo doesn't "know" that
  • I'm not a witness! And my UA_Account rank is "only" 226
  • my post didn't even generate in the hundreds of dollars on rewards, so that doesn't matter either
  • but my post did get quite a lot of user engagement with other high-UA account people!

^^^ and that is the trick to learn from, and get motivated by as well!
The big "take-away" to learn from this, is that if you're not a top-ranked UA account (yet), you can still be the #1 post

This is so awesome! Congrats on having a #1 post, and thanks for explaining this. I'm really trying to understand this system thoroughly, both the UA scores in the first place and then also different possible uses of them, such as the steem-ua upvoting. I'm hoping there will be an SMT that uses UA in another application. I would love to see the scores used for deciding RCs, for example.

I think maybe it could be done with the current code (or currently planned HF21 code that brings in SMTs in the first place) because STINC already put in a mechanism for allocating additional RCs by giving just the power as if someone had more SP. You don't even have to delegate SP. Just share the RCs.

So an SMT could use UA scores to decide how much additional RC power someone gets. That way the ability to contribute on the platform would be decided by the value of the person's contributions as measured by the community's reaction to them.

The trick is to give witnesses high UAs first, and then post about ... witnesses, so that they comment. :-)

I would agree with your suggestion of less witness votes per account, so that one big stakeholder cannot appoint all relevant witnesses anymore.

Another idea would be that the weight of ones witness votes doesn't depend on ones STEEM Power only but also on ones UA ... (Or on ones 'voting CSI).

upvoted for some discussion on preference.

I think the highest I have ever got is 10th for the day.

Obviously it depends on who comments so the posts that are engaging those with higher ranks will get favoured. This post has had quite a few witnesses in the conversation with comments strings as well as other pretty highly ranked UA (I would gather) which from my understanding helps push rank.

I am interested in how these things progress and evolve over time as they indicate how Dapps and interfaces could categorise the content later. As soon as an algorithm is implemented it will be imperfect but the idea is to find a good fit for the user base.

Yes, the base formulae for the @steem-ua curation rounds is as follows:

Step 1:

UA_Vote = x * UA_Account + y * UA_Post + z * UA_Comment


UA_Post = sum(VS * UA_Voter)

Step 2:
All posts UA_Vote scores in the same curation round / window are than compared relative to eachother, and then those relative scores are voted on percentage-wise.

So indeed, it depends on who comments / engages on a post, which is in this case quite some high-UA accounts (not just witnesses though!)

And arguably, favoring high-UA commenters makes sense:

  • let's for example take @blocktrades as a commenter on this post. @blocktrades is a top witness, but also a high-SP account and runs a crypto OTC (?) conversion trade service that doesn't require registration to be able to use it;
  • when I joined steem(it) at that time all exchanges were closed to newcomers and I had no account there, so my only way to buy BTC was via @blocktrades . So for me, @blocktrades "saved me";
  • probably a lot of other people feel the same way!
  • which justifies the high UA-rank of @blocktrades , because UA is an influence metric. If it weren't for their service, I would have probably left or at least not (so) active. But because of @blocktrades I stayed. That makes @blocktrades very influential, for me at least, and probably to a lot of people.
  • very influential people get bombarded with interactions, opportunities, they need to be very selective;
  • so if and when a very influential person (having a high-UA rank) feels the need to comment, then the post is arguably important and interesting enough to engage with.

Will it mean that big stakeholder will have even a bigger impact on who is in the top 20 witness list? As it is now, witness votes take SP of the voter. If we take the biggest holders of SP and that their votes help top witnesses to back their position, they could just vote for top 20 and vote against the following 10 and make it thus difficult for them to collect enough votes to reach top positions.

Did I miss something in this proposal?

Thx for sharing your thoughts! Valid point! If you missed anything, I don't know of course. And I'm also not claiming this idea / proposal to be "complete".
I shared / posted it, to express an idea of mine to add more "dynamics" to witness voting & ranks. I'm happy to learn which features are missing in the idea...

Even if you think it sucks: ideas are always good, right?

As a SP holder I want to have a choice to approve enough number of witnesses that protects security and reliability of the network so IMHO number of the voting slots needs to be at least 21. I would rather go for increasing 30 than decreasing it.

Witness counter-votes are tempting but aside of risks it introduce it also nullifies very important anti-censorship feature of the platform which lets you use your stake to produce a block. Even with very little SP you can be scheduled in block production (ever), counter votes makes that never.

Firstly, I think there should be a way to tag a non-approval for a witness but at this point I think it would be more beneficial to remove the ability for 30 votes for witnesses considering there is only a top 20.

Having 10 votes instead means that no one account can choose order across all and it makes it much harder to collude. It also means that small accounts have more chance to pool their resources and have an actual effect on the witnesses rather than pumpkin/freedom controlling it.

Reducing the amount of votes able to be cast is a very simple solution to get a better understanding of the community position on witnesses.

... i think. :)

Thx for your comment @tarazkp!
BTW, I had already updated my post to suggest reducing 30 slots to 5, and add a disagreement feature! ;-)
Which number of voting slots do you think would be optimal? 5? 7? 10? 101?

7 is not a bad number perhaps as it is essentially 1/3. it means significant control but not enough to have 50% majority and far enough from a super majority.

I would personally also consider spreading the rewards at a higher level to the 20-40 slots. I am not sure what the spread is now but if 75% went to top20 and 25% distributed on it might incentivise differently. Have to think more on that one though.

1/3 seems like a good idea to me, at first thought.

Having less witness votes increases the risk of people just going for the most popular witnesses. Meaning: you, @blocktrades are obviously someone who brings a lot of value and stability to Steem. So my vote for you is pretty much clear.

And the fact that I have 30 votes, means that I can also vote for some more experimental witnesses, who might not have proven themselves so much, but still need support.

If I'd have only 7 votes or even 20 - I'd have to weigh down removing your vote and voting someone else, multiple times (depending on how low the total votes are)

You may be right that lowering it to 7 votes would concentrate the votes to fewer witnesses, but I'm far from sure that would be the result.

But regardless of whether that's true or not, I think the important thing is to increase the security level of the system against an attacker who suddenly obtained a large stake (e.g. hacks an exchange that has a lot of steem). As far as I can tell, limiting it to 1/3 of the top 20 would dramatically increase the difficulty of such an attack (for example, all things being equal, the attacker would probably need twice as much stake to gain control of the chain).

If the issue is funding for development, I actually think the chain would be better served by a worker proposal system like the one that BitShares has, as opposed to the on-again-off-again idea that witnesses should be developers/marketers/etc. Conflation of the primary task of witnesses (block production) versus other "work for the blockchain" potentially leads to poorer block producers and poorer developers/marketers by excluding better candidates for each task as a witness must be good at both in the current system.

Sorry to bud in, but I can't help myself...

If the issue is funding for development, I actually think the chain would be better served by a worker proposal system like the one that BitShares has, as opposed to the on-again-off-again idea that witnesses should be developers/marketers/etc.

I always thought this was super reasonable, and yes I know that a certain someone proposing budgets made most of us cringe, but I think for the most part we let our biases get the best of us and I mean that respectfully.

It makes perfect sense that the chain's stake holders would want to decentralize development too. I mean, many of us can talk until we are blue in the face about how much better Steemit Inc could do, but there is no reason why development for this blockchain has to come strictly from them.

I would love for other big stake holders to weigh in on this. It looks like a win/ win situation.

I'm pretty sure it's not on steemit's roadmap, so it would take another dev team to incorporate it I think. I doubt that will happen in the short term, but it's definitely possible in a year or so.

I'm with you that the security of the chain should be priority number 1°! That's why I don't find it acceptable when a TOP witness is being run by other witnesses or if the concentration is on a few specific hosting providers. Not saying that they can be bought, but single point of failures should be avoided as much as possible.

So maybe it's a discussion worth having.

But regardless of that outcome, worker proposals are actually something which might be game-changing for Steem. Is there a specific implementation you have in mind?

The one used by BitShares is pretty good, IMO, although a Steem one should include the option to be paid in SBD as well as Steem I think.

Also, note that a concentration of votes on fewer witnesses would also increase the difficulty of launching an attack on existing witnesses with a stolen stake.

7 is not a bad number perhaps as it is essentially 1/3. it means significant control but not enough to have 50% majority and far enough from a super majority.

Very smart!!!

I lthink that s an interesting idea. At first this sounds great, especially after the grand return of Mr Autofellatio, but as many pointed out, it just solves a problem by creating new ones:

  • It could make the witnesses vulnerable
  • Big stakeholders could approve 20 and disapprove the following 10
  • Witness wars

I like better the possibility of a decaying vote. Yes, maybe some users will create bots to automatically vote again for the same witness, but if they do so, it means they remain engaged with them. Fine.
But it solves one major problem : without decay, the witness votes from dead accounts will be here forever. If for any reason, @freedom was unable to log into his account, the top 20 would be written in stone with the current implementation.
Whether the vote should completeley disappear or use a half-life model is another discussion.

Good thoughts there @scipio, especially the one about having less witness votes then there are consensus witnesses.
I agree with what a few ppl before me already mentioned, having the possibility to disapprove (also stake based) will not make the big change (if any).
But having less witness votes, especially something far less than 20, will for sure create some movement because then the owners of the big stakes can not decide by themselves any longer who is a consensus witness and who is not. Which is in my opinion a very good thing, because it will decentralize the whole topic a lot.
Keep the ideas coming @scipio ! :)
Kind regards

I am on the fence for this one.

There are merits to the idea, as it would allow more impact of witness votes if one disagrees with one specific witness for example.

But this can be used as an attack vector on the chain, when a bad actor can vote out witnesses, they might have it easier to aquire a supermajority of consensus witnesses.

I think this will be a great feature in hard fork times where voters can downvote witnesses adopting/not adopting a fork.

But my thoughts on the matter are not that well fleshed out, so I don't want to say too much about it :)

Still very interesting to learn about the possible attack vector you mentioned! Thanks for sharing!
And as I do understand and respect you stating your thoughts currently not being too well fleshed-out (neither are mine, just an idea of mine to see what other aspects would be concerned), what could be an effective counter-measure to circumvent the attack vector? Any ideas?

Has that been computed to be possible even with the current SP distribution? Wouldn't that require a 51% (more than 50%) SP-owned by (a group of) individuals, where that group is "small"? And if it is, then why doesn't it happen already right now? Even without witness disapproval being implemented, wouldn't it now already be possible to form SP alliances and acquire a super-majority?

If I recall correctly the idea was that a government could seize some witnesses and downvote all others to gain control over the network.

But on the other hand this would allows stakeholders to do the same in case they get to know one witness was seized.

Another question: suppose indeed some witness node(s) would be seized by another entity. Then that's still not the same thing as taking control over the controlling account. In other words, in case a node would be seized, the controlling account can still communicate / post about it, to let others know to unvote / disapprove for that specific witness. Or in other words: adding the ability to disapprove a witness, would conversely combat the exploitation of seized nodes.


The idea would be to seize the node and add something to the witness software that changes consensus in one way or another. This might not be noticed by the witness at first. In this case we expect the attacker to be competent enough to hinder said witness from noticing/disclosing the situation. Say putting them in jail.

Ahhh! But that is not my idea!
My idea is to keep the current "limited witness slots" but add to it a feature to either approve or disapprove a witness. Ergo "downvoting all others" would be impossible, or do I misinterpret your explanation?

We are talking about an attack on the top 20/30 witnesses, the rest does not matter much for this attack. So basically if they seize 10 and downvote the other 20 they can control more.

hmm... but downvoting 20 others with enough power would then allow another group of 20 to rise to the top? Or am I completely misunderstanding?

Like I said, not yet fleshed out :) Maybe others can chime in to explore if this can be used as an attack


In reality, such an attack would not be likely to be carried out by a government or other large group because they already have enough money to just buy their way into the top 20 anyway ;)
However, the idea of downvoting accounts while also being able to upvote accounts would certainly be a less noticeable way to takeover the system, since the downvoting and witness account running could be spread over numerous accounts, making it hard to track and co-relate the actions to one another.

I do think there is some merit to reducing the number of witness votes though, maybe 9 is a good idea, so that the same SP cannot be used to affect more than 50% of the witnesses.

I like this concept. If you can approve a witness you should also be able to disapprove or show displeasure
This gives witnesses, as you said, incentive to be prominent, to do good rather than fade into the background.
Some of the best witnesses are not in the top 20 and a couple that are in the top 20 probably shouldn't be at this point as they seem to be coasting on votes from long ago.

I would go even further and propose that witness votes expire. This would also have the benefit of cleaning up or regaining the votes from the no longer witness crowd and would clean up the rankings as well.
Perhaps a 6 month limit on a vote, then it expires unless you reapprove

  ·  11 months ago (edited)

I would go even further and propose that witness votes expire.

Also interesting idea as well, I think! On the other hand, remember them botties ;-)
It would be doable to auto-revote witnesses, periodically, without ever actually doing anything manually....

I'm sure some smart dev could incorporate a captcha like feature to get around such a minimal impedence

Let the Cat and Mouse Games continue! ;-)

LOL I'm not a dev or programmer at all (I just play one on the internet LOL)
This gives me the luxury of being able to throw out any idea without worrying about now realistic or feasible it is in reality.
You have to make it reality, I just have to use my imagination

But seriously, it would be great if there were ways to accomplish these kinds of tasks. Not everything will be feasible from a programming standpoint, time investment vs reward standpoint, etc.

Just food for thought down the road if it ever becomes a project you wanted to tackle :)

I like the concept but just like flags, some will get disapproved for personal reasons. But the idea is definitely worth paying attention too. I also think education of what a witness is is also important these days. And how to vote for one needs to be noob friendly

Posted using Partiko iOS

Fair points! Thx for sharing!

I also think education of what a witness is is also important these days. And how to vote for one needs to be noob friendly


absolutely. I find it hard to use all my witness votes for good witnesses, but I would very quickly find at least ten witnesses to downvote :)

Haha! Well, interesting aspect you are mentioning here as well!
How about reducing the amount of witness voting slots? I updated my post to propose - for example - 5 instead of 30.

What do you think? What should be the optimal number of slots?

Very interesting!

30 might not be the right number, but 5 is way to low. At 5, there could be such a massive gap between the top 20 alone. Having 30 witnesses to vote for allows you select your top 20 and 10 backups. so 30 may have been based on a min framework??

Have you considered instead of changing the number of vote, increasing the number of top witnesses to say 50?

I also like an idea put forward previously about vote decaying and even rotation. we could even look at putting a life time value on a witnesses so each witness vote expires after 6 months

I like the idea very much, but of course I'm not blind to the challenge it would represent to implement such a thing. However, I've been thinking about something very similar for a while and maybe there is an answer somewhere in the middle that might be just as effective and not as psychologically towing.

Ok, so hear me out... Let's say for the sake of argument that @reggaemuffin believes that @helpie is not doing a good job and that it needs to come down in ranking, right?

Well, if he would downvote straight out helpie, it would probably create some friction between the parties there, and thus not be beneficial to his own efforts. We never quite know how strongly a stake holder might feel about the support they give a particular witness.

But what if the way the "downvoting" would work, would be as a way to negate the vests of a particular user towards a particular vote.

So, let's say he would go to @scipio's witness vote list, and negate @scipio's vote towards helpie with this stake. This would have the same effect, reduce the amount of stake pushing helpie up, but it would not be a direct line of "attack" per say. And, as silly as it might seem, it would be less taxing psychologically.

I don't know, even tho the coding of such thing would be more difficult, the effort might be worth it.

Interesting thoughts!
I just updated my article with the added proposal to reduce the available slots from 30 to - say - 5. Thoughts?

Yes, I like that too... seems more reasonable.

Yup, that's what I like about proposals / idea sharing and learning about what other people think about it: valid concerns spark new ideas to deal with those concerns, which as a whole improves the proposal and thought process.

I agree on the general idea there must be more dynamics. Witness disagreement is an interesting concept. The only concern that I have is about attack vectors as others have already pointed out.

Interesting, interesting. I just updated my article with the added proposal to reduce the available slots from 30 to - say - 5. Would that - as you can reason about it - solve the attack vector possibility?

That's an interesting proposal.

However, my biggest concern about this is the way attackers would have a second way of attacking.

1.) They could approve their own witnesses
2.) They could downvote the other witnesses

Interesting @therealwolf and thx for sharing!
In another comment @reggaemuffin more or less brought up the same issue, but it all has to do with the way the SP is distributed.

What I'm thinking now, is by limiting the amount of slots - maybe 30 slots isn't the right number???* - that any account can use to either approve / disapprove witnesses, more balance could be added and a mechanism to express support or disagreement to any witness' behaviour.

Do you have other witness voting mechanisms / ideas to deal with the concerns you mentioned?

Thanks for putting together your thoughts and getting a discussion started on chain.

As others have mentioned I think disapproval of witness would open up new attack vectors. I think reducing the amount of witness votes will help reach the same end goal with less attack vectors and be less political.

I'm interested to know what is the original rational behind the current 30 witness votes. Do you know of any info regarding why it is 30 in the first place?

I had the exact same question! And no, I don't know why 30 slots were chosen.
Does anybody reading this know the answer?


This old issue from dan references the 30 idea but with no explanation why 30.

I think that witnesses are a vital part of this place and therefore the work they do should be reflected in their score.

As far as the power that a small group of individuals have to essentially lock people out, can get a bit tricky. I like the idea of a smaller number of votes, which would mean less control of the top 20.

I do unfortunately think this would hurt witnesses like, @Curie the most though. Seeing as the witness is solely for the platform, non profit and doesn’t partake in the politics associated sometimes with the vote for vote activities on the platform. Many large accounts may choose to select witnesses that give something in return. Even though, I think the curation of valuable content on this platform is beneficial to everyone and therefore should be supported more than it is now.

I like the idea, and I’m curious to see where you go with it.

Also, something to think about- There are other individuals who do a lot off platform, whose contributions are not currently reflected in the ua score. Developers, curators, etc.. it might be worth trying to add them in somehow.

I don't think it would change anything. If witness disappoval was stake based (which it would have to be), then nothing really changes. The big accounts like "freedom" can flag witnesses they don't want.

Then how about just 1 witness voting slot? Or 3?
In other words: is 30 slots too much / the right number of slots?

only 1 feels like a terrible idea, even if it's just psychological, it feels nice to support a group of people. I think 30 is fine, trying to change it is more trouble then its worth.

Seems like an interesting idea. Many of the commentators have expressed their concerns about a possible abusive behavior and an attack if there is such a feature and in a way I'll agree with that.

But adding a feature like that, gives us endless possibilities.

What if for every downvote someone gives to a witness, he losses the advantage of the 30 votes each time by 1?

Or downvotes could still be implemented but not having the same weight as the upvote, but only 50%? Or the first downvote to have a 50% weight, the second 45% the third 40% and so on?

Also there could be implemented a maximum limit for downvotes (example 3 or 5)

Or even better a combination of all the above...

I don't really know if what I propose is doable, but the more ideas we have the better result we'll get eventually.

Would love to see some more movements in the top 20. Which will encourages witnesses to be more motivated.

Most top-top-top witnesses are very motivated and engaged. For example @timcliff , before and during the HF20 roll-out did everything in his power to help with patches, review code, give interviews on Discord channels, answer questions with chats / DMs... That's the kind of witness behavior I personally appreciate very much.

But at the same time some (top 20) witnesses have admitted to not having read the HF20 code proposals prior to the roll-out and voting for / against it. Now that would be a reason, for me at least, for witness disapproval. Not having a mechanism to express that feeling right now, feels hindering to me at this point, hence this idea of mine...

Thx for your comment!

Really didn't to give the idea that the current top 20 are lazy or anything like that but an added dynamic would be interesting.

And I didn't interpret you suggesting anybody being "lazy" either!
Indeed, dynamics are good (which is my intention with the idea), and so is a mechanism to express disagreement (I think, at least!)

That's a very interesting discussion going on here, thanks for bringing it up @scipio!

I personally don't feel that we need to be able to explicitly disagree on a witness, since not voting is already a clear statement to not support that specific witness.

Reducing the witness votes to 7 (as it has been suggested here) seems to be the better idea to me.

With regards to the UA Score, IMO it's totally fine to consider witness rankings in the way it is done now. However, as the situation is right now, someone who's not the ability to set up a witness node, would never be able to achieve a top 100 ranking.

That is why I'd appreciate to see the algorithm evolving in a sense that other parameters are included as well. Currently, engagement from a UA standpoint is exclusively defined by number of followers. Apparently, one needs to engage with the community in order to grow one's followership. Yet, new users would always be dwarfed by those who joined the platform early and could start building their brand at a point in time when it was much easier to gain attention.

Here's an idea on how to improve the algo and make it more competitive/attractive:

Only consider active followers when calculating one's influence / UA score, being active those followers who've been using the BC at least once during the past 6 (4?) months e.g..

Then nobody can just sit on their followers but needs to stay engaged with the community in order to keep their score high. Like that, even new users were able to climb up the ladder.

Nope, I also think it would have the adverse effect. It will lead to radicalized positions and witness flagging wars. Then, how will they ever reach consensus?

To make an analogy with politics, let's say a voter has the power to vote for his candidate, but also downvote the opposing candidate? Do you think reason would prevail regarding the "downvoting" part? They'll just do it because they can, they'll stick it to the other side, and that's it.

Interesting thoughts! However, regarding "politics voting" vs "witness voting" on steem, in politics you get 1 vote per person (not 30) and it's also "1-person 1-vote"-based (instead of stake-based).

It will lead to radicalized positions and witness flagging wars.
I think.... that's not the case! Because a limited amount of "voting slots" (either used positive / negative exist, this means "disapproving" witness X is done at the expense of "approving" witness Y. And as a consequence, when you decide to "flag" a witness, that's at the expense to support another one...

As a net consequence, more dynamics in witness ranks are added.
Not true? Did I miss something?

Thx for replying!

You missed this:

Then, how will they ever reach consensus?

But I agree maybe some sort of stimulus to update your votes regularly can be added, for example. Not to mention to vote for all witnesses.

how will they ever reach consensus?

Wouldn't the net end result still be 20 witnesses in the top 20? How would adding an approval / disapproval option per slot lead to no consensus? Can you explain that?

Because of the radicalization that I think would follow with the possibility to punish and retaliate.

But then again, the exact same mechanism has existed for years regarding the flagging of posts and comments! And that works reasonably well (with an occasional quarrel left and right).

So why wouldn't the exact same mechanism not work regarding witness voting?

Flag wars are not good for Steem's image as they are now. If they are going to the governance level, it will only be worse. Only my opinion here.

And valued (your opinion) it is (at least by me), thx again for sharing!

I only now saw this:

I think.... that's not the case! Because a limited amount of "voting slots" (either used positive / negative exist, this means "disapproving" witness X is done at the expense of "approving" witness Y. And as a consequence, when you decide to "flag" a witness, that's at the expense to support another one...

I thought it was part of the quote from me, and didn't read it the first time.

Yes, I agree flagging is at the expense of approving another witness, but after watching the witness channels for quite some time, I'm pretty sure there are some who would rather flag than approve. Then, often comes retaliation. And so we have a war.

When we add the possibility to punish, we always have to think about retaliation. And about what that means.

I don't know, for me, it seems in this paradigm consensus can be way more difficult to obtain even on trivial things.

  ·  11 months ago (edited)

The top20 stays the top20, no? Who is in the top20 could change, but the consensus would still be decided by the resulting top20.

I don't think this bashing will not do anyone any good. But if people think it's a good idea...

Would it be bashing, though?
It's not unlimited bashing, simply because the number of slots is limited. And unlike post flagging, your witness vote doesnt "recharge" and can't be used time after time...

That is true! Well, we'll have to see. I agree we need something to incentivize some sort of dynamics in the witness ranks, even in Top 20 when they are underperforming.

I support the idea of having less witness votes. (such as 5 that you’d stated above)

I read an interesting post from @ura-soul yesterday that removed a couple of powerful votes from the witnesses rankings, and it revealed that the top 20 were unchanged. It seems there is actually a pretty fair distribution of witness votes in terms of final effect on the top 20.

That said, I also have been considering various people's ideas about how witnesses get treated by UA scores. I'm a little divided. On the one hand, they are already earning so much steem just for doing their jobs. Do the "staff" deserve the same rewards as the customers, particularly when being on staff automatically gives them a massive headstart above customer reward earning potential? Maybe, maybe not.

So that would more be an argument for why they not get upvotes even if they delegate to UA.

But should they be able to confer higher UA scored on others just by following them? Well if you take out their ability to get UA upvotes, it doesn't matter if they're witness-circle-jerking. Their following would only help non-witnesses.

I have to confess to not being exactly impartial here, since I think I'm followed by a few top witnesses LOL. But attempting impartiality as best I can, it does actually seem that their opinions on who is contributing enough to the platform for them to want to see their content should bear weight just like anyone else's does. Once you get into how much you reduce the power of that weight though, well gosh, how do you possibly decide that? It would have to be pretty arbitrary. Most people don't like arbitrariness anywhere near their money making. So that could bring a lot of unwanted contention into the whole ua-score space. Is it worth it?

To the last idea, downvotes on witnesses, well as has already been expresses by others, I think that would lead to massive vulnerabilities being introduced into a dPOS system that automatically has some significant vulnerabilities. I don't think the possible gains there are worth the threat potential.

These are important considerations to work out though. How do you treat the presence of highly privileged actors within a system that attempts to distribute rewards "fairly?" Determining what is fair is always a challenge within a group, but a worthy one to take on.

Just a note, the top 20 was not unchanged after the big vote was removed, some accounts changed places and some were replaced - but overall the changes were not huge.

Thanks for the clarification. I thought they changed positions some within the top 20, but it was still the same ones in the top 20. No?

No, for example, cervantes, drakos and utopian-io would not be in the top 20 without that vote.

Drakos right now is 21, but I see your point. I don't know cervantes, but I'm pretty sure we benefit from having drakos and utopian-io be there. Drakos was one of the few witnesses saying before the fork that he didn't think it should happen, and should be postponed. So this would indicate to me that maybe the larger accounts are using knowledge they have from longevity here and genuine concern about the platform to pick good witnesses.

Stranger things have happened.

Thx for commenting! :-)
But let's also distinguish UA from steem-ua !

  • UA is the influence metric, computed with using (not only that of course) the Witness Rank as its initiating trust vector;
  • steem-ua is our algorithmic curation & upvoting service, using UA data ... but not just UA_Account scores: some plankton / new user with a UA_Account score of 0.00 can still write a rock-solid post, that will get voted on and commented on by high-UA accounts, resulting in a high vote. And the same goes for top witnesses: in case they'd write a "shit post", then chances are they will not be in the top ranks

Important clarification! Thanks.

As a matter of fact.... could you scroll to the @steem-ua comment on this post? And check my own response to it? I couldn't have given better "proof" myself than this:

  • my post is ranked #1 among the other curated posts
  • my own UA_Account score & rank is only #226
  • @scipio is not a witness, nor a whale: just a minnow account
    ==> meaning anybody could be ranked #1 post of the day