Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sistema de TabCoins #11

Closed
danwhat opened this issue Jun 6, 2021 · 40 comments
Closed

Sistema de TabCoins #11

danwhat opened this issue Jun 6, 2021 · 40 comments

Comments

@danwhat
Copy link

danwhat commented Jun 6, 2021

Sim, eu sei que esta um pouco cedo para pensarmos na implementação. Mas nada impede a gente de debater como o sistema será.

Pensando aqui eu cheguei a um sistema que julgo legal. O meu foco foi:

  • Deixar o mais simples possível. Se você não conseguir explicar para seu pet não vale.
  • Resolve o problema de como as TabCoins são geradas.
  • Incentiva a interação ao mesmo tempo que impede o flood

Lembrando que o importante é seu funcionamento. Por isso coloquei as variáveis em colchetes. Sintam-se livres para ler com os números que julgarem mais justos.

TabCoins (TC) é TabCoin Bonus (TCB)

A TabCoin será usada para sinalizar valor. Quando você "curte" uma notícia ou comentário, você estará sinalizando para a comunidade que esse conteúdo tem valor.

TabCoins:

  • Cada "curtida" gastará [1] TC (ou TCB, se tiver), e adicionará [1] TC ao saldo de que gerou o conteúdo.

  • Sem TC você não poderá curtir

TabCoins Bonus:

  • A cada [30 min] você ganhará [1] TCB.

  • O máximo de TCB acumuladas serão [3] e seu saldo aparecerá junto do saldo de TC.
    Ex.: Total de TabCoins: 357+3

  • Ao curtir algum conteúdo, as TCB serão usadas antes das TC. Com isso incentiva quem é "pão duro" a sinalizar valor enquanto impede quem quiser flodar curtidas, já que após as TCB, você gastará suas TC para curtir.

  • Ao ser usada, a TCB passa para o gerador de conteúdo como uma TC "comum".

  • Daqui que vem todas as TC do sistema.


Gostei desse sistema pois o montante de TabCoins no sistema cresce conforme a comunidade cresce. Então se alguém tiver muito a mais que a média você sabe que essa pessoa acrescentou MUUUUITO valor a comunidade.

Pronto. O que acharam? Eu sei que tem falhas, mas como estou encantado não consigo ver. Então podem ir! Vai! Quebrem meu encanto! 🤣

@danwhat danwhat changed the title Sistema de Revenue Share Sistema de TabCoins Jun 6, 2021
@wcarugatti
Copy link

Achei a ideia genial, resolve bem os dois problemas.

O grande "porém" é que isso pode gerar inflação de tabcoins dependendo de como vai funcionar o sistema de ads que de acordo com o Deschamps serão comprados com tabcoins.

Vale muito a pena ver como funciona o leilão do google ads pra se inspirar.

@danwhat
Copy link
Author

danwhat commented Jun 6, 2021

Eu imaginei um preço dinâmico para as features escassas.

O preço de features como criar noticias, destaques etc se adaptaria conforme a demanda.
Ai cairia naquele loop:

  • O Conteúdo foi relevante? Então ele se pagará, já que as pessoas "devolveriam" o valor em TC investido através das "curtidas".
  • O Conteúdo foi raso? Então ele não se pagará e o criador terá que gerar mais valor e juntar mais TC para tentar uma próxima vez.

Já os ads apenas tiraria TC do sistema e o sistema.
Eu dei uma pesquisada sobre o leilão do google ads e achei ótima a ideia.

Só me preocupo do sistema ficar justo para novos usuários. As coisas não podem ser caras ao pontos dos primeros gerarem tantos TC que impeçam nossos usuários de juntarem TC para criar noticias e também entrarem no jogo. Talvez um preço fixo na criação de post? Não sei.

@dhanielsales
Copy link

Achei a ideia genial, resolve bem os dois problemas.

O grande "porém" é que isso pode gerar inflação de tabcoins dependendo de como vai funcionar o sistema de ads que de acordo com o Deschamps serão comprados com tabcoins.

Vale muito a pena ver como funciona o leilão do google ads pra se inspirar.

Os anúncios não seriam "comprados" com experiência? Essa parte eu ainda estou assimilando 😅

@danwhat
Copy link
Author

danwhat commented Jun 6, 2021

Pelo o que eu entendi nada foi definido ainda. Está tudo no campo das ideias e "comprar anúncios com experiência" é apenas mais uma dessas ideias. Outra ideia foi "liberar novas features também com experiência", por exemplo.

Coloquei essa proposta de tentarmos fazer tudo com apenas uma moeda, pois, a meu ver, seria um sistema mais simples e eficaz. Mas é claro que nem sempre mais simples é melhor. Se essa simplicidade atrapalhar a usabilidade teremos que ter mais de um recurso mesmo. Estamos aqui para debater isso.

@dhanielsales
Copy link

Entendo e concordo contigo sobre se tornar mais simples e eficaz, mas gera aquele problema que pra mim tem um peso grande, que é o fato de que se eu compro anúncios com TabCoins, eu vou quere manter elas para essa finalidade, já que vai ser o fim da jornada. Além disso, se eu centralizo em uma só moeda, com essa injeção sazonal da moeda, gera uma inflação que prejudica a
estabilidade da precificação dos anúncios, porque com uma crescente de usuários, seria exponencial a crescente de moeda em circulação, trazendo a necessidade inflacionar os preços gerais. Talvez inclusive tenha que aumentar os preços das ações simples, como curtir e tal. Eu não sou nenhum entendedor aprofundado nisso, mas me parece arriscado.

Fora esses possíveis problemas, vejo uma ideia muito promissora essa geração bônus de Tabcoins. Talvez se dermos um jeito de controlar a quantidade de moeda em circulação, ou separar em outras "moedas", seja um ótimo agregador como incentivo a interação.

@danwhat
Copy link
Author

danwhat commented Jun 7, 2021

A ideia da TCB foi justamente para controlar essa injeção desenfreada de TC no sistema.
Pensa comigo:

  • Se alguém cria uma conta e recebe as 3 TCB mas não usa para nada, essa pessoa continuará eternamente com as 3 TCB. Ou seja: O montante de TC no sistema não aumentará.
  • Agora, se ao invés disso ela gasta as 3 TCB sinalizando valor e interagindo na comunidade, ela recebe mais TCB para continuar interagindo. Ou seja: O montante de TC no sistema não aumentará gradualmente.

O que eu acho valido como ajuste fino é o tempo que as TCB serão entregues. No post inicial eu coloquei que elas voltariam a cada 30min. Talvez fosse melhor um tempo mais logo como algumas horas ou até mesmo um dia. No final de cada dia as TCB de todos voltariam a 3 unidades. É uma ideia.

Uma outra forma de controlar a injeção de TC no sistema poderia ser a necessidade de alguma autenticação nas contas. Eu li um dia desses sobre um sistema de autenticação por pix: Você envia um pix de 1 centavo para o sistema e com isso ele confirma que "você é você". Se só contas autenticadas pudessem receber TCB, a injecão de TC seria mais controlada e impediria contas fakes criadas só para gerar TC.


Essa é minha forma de ver o problema e de como eu enxergo que a comunidade se comportaria.
Mas eu to ciente que tem uma grande chance de meus cálculos estarem errados 🤣.
Ninguém consegue definir com exatidão o comportamento de um grupo de pessoas.

@dhanielsales
Copy link

Opa, olá novamente Dan.

Então, eu entendo tua proposta e inclusive não inviabilizo ela não, mas acho importante avaliar os riscos que as moedas bônus trariam, pq ao meu ver ainda iriam inflacionar a moeda geral, porque ela ao serem usadas elas serão convertidas em moeda corrente normal, fazendo com que os usuários como um todo no sistema, possuam mais "poder de compra".

Se houver mais poder de comprar, há uma necessidade de regulagem dos preços saca? Porque se há essa injeção de moeda sem crescentes de preço, no futuro uma grande quantidade de tabcoins será comum entre usuários, fazendo com que curtir ou interagir gastando moedas, seja com custo irrelevante.

Bom, não sou especialista, mas é isso que me vem na cabeça. De qualquer forma estou disposto a fazer alguns testes com vc e ouvir mais da sua opinião e da galera toda na elaboração do projeto. 😁

@danwhat
Copy link
Author

danwhat commented Jun 7, 2021

Eita. Estava com o pensamento "viciado" e demorei para absorver a sua mensagem. Agora lendo com mais calma entendi sua preocupação.

Realmente, dessa forma é inevitável o aumento de TC no sistema e a inflação da moeda. Mas será que existe uma maneira de se evitar isso? Qualquer sistema que gere TC através de X atividade pode ser explorado. Eu pelo menos não consigo imaginar.

E, assim como no mundo real, alguma inflação é saudável para a economia do sistema, ela só não pode ser descontrolada. Só não podemos nos esquecer da facilidade de acesso as features para novos usuários.

Quem sabe se todos os preços fossem dinâmicos? Podemos nos inspirar até nos joguinho IDLE's.
Assim uma pessoa "rica de TC" em um sistema que gere 1TC por ação/tempo teria que continuar gerando valor pois depois de X meses essa taxa seria de 3TC e ai por diante. (e claro, o preço da criação de noticias, curtidas etc acompanharia essa crescente).
Com isso:

  • Novos usuários sempre teriam acesso as features basicas.
  • Usuários influentes precisariam sempre estar agregando valor a comunidade para se manterem influentes. Caso contrario, mesmo com uma quantidade grande de TC guardada, o tempo faria essa influencia diminuir.

No mais, até agora só debatemos sobre uma forma de gerar TC. Deve existir N formas melhores. Basta esperar o pessoal interagir.
Até porque estou sentindo que a gente vai começar a entrar em loop. Precisamos de mais material para interagir e debater.

PS.: Obrigado pelo papo @dhanielsales! Esta sendo demais interagir com você e pensar em todos os pontos que você esta apontando. Puta exercício mental! 😁

@filipedeschamps
Copy link
Owner

Galera, QUE INSANO DE BOM DEMAIS ter vocês aqui participando, sério, eu to emocionado aqui, falei com a Renata e @GustavoDeschamps muito muito muito massa mesmo!!!

Então, eu e o @GustavoDeschamps fizemos uma call insana sobre como tentar resolver tudo somente usando TabCoins, e infelizmente para o ecossistema parar em pé, é preciso de duas métricas por conta de incentivos invertidos. O @dhanielsales matou a charada: se você usar um valor compartilhado entre qualificar posts e comprar anúncios que é o endgame, as pessoas vão guardar para o endgame.

E independente do nome TabCoins ser parecido TabCoin Bonus para parecer que é a mesma métrica e resolver com uma "única coisa", não é. São duas coisas separadas, e foi isso que eu e o @GustavoDeschamps ficamos batendo a cabeça no call. Na nossa tentativa de resolver tudo com a mesma coisa, a gente tentou metrificar as TabCoins que a pessoa tem, e as TabCoins que a pessoa já investiu em outros posts. E usar essas TabCoins investidas como métrica para ter maior participação nos anúncios, então incentivaria a pessoa a gastar as TabCoins, para somar e aumentar o número de TabCoins investidas... mas novamente, são métricas diferentes e a gente acabou concluindo que seria melhor separar em dois nomes diferentes, pois elas tem objetivos diferentes.

🔥 E pra corrigir uma dúvida do @wcarugatti , os anúncios não serão comprados com TabCoins, e para clarear outra dúvida do @dhanielsales também não serão comprados com XP 👍

Pensa comigo: é um trabalho a mais para quem cria conteúdo ter que também ficar comprando anúncio e gerenciando isso, correto? Então a idéia não é ter a compra e sim ter a participação nos espaços... e esta participação (a probabilidade de aparecer um anúncio seu) é calculada pela sua quantidade de experiência (XP) no site. Você cadastra uma única vez qual ou quais anúncios você possui, e quanto maior seu XP, maior a probabilidade deles aparecerem no site. Então basicamente o fluxo de contribuição é criar conteúdos com valor concreto para receber TabCoins (seja por notícias/posts), e qualificar outros conteúdos. E com isso seu XP vai aumentando, o que vai resultar em uma maior participação no share dos anúncios e também vai habilitando novas features.

Mas essa estratégia ainda tem um furo/abuso 😂

Quero ver se vocês adivinham qual é e o que fazer a respeito considerando que: de início, você pode doar quantas TabCoins quiser para um mesmo post. Como abusar?

@dhanielsales
Copy link

@filipedeschamps
Criar um post próprio e ficar se "auto" curtindo? kkkkkkkk isso que me veio a mente de imediato, vc tem moedas infinitas assim e vc pode ganhar pontos infinitos. mas é "facilmente" resolvivel.

@filipedeschamps
Copy link
Owner

@dhanielsales show, então supondo que um usuário não pode se auto curtir. O que você exploraria, como e porque?

@wcarugatti
Copy link

@filipedeschamps eu posso combinar com um amigo ou amigos (mais conhecido como proxy/bot) pra um dar muita tabcoin pro outro ou todo mundo dar tabcoin pra um só e etc, coisa do tipo?

@danwhat
Copy link
Author

danwhat commented Jun 8, 2021

Vamos lá, em um sistema onde a quantidade de contas influenciasse na origem das TabCoins, o mais obvio seria criar varias contas. Por isso que eu falei sobre a autenticação. Acho que é o jeito mais simples de minimizarmos pessoas mal-intencionadas.

Outro problema seria contas hackeadas, mas isso é mais simples de detectar.

E um terceiro, que acredito que seja quase "natural" de acontecer, é poucos criadores dominarem quase todas as TabCoins do sistema. Que por um lado precisamos impedir, mas por outro é justificavel caso estes poucos criadores estiverem gerando MUUUUITO valor (apesar de não ser legal para novos colaboradores).

Deixei passar algo que vocês já perceberam?

@rodrigoKulb
Copy link
Contributor

rodrigoKulb commented Jun 8, 2021

Uma dúvida. Quando você "curte" uma publicação com as TCs essas TCs ficam com o usuário que postou, certo? Se ele utilizar o saldo "ganho" para "curtir" outro post ele gasta o saldo do post original que ganhou as TCs? Assim poderia ter um prazo para a publicação original perder as TCs, ele poderia gastar sem ter medo de perder o ranking da publicação.

@danwhat
Copy link
Author

danwhat commented Jun 8, 2021

@wcarugatti lendo o seu comentário pensei na possibilidade de ter um log de cada "transação" de TCs para futuramente criar um validador para que antes de ser possível participar do Revenue Share.

Assim quando uma conta fake fosse identificada, todo TC gerado por ela poderia ser excluído da plataforma. Só não sei o quando pesado seria um sistema para guardar essas informações.


@rodrigoKulb na minha ideia inicial as TCs iriam diretamente para o saldo de quem recebeu as curtidas. E se essa pessoa não tivesse TCBs ela gastaria as TCs sim. Só não consegui pensar em algo que fizesse o gasto de TCs gerar mais TCs do que simplesmente guardá-las e usar apenas as TCBs

@filipedeschamps
Copy link
Owner

@filipedeschamps eu posso combinar com um amigo ou amigos (mais conhecido como proxy/bot) pra um dar muita tabcoin pro outro ou todo mundo dar tabcoin pra um só e etc, coisa do tipo?

Bingo @wcarugatti e com isso, inflacionar o meu XP tendo apenas 1 tabcoin sendo passado para lá e para cá.

E existe um outro efeito colateral/abuso no sistema de qualificação. Vocês conseguem adivinhar qual é?

E bom ponto @danwhat isso tem a ver com um dos abusos que dá para fazer. A dica que dou é: manipulação. Vocês conseguem adivinhar o que é?

E @rodrigoKulb você está arranhando o problema. E respondendo a sua pergunta, quando você ganha tabcoins através de um post, esse valor vai para o seu saldo e não tem mais vínculo com o post (a não ser que o post seja deletado, daí nesse caso as coins deveriam ser deletadas do saldo do autor).

Mas alguém consegue descrever qual vai ser o abuso por manipulação?

É bem massinha, e tenho algumas soluções que quero discutir com vocês.

@danwhat
Copy link
Author

danwhat commented Jun 8, 2021

Não sei se é isso, mas dois possíveis problemas para acrescentar a lista são:

  • Alguém com acesso a várias contas em um sistema pequeno consegue manipular as curtidas para definir quais apareceram como destaque para ai sim ter um crescimento "orgânico-artificial" privilegiado.

  • Outro problema que eu enxergo é que na maioria dos sistemas você não perde XP, apenas ganha. Se for assim, não faz muito sentido a XP servir como métrica para participar do Revenue Share, já que, uma vez participando, você não sairia (a não ser perdendo % conforme outras pessoas fossem entrando), e o ideal seria participar apenas enquanto gera valor para a comunidade.

@RodriguesCosta
Copy link

Bom lendo toda essa conversa tive uma ideia, talvez não seja a melhor (nem a mais fácil de implementar 😅), mas vou deixar ela registrada.

Para o problema de amigos ficarem gastando TabCoins entre eles de maneira infinita, e assim gerando XP infinito o sistema poderia controlar as TabCoins como um saldo bancário e assim como todo saldo bancário gerar um extrato de cada movimentação daquela pessoa, e para gerar XP seria verificado no extrato se as TabCoins que ele está gastando vem de maneira direta ou indireta daquele amigo dele, eu sei ficou meio confuso, mas vamos tentar colocar isso e um exemplo.

Temos 2 amigos eles estão trocando TabCoins entre si, cada "transferência" de TabCoins vai gerar uma entrada e uma saída no extrato associando aquela "transferência" ao amigo dele e a ele, quando um amigo for transferir para o outro amigo o sistema transferir normalmente, mas o XP sempre seria gerado em forma de fila, onde seria verificado se nas últimas X transferências ele já recebeu TabCoins daquele amigo que ele esta enviando TabCoins, caso fosse a primeira interação entre os 2 nas últimas X interações o XP seria atribuído caso contrario seria ignorado.

Isso resolve o problema entre 2 amigos, mas quando fosse 3 ou mais? Nesse caso a fila de atribuição de XP teria que verificar a profundidade e essa profundidade de verificação iria verificar as últimas X transações e para cada transação seria verificado as últimas Y transações de cada pessoa X.

Eu sei que ficou meio confuso mas podemos ir debatendo gradualmente e arrumando isso.

@rodrigoKulb
Copy link
Contributor

rodrigoKulb commented Jun 8, 2021

Existem 2 algorítimos legais que podemos utilizar também:

Waze
Para colocar ou remover um bloqueio na pista ele utiliza uma quantidade "x" de avisos semelhantes, podendo ter um mínimo de TabCoins de diferentes usuários para ganhar XP. E não criar uma lógica 1 pra 1.

Google
Sistema de pageraking, primeiro algorítimo do Google, onde ele verificava a quantidade de links para um determinado site, quanto mais links maior o peso do pageraking, mesmo sistema de popularidade da escola.
Podendo também ter PESO de XP ganho do usuário mais popular e menos popular.
Conforme imagem abaixo:
image

@danwhat
Copy link
Author

danwhat commented Jun 8, 2021

@RodriguesCosta eu achei a explicação meio confusa 😞

Mas ficou claro que precisariamos guarda informações de cada transação.

Com essas informações em mãos poderíamos pensar em como tratar os dados para identificar comportamentos suspeitas, além de eliminar do sistema TCs e XT geradas pelas contas deletadas.

O problema que cada curtida seria um insert no banco de dados. Me falta experiência para saber se isso seria muito custoso e se teria formas de otimizar esses inserts.


@rodrigoKulb que comentário válido!
Procurar referência é que sempre melhor que tentar criar solução do zero.

Pesos diferente para gerar XP é uma ótima ideia! Contas não autenticadas poderiam ter menor peso. Contas com mais reputação poderia ter maior peso. É assim por diante.

@RodriguesCosta
Copy link

@danwhat entendo e concordo que ficou meio confuso, mas basicamente e isso que falou vamos ter que armazenar isso no banco de dados, e analisar essas transações para gerar o XP.

Em relação às pessoas não autenticadas conseguirem comentar / interagir penso que não e uma boa ideia, visto que abre margem para spam.

@filipedeschamps
Copy link
Owner

  • Alguém com acesso a várias contas em um sistema pequeno consegue manipular as curtidas para definir quais apareceram como destaque para ai sim ter um crescimento "orgânico-artificial" privilegiado.

@danwhat perfeito! Imagine uma única pessoa possui duas contas, onde a Conta1 está com 1.000 tabcoins e a Conta2 zerada. Ele pode assim sempre manipular uma notícia. Ele utiliza a Conta2 para criar a notícia, e pela Conta1 injeta todo o saldo nessa notícia, levantando ela para o topo. Depois disso, com a Conta2 agora com 1.000 tabcoins, ele pode levantar outra notícia criada pela Conta1 e assim vai.

O que eu pensei e que vejo ser a forma mais fácil de implementar: um imposto a cada doação. E esse imposto é um buraco negro que faz o tabcoin ir para lugar algum, e este é o segredo dessa estratégia. Quando a pessoa faz uma doação, chega apenas 50% do valor do outro lado. Então se a pessoa quiser ficar rotacionando tabcoins, ela vai destruir rapidamente todo seu valor.

  • Outro problema que eu enxergo é que na maioria dos sistemas você não perde XP, apenas ganha. Se for assim, não faz muito sentido a XP servir como métrica para participar do Revenue Share, já que, uma vez participando, você não sairia (a não ser perdendo % conforme outras pessoas fossem entrando), e o ideal seria participar apenas enquanto gera valor para a comunidade.

E sim, para o XP definir o Revenue Share, precisaria ser a % de todos os XPs e eu vejo como justo, porque se a pessoa já participou, é um incentivo ela continuar participando, mas se decidir parar, automaticamente vai perdendo espaço para outras pessoas que continuaram trazendo conteúdos relevantes e atualizados. E não é uma elasticidade abrupta, e isso é bom, pois dá espaço para a pessoa respirar, tirar férias do tabnews quando quiser/precisar 😂

@filipedeschamps
Copy link
Owner

Para o problema de amigos ficarem gastando TabCoins entre eles de maneira infinita, e assim gerando XP infinito o sistema poderia controlar as TabCoins como um saldo bancário e assim como todo saldo bancário gerar um extrato de cada movimentação daquela pessoa, e para gerar XP seria verificado no extrato se as TabCoins que ele está gastando vem de maneira direta ou indireta daquele amigo dele...

@RodriguesCosta sensacional, eu tinha também pensado em algo dessa natureza, mas controlando pelo id de cada tabcoin. Não fui muito afundo, mas você receberia XP apenas se recebesse tabcoin nova, mas a implementação técnica pesaria bastante, fora que não sei se seria uma experiência muito boa o ganho de XP não ser determinístico na visão de quem está qualificando os posts (para completar o fluxo de contribuição e assim receber XP).

@filipedeschamps
Copy link
Owner

Existem 2 algorítimos legais que podemos utilizar também:

Waze
Google

Interessantíssimo @rodrigoKulb ! A participação no Revenue Share ser determinado pelo peso da rede que está qualificando os posts 🤝

@RodriguesCosta
Copy link

Nossa sensacional! Isso realmente resolveria o problema de maneira bem simples.

O que eu pensei e que vejo ser a forma mais fácil de implementar: um imposto a cada doação. E esse imposto é um buraco negro que faz o tabcoin ir para lugar algum, e este é o segredo dessa estratégia. Quando a pessoa faz uma doação, chega apenas 50% do valor do outro lado. Então se a pessoa quiser ficar rotacionando tabcoins, ela vai destruir rapidamente todo seu valor.

@filipedeschamps
Copy link
Owner

filipedeschamps commented Jun 8, 2021

Sugestão para um primeiro passo:

Deixa tudo liberado, não precisamos nos preocupar agora nesse estágio do projeto, mas vamos implementar um log solto de todas as transações, e com isso seria um excelente projeto alguém programar um algoritmo/modelo que identifica abusos. E pode identificar vários tipos de abusos, desde estourando algum rate limit (para pegar bots), ou trocando tabcoins entre sempre as mesmas contas e com certeza vai ter outras formas de identificar e penalizar/banir essas contas.

Seria legal tentar trazer até alguém que trabalha no Risco do Pagar.me, porque na época que eu trabalhava lá o pessoal fazia um trabalho muito massa. Era um tradeoff entre liberar/barrar transações, tentando evitar fraudes, mas ao mesmo tempo tentando penalizar no mínimo a experiência de quem estava tentando comprar de forma genuína (que sempre vai ser a maioria).

Então talvez ao invés de complicarmos a experiência e compreensão de quem quer e vai participar de forma construtiva, a gente implementa mecanismos invisíveis para visualizar e banir quem tá ali para abusar (e dá para fazer tudo automatizado).

O que acham?

@danwhat
Copy link
Author

danwhat commented Jun 8, 2021

E sim, para o XP definir o Revenue Share, precisaria ser a % de todos os XPs e eu vejo como justo, porque se a pessoa já participou, é um incentivo ela continuar participando, mas se decidir parar, automaticamente vai perdendo espaço para outras pessoas que continuaram trazendo conteúdos relevantes e atualizados. E não é uma elasticidade abrupta, e isso é bom, pois dá espaço para a pessoa respirar, tirar férias do tabnews quando quiser/precisar.

@filipedeschamps , eu entendo a sua preocupação... mas vamos pensar em outra hipótese: O tabnews é um sucesso e está a 3 anos no ar. Será quase impossível um novo usuário criar conteúdo suficiente para consegui uma % relevante do Revenue Share.
Será que não conseguimos pensar em um meio termo? Ao mesmo tempo que resguarde o usuários antigos também seja amigável para novos usuários.

Sugestão para um primeiro passo...

Perfeito. Podemos começar a guardar as transações (idTabCoin, quemEnviou, quemRecebeu, quando), e seguir o barco. Mais para frente quando estivermos implementando o Revenue Share a gente pensa em como tratar os dados das transações para limpar as fraldes.

@danwhat danwhat closed this as completed Jun 8, 2021
@filipedeschamps
Copy link
Owner

@filipedeschamps , eu entendo a sua preocupação... mas vamos pensar em outra hipótese: O tabnews é um sucesso e está a 3 anos no ar. Será quase impossível um novo usuário criar conteúdo suficiente para consegui uma % relevante do Revenue Share.
Será que não conseguimos pensar em um meio termo? Ao mesmo tempo que resguarde o usuários antigos também seja amigável para novos usuários.

Perfeito! O que acha de talvez aplicar uma curva onde ela reduz a probabilidade de participação para quem tem muito XP, e aumenta para quem tem pouco?

Perfeito. Podemos começar a guardar as transações (idTabCoin, quemEnviou, quemRecebeu, quando), e seguir o barco. Mais para frente quando estivermos implementando o Revenue Share a gente pensa em como tratar os dados das transações para limpar as fraldes.

Show!!! 🤝

E sugiro deixar a issue aberta para mais pessoas lerem, digo isso pois mais gente ta pedindo invite pro repo 😍

@danwhat
Copy link
Author

danwhat commented Jun 8, 2021

Perfeito! O que acha de talvez aplicar uma curva onde ela reduz a probabilidade de participação para quem tem muito XP, e aumenta para quem tem pouco?

É uma boa. Mas me preocupo de isso desincentive os criadores em algum ponto. Isso faria o criador parar de gerar valor... ou pior: criar outra conta para continuar gerando valor.
"Eu já cheguei em uma % razoável na participação do Revenue Share. Para conquistar mais que isso eu precisarei criar tanto conteúdo que não compensa."

Será que pesos diferentes na participação dependendo do tempo de postagem não seria melhor?
Uma notícia de um mês rende 100% de participação. quando essa notícia tiver 2 meses ela renderá 80%. 3 meses? 70%... E ai por diante. Não se prenda aos números mais sim ao conceito proposto.

E sugiro deixar a issue aberta para mais pessoas lerem, digo isso pois mais gente ta pedindo invite pro repo 😍

Foi mal. Ainda estou me acostumando com o conceito. Achei que era para fechar 🙃

@danwhat danwhat reopened this Jun 8, 2021
@filipedeschamps
Copy link
Owner

"Eu já cheguei em uma % razoável na participação do Revenue Share. Para conquistar mais que isso eu precisarei criar tanto conteúdo que não compensa."

Genial eu não tinha pensado nisso!

Será que pesos diferentes na participação dependendo do tempo de postagem não seria melhor?
Uma notícia de um mês rende 100% de participação. quando essa notícia tiver 2 meses ela renderá 80%. 3 meses? 70%... E ai por diante. Não se prenda aos números mais sim ao conceito proposto.

Entendi!! Interessantíssimo! Só tem um detalhe: o XP só é gerado no momento que a pessoa finalizar o fluxo de contribuição, que é qualificando outros posts (esse é o incentivo para ganhar XP). Então não é no ato da criação da notícia/comentário ou recebimento. Mas seguindo o seu raciocínio, talvez então posts novos dão mais tabcoins do que posts antigos, e que de uma forma ou outra isso vai se refletir em XP no final das contas. O que acha?

@rodrigoKulb
Copy link
Contributor

rodrigoKulb commented Jun 8, 2021

Já que está fácil o assunto "TabCoins " Vou gerar um pouco mais de confusão kkkk... Penso que nem sempre o que é "importante" para uma pessoa é para outra. Como exemplo a timeline de uma rede social, Ela acaba virando uma vitrine personalizada para cada usuário. Talvez seria interessante adicionar esse atributo no algorítimo de ordenação.
01 - Tempo (quanto tempo foi postado)
02 - TabCoins (likes que recebeu)
03 - Interesse no assunto (já curti matérias com esse assunto)

@filipedeschamps
Copy link
Owner

Excelente @rodrigoKulb isso é uma coisa que conversei bastante com o Guga, não sei se vocês concordam mas numa rede social atual, ela apresenta o que é mais interessante para você, mas não necessariamente o que é mais importante para você. E apesar de que importância pode ser tão relativo quanto interesse, eu acredito que deixar o grupo de pessoas tabnews definir o que é importante acaba trazendo um valor diferente do que as redes estão fazendo, que é "o que o coletivo está dizendo que é importante, mesmo que você não goste do assunto". Faz sentido? De qualquer forma, tudo isso pode ser alterado, zero escrito em pedra 👍

@rodrigoKulb
Copy link
Contributor

rodrigoKulb commented Jun 8, 2021

ela apresenta o que é mais interessante para você, mas não necessariamente o que é mais importante.

Matou a pau, com certeza!

@danwhat
Copy link
Author

danwhat commented Jun 8, 2021

Entendi!! Interessantíssimo! Só tem um detalhe: o XP só é gerado no momento que a pessoa finalizar o fluxo de contribuição, que é qualificando outros posts (esse é o incentivo para ganhar XP). Então não é no ato da criação da notícia/comentário ou recebimento. Mas seguindo o seu raciocínio, talvez então posts novos dão mais tabcoins do que posts antigos, e que de uma forma ou outra isso vai se refletir em XP no final das contas. O que acha?

@filipedeschamps Ou eu não expliquei o problema direito ou eu não captei a solução fornecida. Mas para mim o problema não são as notícias antigas continuarem gerando XP e sim o XP antigo continuar a ser relevante para o Revenue Share.

Vamos supor que com 3 meses de TabNews tenha 10 criadores de conteúdo e cada um faz uma média de 100XP/mês. Com isso teremos 90k XP no sistema. Quem começar a criar conteúdo depois dos 3 meses vai ter dificuldade de chegar a uma porcentagem de XP relevante para o Revenue Share, mas até ai tudo bem. É claramente justo.

Mas agora vamos estender isso para um ano. Nesse segundo cenário um usuário novo além de precisar competir com outros usuários (que por si só já será mais difícil, visto que a tendência é sempre aumentar a quantidade de usuários com o passar do tempo), também precisará competir com a XP dos meses passados que esses usuários conquistaram.

Eu vejo esse sistema sendo quase proibitivo para novos usuários depois de algum tempo. Estou certo ou eu deixei passar algo?

@danwhat
Copy link
Author

danwhat commented Jun 8, 2021

ela apresenta o que é mais interessante para você, mas não necessariamente o que é mais importante.

Tenho tanta coisa na cabeça que nem me atrevo a pensar em mais um sistema. Mas em relação a que tipo de conteúdo o TabNews irá entregar, eu acho que deveria ser um meio-termo do que os usuários querem e o que é importante.

Se decidirmos entregar apensas o que é importante, não reteremos usuários e isso pode até dificultar manter a plataforma com anúncios. Agora se colocarmos apenas o que entretêm, será apenas mais um site com conteúdo superficial e fácil de consumir mais que não agrega muito a vida das pessoas.

Mas foi um ótimo ponto você levantou isso @rodrigoKulb . É importante saber como o conteúdo será distribuído. E a ideia de ser personalizado para cada tipo de usuário é super válida.

@brunofamiliar
Copy link
Contributor

Nossa, essa thread aqui ta bem interessante hen. Venho acompanhando essa discussão há alguns dias, realmente essa questão de possibilitar que o usuário personalize seus interesses é super válido, falo isso por experiência própria. Em um site de noticias comum eu pulo quase 70% do conteúdo até encontrar algo relevante, então se "forçamos" as pessoas a consumir somente as noticias que forem relevante para o coletivo, pode afetar diretamente no engajamento e na retenção do público no site. Então concerteza aquilo que era pra ser legal e atender minhas necessidades de informação (supondo que sou apenas um público que irá consumir conteúdo), passa ser um incomodo e enjoativo.

@SysDaemon
Copy link

O problema que cada curtida seria um insert no banco de dados. Me falta experiência para saber se isso seria muito custoso e se teria formas de otimizar esses inserts.

No começo, o volume de inserts pode até ser pequeno.
Mas após isso, podemos guardar blocos na memória e realizar um Bulk-Insert para cada 5k de curtidas.
Se dimensionarmos bem as tabelas, fazendo uma relação do "Id" das notícias, "id" dos usuários e com um campo numérico, isso não seria custoso para o SGDB.

@wcarugatti
Copy link

Pessoal, como somos programadores e não gostamos de reinventar taanto a roda.

Acho que vale muito de inspiração isso aqui:

https://steemit.com
https://steemit.com/faq.html
https://steem.com/steem-bluepaper.pdf
https://steem.com/SteemWhitePaper.pdf

Eu sei que não vamos usar blockchain, mas o steemit/steem é uma rede social/blockchain com uma proposta MUITO parecida com a do tabnews de premiar conteúdos/posts relevantes e ao mesmo tempo ter o sistema a prova de abusos.

Eles resolvem a maioria dos problemas citados nessa issue com essa blockchain própria deles. O que vale de inspiração ai é o whitepaper e o bluepaper deles que explica muito bem que lógica eles usaram pra resolver esses problemas como por exemplo:

Steem operates on the basis of one-STEEM, one-vote. Under this model, individuals who have
contributed the most to the platform, as measured by their account balance, have the most
influence over how contributions are scored

@rodrigoKulb da uma olhada, acho que você vai gostar.

@rodrigoKulb
Copy link
Contributor

rodrigoKulb commented Jun 9, 2021

@rodrigoKulb da uma olhada, acho que você vai gostar.

@wcarugatti muito legal, como o @filipedeschamps comentou nada está escrito em pedras, gostei muito da opção de downvote, uma forma de conseguir reduzir spam's e noticias sem contexto de tecnologia.

Acredito que a ordenação das notícias será um resultado de um algorítimo que vamos construir trocando informações e experiências.

Objetivo do algorítimo é obter um ranking com todo análise de XPs, TCs, DATA, sistema anti fraudes etc...

Muito parecido com o algorítimo do Google, não é algo simples que qualquer um consegue burlar facilmente, mas precisa ser claro para que o resultado seja rápido.

@filipedeschamps
Copy link
Owner

Atendendo ao objetivo da issue #63 da atual Milestone, estou fechando essa issue, mas isso não significa que essa conversa foi descartada ou deve ser interrompida, muito pelo contrário, esta issue pode ser reaberta a qualquer momento que necessário. Estou marcando ela também com a label repescar para ser mais fácil de encontrar caso chegue o momento certo de voltarmos a discutir sobre ela 🤝

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

10 participants