You are viewing a single comment's thread from:

RE: Towards a reputation system suitable for SteemSTEM

in #utopian-io6 years ago

If a reputation system like this takes it'll be an excellent motivator for engagement and quality posts. Awesome work!

My only worry is that it might devalue the contribution of longstanding members that post occasionally or members taking a break from SteemSTEM. Maybe if there was a limit to how much an old post's value could decay (like 1/8 or 1/16 of it's original value)? Then again, I wouldn't want to discourage new members so maybe it's not the best idea.

Sort:  

Yeah I had a similar thought about 'historical' authors, whose rep like lemouth said should be non-negligible; but then how can you do that when you introduce the half-life? Perhaps a different metric altogether for historical authors? Perhaps a tally should be taken every week or month, and then those tallies get tallied?

In other words, say steemSTEM has existed for 10 weeks. A historical member has been active for the first 5 weeks and then quit. A newer member has been active for the last 3 weeks. Both have contributed equally while they were active, getting the maximum score of 1 for every week of activity. So the historical contributor would get 5 out of 10 and the newer member would get 3.

I'm basically trying not to exclude the St. Anselms of steemSTEM :D I mean, the rep of people like JTM who are seldom publishing now will be effectively 0 in the long term by the current metric. He specifically is excluded by the code since he's a founder, but the future might give us non-founder examples.

And now I'm just typing away to increase my score. Nothing to see here. Move along. Just finger-dancing on the keyboard... la la la la la... :D

A long letterhead automatically affixed to all my comments now seems like a great idea...

Tagging @tking7798, @tarazkp and @justtryme90 as this may be relevant as an answer to their own comments.

This "max loss" thingie does not change much for the historical author, and actually, the good idea would be to introduce a way to back-trace long term authorship. For the engagement part, I think we all agree we should focus on the recent stuff.

So how to do that in practice? Well I don't know.

  • I am dividing by the root of the number of posts. Maybe this should be modified?
  • Or what about a time-dependent half-life? Every time a vote is casted, it acts on the half-life of the future points to be earned. In this way, the more one is active, the longer the point stays. If no activity is recorded during, maybe N days, then the half-life decrease progressively to go back to the nominal value.

Any thoughts?

For the engagement part, I think we all agree we should focus on the recent stuff.

Yep, that makes sense.

Other than that, I can't add much to the technical conversation :)

If the point of the reputation score is only to decide how to vote on the latest post, then it does make sense to privilege the recent stuff. I think I was thinking it more like an overall badge of merit (basically, a replacement of the steem rep number, since you're making an independent website) and felt awkwardly about discounting the historical contribution of valuable members who for one reason or another are not as present, currently, on the platform.

For the moment, the score is just something funny. Like you said, a kind of badge of merit. This is by no means affecting any future vote as the rules for votes are independent (and clearly stated).

The decaying reputation is more to have a way to slowly remove users that have left. There is a difference between not being present and having left, which is why the half-life is large. However, this may be improved (cf. the above comment by @tarazkp).

It does not change much for the historical author now, but what about after we've been running for 5 years?

I can't think of a better normalizing function to apply in place of the sqrt, given the nature of people and high volume posting. It does a good job of squashing that while bringing up the people who post few posts. Other functions would perhaps open up the middle more, but I don't see how it would help old posters.

Just to come back to this: I am planning to implement a time dependent half-life. In practice, at the time of a vote at x%, x/i% of the value lost by a point is recovered with i being a parameter to fix. I will try that later this month.

Curious to see how this changes the rank ordering.

I have considered different half-life values before picking the above ones for the exact problematics you were mentioning. However, I have never thought about a maximum loss of value. I will implement this "maximum decay" after work, and see what we get. According to the results, we could decide whether this is a good idea or not (I think it is).

Maximum decay seems like a good idea to me, so long as the value is relatively small, maybe even less then 1/16th of its original value. This criterion is likely more important for bloggers then for commenting. As we want to encourage active engagement rather then past engagement.

I agree. It shouldn’t be so large that it discourages new users from contributing and it may not work out in the end. Either way, I’m super psyched you all liked my idea :)

I have tried 1/8 and 1/16. 1/16 has an effect on what is going on beyond rank #75, the first modification being the position #78. 1/8 start affect anything beyond #10. However, the modifications sound really wrong compared to my gut feelings. Like users not active for more than a year are there... I am thus keeping the 1/16 for the next version.

You are #56 for the authorship metric and #80 for the comments, in case you are interested. This gives a final position of #50 (#51 with the original code).

That was fast work. Interesting to see where both methods start having an effect. Thanks for the ranking info too :)

I like to try things, and in any cases, many brains are always superior to a single brain (which I why I always share my ideas).

Coin Marketplace

STEEM 0.20
TRX 0.12
JST 0.028
BTC 64233.18
ETH 3491.62
USDT 1.00
SBD 2.54