O que é reputação e como funciona?

in #pt7 years ago (edited)

Tudo o que você queria saber sobre reputação

Muitos usuários não entendem direito o que seria reputação, como é computado, como muda, que efeito isso tem, e em que,...

Eu compilei toda informação que eu achei sobre reputação, e tentei trazer de uma forma mais fácil, para todo mundo entender como funciona a reputação aqui no Steemit.

Para que a Reputação serve?

A reputação tem dois papéis:

  1. É um indicador que mostra como o usuário é “confiável e estimado pela comunidade”.
  2. É uma ferramenta que previne usuários com baixa reputação prejudicar outros usuários.

Como funciona:

Os pontos de reputação são calculados usando uma função matemática Log base 10.
Aqui é uma representação dessa função. (Nota para os certinhos: Eu sei que o eixo - X na escala não seria o mais correto para reputaçao. Eu fiz isso para simplificar)

Como podem ver, é muito fácil aumentar sua reputação no início, mas quanto maior for sua reputação, mais difícil fica aumentar ainda mais. De fato, cada vez que você aumenta sua reputação em 1 ponto, fica “10 vezes mais difícil”!

O principal efeito é que a reputação de 60 é 10 vezes mais forte que a reputação de 59. É o mesmo para reputação negativa. A reputação de -8 é 10 vezes mais fraca que a reputação de -7.

Pessoas com uma reputação baixa não prejudicam alguém com uma reputação forte..

Isso explica porque criar bot que sistematicamente dá flag‘s em outros posts é inútil. A não ser que o bot tenha uma reputação alta, algo que será difícil de conseguir com um “flag bot”. Com pouco tempo, a reputação do bot será arruinada, e ele se tornará inofensivo.

Não há limite para reputação, seja alta ou baixa.

Sobre a partilha das recompensas:

Antes de continuar vendo como os pontos de reputação são “computados”, você precisa entender o conceito de “partilha das recompensas”.

Quando você vota em um post ou o comenta em um post, você diz ao sistema para pegar umas moedas (a recompensa) de origem da Global Reward Pool e dá 75% dessa recompensa para o autor (a recompensa do autor) e divide o restante em 25% da recompensa entre as pessoas que votaram no post ( a recompensa do curador).
Quanto mais votos de pessoas com reputações altas, maiores recompensas você terá.

Mas a recompensa do curador nao é distribuida igualmente entre todos os votantes.
Dependendo do tempo do seu voto, seu poder de voto e quanto de poder você colocou no seu voto (porcentagem da calibragem do poder), você receberá uma menor ou maior fatia da torta. Esse tamanho que você recebe é chamado a partilha da recompensa ou the reward share.

Aqui um exemplo da distribuição das recompensas por um comentário:

Como vocês podem ver, apesar de todos usuários terem votado com 100% do poder de voto, eles tiveram diferentes recompensas partilhadas.

OK, agora, vamos voltar para reputaçao. Tudo que você tem que fazer é manter em mente, é esse valor de recompensa compartilhada que existe.

Como reputação é “computada”.

Cada vez que se tem algum voto ou comentário em um post, o voto pode ter impacto na reputação do autor, dependendo da:

  • Reputação de quem está votando
  • Da parte da recompensa de quem está votando

Vamos dar uma olhada no código que é executado toda vez que você vota em algo.

Você pode ver também no github Aqui

 const auto& cv_idx = db.get_index< comment_vote_index >().indices().get< by_comment_voter >();
 auto cv = cv_idx.find( boost::make_tuple( comment.id, db.get_account( op.voter ).id ) );

 const auto& rep_idx = db.get_index< reputation_index >().indices().get< by_account >();
 auto voter_rep = rep_idx.find( op.voter );
 auto author_rep = rep_idx.find( op.author );

 // Rules are a plugin, do not effect consensus, and are subject to change.
 // Rule #1: Must have non-negative reputation to effect another user's reputation
 if( voter_rep != rep_idx.end() && voter_rep->reputation < 0 ) return;

 if( author_rep == rep_idx.end() )
 {
 // Rule #2: If you are down voting another user, you must have more reputation than them to impact their reputation
 // User rep is 0, so requires voter having positive rep
 if( cv->rshares < 0 && !( voter_rep != rep_idx.end() && voter_rep->reputation > 0 )) return;

 db.create< reputation_object >( [&]( reputation_object& r )
 {
    r.account = op.author;
    r.reputation = ( cv->rshares >> 6 ); // Shift away precision from vests. It is noise
 });
 }
 else
 {
 // Rule #2: If you are down voting another user, you must have more reputation than them to impact their reputation
 if( cv->rshares < 0 && !( voter_rep != rep_idx.end() && voter_rep->reputation > author_rep->reputation ) ) return;

 db.modify( *author_rep, [&]( reputation_object& r )
 {
    r.reputation += ( cv->rshares >> 6 ); // Shift away precision from vests. It is noise
 });
}


Aqui está. Tudo que você sempre quis saber está definido nessas 33 linhas de programação.

Agora que você leu, ainda não está claro?

Eu me sinto assim, nao se preocupe. Eu vou te ajudar a traduzir para uma linguagem humana mais compreensível.

 auto cv = cv_idx.find( boost::make_tuple( comment.id, db.get_account( op.voter ).id ) );

Dentre todos os votos, tenha a informação do seu.

auto voter_rep = rep_idx.find( op.voter );
auto author_rep = rep_idx.find( op.author );

Obtenha a reputação do seu voto.
Obtenha a reputação do autor do post ou comentário.

 // Rule #1: Must have non-negative reputation to effect another user's reputation
 if( voter_rep != rep_idx.end() && voter_rep->reputation < 0 ) return;

Documentado, se você tiver uma reputação negativa, o processo para.

Assim você não tem influência na reputação do outro usuário.

if( author_rep == rep_idx.end() )

O processo checa a existência de reputação do autorr

  • Caso 1: O autor não tem reputação ainda
    // Rule #2: If you are down voting another user, you must have more reputation than them to impact their reputation
    // User rep is 0, so requires voter having positive rep
    if( cv->rshares < 0 && !( voter_rep != rep_idx.end() && voter_rep->reputation > 0 )) return;

Documentado, se seu voto for negativo e a sua reputação não for positiva, o processo para.

    db.create< reputation_object >( [&]( reputation_object& r )

A reputação do autor é inicializada, então...

    r.reputation = ( cv->rshares >> 6 ); //Shift away precision from vests. It is noise

Suas Recompensas compartilhadas se tornam a nova reputação do autor.

  • Caso 2: O autor tem alguma reputação, o processo é bem similar...
    // Rule #2: If you are down voting another user, you must have more reputation than them to impact their reputation
    if( cv->rshares < 0 && !( voter_rep != rep_idx.end() && voter_rep->reputation > author_rep->reputation ) ) return;

Documentado, se seu voto for negativo e sua reputação não é maior que a reputação do autor, o processo para.

    db.modify( *author_rep, [&]( reputation_object& r )

O processo irá modificar a reputação existente do autor.

    r.reputation += ( cv->rshares >> 6 ); // Shift away precision from vests. It is noise

Sua Recompensa compartilhada é adicionada com a reputação do autor.

É isso. Fácil e simples.

Finalmente, a reputação é simplesmente um GRANDE número que contém a soma de todas as Recompensas compartilhadas de todos os votos e comentarios associados ao seu post.

Se alguém retira o upvote do seu post, a partilha da recompensa é deduzida e sua reputação diminuída com isso

Se o seu post ou comentário recebe flag’s, a partilha da recompensa é deduzida e sua reputação diminuída com isso.

Para exibir um número humanamente mais legível e fácil, você pode usar essa fórmula.

max(log10(abs(reputation))-9,0)*((reputation>= 0)?1:-1)*9+25

Como aumentar sua reputação

A melhor forma de aumentar a reputação, é receber votos de pessoas com reputações positivas, e ainda melhor, com muito poder de voto.

Para alcançar esse objetivo:

  • publique posts de qualidade. Esqueça quantidade, o foco é na qualidade!
  • faça parte de discussões (você pode conseguir recompensas a mais e pontos de reputação com os seus comentários)
  • vote cuidadosamente (nao jogue na privada seu voto, vote nos conteúdos apropriados e bons autores)
  • Aumente o número de seguidores (followers) e construa quem você irá seguir tambem.

Conclusão

Eu espero agora que vocês entendam melhor como a reputação funciona e como trabalhar para aumentá-la.

Lembrem-se, reputaçao é a chave que irá refletir no seu comportamento e como a comunidade avalia seu trabalho.

Como na vida real, ter uma reputação alta é sinônimo de uma longa caminhada e trabalho duro.

Assim como na vida real, arruiná-la pode ser muito rápido. Sendo ainda mais difícil reconstruir-la.

Se voce busca chegar ao topo, foque na qualidade e em uma atitude construtiva.

Obrigado pela leitura!


Obrigado @matheusggr pela tradução para o português.


rodapé criado com ** [steemitboard] (steemitboard.com) ** - clique em qualquer prêmio para ver meu conselho de honra

Apoie-me e meu trabalho como witness votando por mim aqui


Você gosta desta postagem, não se esqueça de upvote ou siga-me ou resteem

Sort:  

Muito bom!!! Vote @arcange para witnesses!!

Muito obrigado Matheus =)

Post valioso, muito obrigado. Votarei sim para ser witness.

@thomashblum, obrigado pelo seu apoio!

Muito bom, @arcange! Obrigado por compartilhar este excelente artigo em português. Já havia compartilhado antes e fico feliz em encontrá-lo também em nossa língua ;)

Obrigado por este post agora sim entendi como funciona a reputação. Obrigado também pelo código deu para perceber por detrás como funciona o upvote. Upvote apenas em posts de qualidade.

Extremamente didáticos. Super bem explicado. Sensacional!
Agradecido por compartilhar. ;D

Thank you for the explanation I was looking for the correct way to calculate reputation and how to distribute the reward

I was using in php

round (max ((log10 ($ data-> reputation) - 9), 0) * 9 + 25, 2);

For my case it is 43.76: D


Obrigado pela explicação que eu estava procurando a maneira correta de calcular reputação e como distribuir a recompensa

Eu estava usando na php

round (max ((log10 ($ data-> reputation) - 9), 0) * 9 + 25, 2);

Para o meu caso é 43,76: D

Steemit is the favorite of the maximus people ..

steemit is not uncomfortable for us

Parabéns, seu post foi votado e compartilhado pelo projeto Brazilian Power, cuja meta é incentivar a criação de mais conteúdo de qualidade, conectando a comunidade brasileira e melhorando as recompensas no Steemit. Obrigado!

footer-comentarios-2.jpg

Texto incrível. Estava bem perdido quanto a isso e consegui me situar melhor!

Bom post, grato por disponibilizar em português para nós da comunidade pt-br

Boa! Não sabia como funcionava ainda, ajudou bastante =]

Muito bom, gostei da explicação, não tinha pensado nisso! Estou te seguindo ;)

Obrigado !

Belíssimo post. Eu já li alguma coisa de como funcionava o sistema mas sentia falta de algo mais didático para os não programadores. Obrigado!

Hi @arcange, I've loved the post! Congratulations, the explanation turned out well contextualized and didactic =D

Muito bom o texto, só fiquei com uma duvida: Onde consigo ver minha reputação?

Sua reputação é exibida no seu perfil e ao lado do seu nome quando você faz comentários.

Thanks for the post

Agora sim!!!! Não entendia muito bem como funcionava.
Obrigada por nos dar este conteúdo de forma tão clara.

Parabéns pelo conteúdo.
Bem esclarecedor.