Como posso gerenciar usuários da lixeira?

22

Eu criei um sistema que esperamos ter muitos usuários. Tememos que nosso banco de dados atenda a usuários do lixo que usam nomes de usuário de alta demanda, ou talvez eles apenas se registrem e nunca mais voltem.

Sei que isso é comum, eu mesmo faço isso, pois tenho 3 contas do Google, mas uso apenas 1. Como um site grande pode gerenciar usuários do lixo ou nunca mais voltar usuários como esse?

yozawiratama
fonte
11
Eu acho que a pergunta precisa de um pouco de esclarecimento. O que exatamente é um "usuário do lixo"? Você quer dizer uma conta inativa ou o quê? Você tem certeza de que esta pergunta é realmente sobre desenvolvimento de software?
Venha de
oh desculpe, pode ser seu hábito na minha educação, meu todo mundo disse que todos os dados não utilizado é lixo, usuário de lixo é como alguns dados do usuário nunca usou novamente e tornar redundante
yozawiratama
6
Você tem medo de que um novo usuário não se registre no seu site depois de ver que o FrankIsAwesome foi usado? Isso não deve mantê-lo acordado à noite. O que me mantém acordado à noite é o pensamento de que o FrankIsAwesome pode estar fortemente ativo por um ano, inativo por 2 anos, ter sua conta removida e registrada por outro usuário, que agora pode representar o FrankIsAwesome original. Você pode tentar a abordagem StackOverflow e vincular tudo a um ID e permitir que o usuário altere seu nome a cada 30 dias (acredito) para algo disponível.
precisa saber é o seguinte
3
@MonkeyZeus Tenho certeza nomes StackOverflow não precisa ser único ...
Michael
2
@MonkeyZeus O StackExchnage exclusivo é o número de identificação que é por site - veja o endereço da página de perfil de um usuário. O nome de usuário não é usado como chave (meu nome de usuário não é exclusivo e eu tive várias cadeias de comentários com outra marca)
user151019

Respostas:

20

Alguns serviços removem contas que não viram nenhuma atividade em um determinado período de tempo, por exemplo, um ano.

Outros não se incomodam, alegando que manter um registro de usuário em seu sistema é uma quantidade trivial de dados e, quem sabe, eles podem voltar.

Obviamente, se você acompanhar o que os usuários realmente fazem com seu serviço, removê-los é um pouco complicado. Você precisará remover tudo o que eles contribuíram ou encontrar uma maneira de desvincular tudo isso da conta (o que pode não ser uma boa coisa a ser feita por vários motivos, atribuição, aborrecimentos legais etc.) .

E se os usuários realmente precisaram pagar pelo conteúdo acessível por meio dessa conta inativa, remover a conta não é uma coisa boa, pois agora você está privando as pessoas daquilo em que realmente gastaram um bom dinheiro (a Linden Lab teve que mudar sua política em relação aos usuários do Second Life por causa disso, eles costumavam remover contas inativas após um período, mas precisavam parar de fazê-lo quando as pessoas reclamavam que estavam sendo privadas de seu investimento e, com razão, quando algumas pessoas retornavam após ausências prolongadas devido a, por exemplo, colocação temporária no exterior (expats, militares, etc. etc.).

O melhor que você provavelmente pode fazer é não se incomodar. O segundo melhor seria remover apenas as contas que não só não viram atividade por um longo tempo, mas também não contribuíram com nada e não têm nada vinculado a elas.

jwenting
fonte
sim, eu quero acompanhar o que os usuários realmente fazer, eu apenas não quero usuário de exclusão, obrigado pela sua sugestão
yozawiratama
oh yeah, que tal se eu criar um servidor ou banco de dados para "dados do lixo podem ser usados", na verdade, quando eu excluir, ele será transferido para esse banco de dados ou servidor. para que eu possa abrir esse usuário para outras pessoas e também ter registro sobre esses dados do lixo. nesta época, todos os dados podem ser importantes, eu acho. apenas minhas opini como novato
yozawiratama
+1 em "O melhor que você provavelmente pode fazer é não se incomodar". Já vi sites que não se incomodam. A lógica é que eles não precisam lidar com usuários que desaparecem por alguns anos e, de repente, voltam por um capricho e ficam irritados quando suas informações de login não funcionam mais. Ao deixar os nomes de usuário em paz, você poupará a si e a seus usuários alguns problemas. (Além disso, StackOverflow parece funcionar bem sem a necessidade de nomes de usuários únicos.)
Kyralessa
18

Estranhamente, o Facebook ou o Google têm tantos usuários que isso não é um problema para eles.

Quem escolheu um nome de usuário realmente desejável (por exemplo, "Frank") provavelmente já o fez em 2008. Os muitos e muitos usuários que agora vêm e querem experimentá-lo, nunca mais voltarão, provavelmente terão que se contentar com "Frank32183" , e depois que você aceitar isso, não há nenhuma razão específica para não aceitar "Frank32184" também (nem todos podem ter a mesma sorte de ter um nome único, como eu!).

Outro fator é que, notoriamente, as empresas de big data nunca removem dados do usuário, a menos que a opinião pública e um tribunal realmente lhes digam com urgência, porque seus dados são o modelo de negócios. Ser capaz de dizer "temos 3.000.000.000 de usuários" é mais importante do que garantir que todos sejam usuários ativos, pois atrai mais usuários novos, brinca melhor com clientes de publicidade etc. Manter os usuários felizes é importante para a empresa, mas não exatamente como importante como mantê- los em primeiro lugar.

Em uma rede menor e mais familiar, os trade-offs podem ser diferentes. De fato, remover seus dados sem deixar rastro pode ser um ponto de venda exclusivo e valioso de uma plataforma online exclusiva. Mas as grandes empresas que pretendem ter todos no planeta como clientes simplesmente não operam nesse espaço.

Kilian Foth
fonte
4
"um tribunal / lei realmente, realmente dizer urgentemente que eles," e mesmo assim eles muitas vezes não, apenas tornar os dados inacessíveis para os usuários finais, mantendo-lo para seu próprio uso ...
jwenting
8

Separe as credenciais de login dos nomes para exibição

Permita que os usuários efetuem login com seu endereço de e-mail ou conta existente em um site que fornece esse serviço (por exemplo, Google ou Facebook). Se você realmente deseja que os usuários criem um novo nome de usuário, isso também funciona.

Antes de interagir mais com o sistema (ou como parte do registro), peça aos usuários que escolham um nome para exibição. Como esse nome é separado das credenciais de login, você pode recuperá-lo se o usuário ficar inativo e, ao retornar, poderá fazê-lo selecionar um novo nome. Como bônus, você pode permitir que os usuários alterem seu nome de exibição à vontade.

Isso não funciona tão bem (mas não é tão ruim assim) para sistemas em que você está salvando discussões de longo prazo entre muitos usuários - pode ser difícil analisar uma conversa entre vários usuários alguns meses ou anos depois, quando dois deles ficaram inativos e perderam seus nomes para exibição (substituídos por inactive user #123e #186respectivamente), mas ainda se referiram aos nomes antigos em texto. Também pode levar os usuários a se passarem, embora existam muitas estratégias para combater isso.

Esta não é uma ideia muito nova. O Stack Overflow faz a separação (embora eu ache que os nomes nunca sejam recuperados ou até únicos), vários jogos online também implementam o aspecto de recuperação.

Jacob Raihle
fonte
Veja quantos usuários no Stack Overflow são nomeados "Matt". Então aviso de que nove deles têm mais de 10k rep
durron597
@ durron597 Curiosamente, há mais de 2000 Alex, mas ainda assim apenas nove deles têm mais de 10k repetições .
Mark Hurd
@ MarkHurd Lol, sim, mas não há moderador chamado Alex, e foi por isso que notei essa estatística em particular.
precisa saber é o seguinte
1

Este é mais um problema de UX, e não um problema de programação.

Mas a solução é simples: não use o nome de usuário do usuário como nome de exibição. Basicamente, todos os principais serviços usam esse método: Stack Exchange, Google, Youtube, Steam, tudo.

Isso vem com duas vantagens principais:

1) Os usuários podem escolher o nome que quiserem, mesmo que já esteja em uso. Usuários duplicados geralmente não causam confusão, pois normalmente possuem avatares ou IDs.

2) segurança. Você não está dizendo seu nome de usuário ao mundo, implorando para que as pessoas façam força bruta em sua conta.

Anônimo
fonte
2
isso parece meramente repetir o argumento exposto e explicado em uma resposta anterior , "Separe as credenciais de login dos nomes de exibição ..." #
3013
0

Quando uma conta fica inativa por um longo período, envie um e-mail notificando-a de que sua conta será desativada em alguns meses. Na desativação, limpe o nome do usuário e envie um link de redefinição por email.

Na próxima vez que o usuário desejar fazer login, escolha um novo nome. Ele precisa usar o link de redefinição para escolher um novo nome.

Dessa forma, todos os usuários podem manter seus dados, mas os nomes inativos são disponibilizados eventualmente.

usr
fonte