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:
- É um indicador que mostra como o usuário é “confiável e estimado pela comunidade”.
- É 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
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
@nascimentoab, obrigado =)
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
I love steemit
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!
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.
Boas dicas!
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.
Nice word
Parabéns pelo conteúdo.
Bem esclarecedor.