Come posso gestire gli utenti cestino?


22

Ho creato un sistema che si spera abbia molti utenti. Temiamo che il nostro database riempirà di utenti spazzatura che accettano nomi utente molto richiesti, o forse si registrano e non tornano più.

So che questo è comune, lo faccio da solo, dato che ho 3 account Google, ma uso solo 1. Come può un sito Web di grandi dimensioni gestire gli utenti spazzatura o non tornare mai più in questo modo?


11
Penso che la domanda abbia bisogno di un po 'di chiarimenti. Che cos'è esattamente un "utente spazzatura"? Intendi un account inattivo o cosa? Sei sicuro che questa domanda riguardi davvero lo sviluppo del software?
VIENI DAL

oh scusa, potrebbe essere la sua abitudine nella mia istruzione, tutti dicevano che tutti i dati non utilizzati sono spazzatura, l'utente spazzatura è come alcuni dati utente mai usati di nuovo e rende superfluo
yozawiratama

6
Quindi hai paura che un nuovo utente non si registri per il tuo sito quando vedrà che FrankIsAwesome è stato preso? Questo non dovrebbe tenerti sveglio la notte. Ciò che mi tiene sveglio la notte è il pensiero che FrankIsAwesome potrebbe essere fortemente attivo per un anno, inattivo per 2 anni, avere il suo account rimosso e registrato da un altro utente che ora può rappresentare l'originale FrankIsAwesome. Puoi provare l'approccio StackOverflow e collegare tutto a un ID e consentire all'utente di cambiare il proprio nome ogni 30 giorni (credo) in qualcosa che è disponibile.
MonkeyZeus,

3
@MonkeyZeus Sono abbastanza sicuro che i nomi StackOverflow non debbano essere univoci ...
Michael

2
@MonkeyZeus Lo StackExchnage univoco è il numero ID che si trova per sito - guarda l'indirizzo della pagina del profilo di un utente. Il nome utente non viene utilizzato come chiave (il mio nome utente non è univoco e ho avuto diverse catene di commenti con un altro Mark)
user151019

Risposte:


20

Alcuni servizi rimuovono gli account che non hanno visto alcuna attività per un certo periodo di tempo, ad esempio un anno.

Altri non si preoccupano, poiché mantenere un registro utente nel proprio sistema è una quantità banale di dati e chissà, potrebbero tornare.

Naturalmente, se stai tenendo traccia di ciò che gli utenti fanno effettivamente con il tuo servizio, rimuoverli è piuttosto complicato. O dovrai rimuovere tutto ciò a cui hanno contribuito o trovare un modo per scollegare tutto ciò dal loro account (il che potrebbe non essere una buona cosa da fare per una varietà di motivi, attribuzione, problemi legali, ecc.) .

E se gli utenti dovessero effettivamente pagare per contenuti accessibili attraverso quell'account inattivo, rimuovere l'account non è affatto una buona cosa poiché ora stai privando le persone di cose su cui hanno effettivamente speso soldi (Linden Lab ha dovuto cambiare la loro politica per quanto riguarda gli utenti di Second Life a causa di ciò, erano soliti rimuovere account inattivi dopo un certo periodo, ma dovevano smettere di farlo quando le persone si lamentavano di essere stati privati ​​del proprio investimento, e giustamente, quando alcune persone sono tornate dopo assenze prolungate a causa, ad esempio collocamento temporaneo all'estero (espatriati, militari, ecc. ecc.).

Il meglio che puoi probabilmente fare è non preoccuparti. La seconda cosa migliore sarebbe quella di rimuovere solo gli account che non solo non hanno visto attività per lungo tempo, ma hanno anche contribuito e non hanno nulla a loro collegato.


sì, voglio tenere traccia di ciò che gli utenti effettivamente fanno, non voglio eliminare l'utente, grazie per il tuo suggerimento
yozawiratama

oh sì, che ne dici se creo un server o un db per "i dati del cestino possono essere usati", quindi in realtà quando lo elimino, passerà a quel db o server. così posso aprire quell'utente ad altri e anche registrare i dati di quel cestino. in questa era, tutti i dati possono essere importanti, penso. solo il mio opini come novizio
yozawiratama

+1 per "Il meglio che probabilmente puoi fare è non preoccuparti". Ho visto siti che non danno fastidio. La logica è che non devono avere a che fare con utenti che scompaiono per alcuni anni, poi improvvisamente tornano per capriccio e sono irritati quando le loro informazioni di accesso non funzionano più. Lasciando soli i nomi degli utenti, salverai te stesso e i tuoi utenti. (Inoltre, StackOverflow sembra funzionare bene senza richiedere nomi utente univoci.)
Kyralessa

18

Stranamente, Facebook o Google hanno così tanti utenti che questo non è un grosso problema per loro.

Chiunque abbia scelto un nome utente davvero desiderabile (ad es. "Frank") probabilmente lo ha già fatto nel 2008. Molti, molti utenti che ora vengono e vogliono provarlo, non torneranno più, dovranno probabilmente accontentarsi di "Frank32183" , e una volta che lo accetti, non c'è un motivo particolare per cui non accetterei anche "Frank32184" (non tutti possono essere così fortunati ad avere un nome univoco, come me!).

Un altro fattore è che, notoriamente, le aziende di big data non rimuovono mai i dati degli utenti a meno che sia l'opinione pubblica sia un tribunale non lo diano davvero, perché i loro dati utente sono il loro modello di business. Essere in grado di dire "abbiamo 3,000,000,000 utenti" è più importante di garantire che siano tutti gli utenti in tempo reale, perché attira più i nuovi utenti, gioca meglio con i clienti pubblicitari, ecc utenti Mantenere felice è importante per l'azienda, ma non del tutto come importante in quanto mantenendo loro in primo luogo.

In una rete più piccola e familiare i compromessi possono essere diversi. In effetti, la rimozione effettiva dei dati senza traccia potrebbe essere un prezioso punto di vendita unico di una piattaforma online esclusiva. Ma le aziende veramente grandi che mirano ad avere tutti sul pianeta come loro clienti semplicemente non operano in quello spazio.


4
"un tribunale / legge davvero, davvero urgentemente dirglielo", e anche allora spesso non lo fanno, rendono i dati inaccessibili agli utenti finali conservandoli per il loro uso personale ...
jwenting

8

Separare le credenziali di accesso dai nomi visualizzati

Consentire agli utenti di accedere con il proprio indirizzo e-mail o account esistente da un sito che fornisce tale servizio (ad esempio Google o Facebook). Se vuoi davvero che gli utenti creino un nuovo nome utente, anche quello funziona.

Quindi, prima di interagire ulteriormente con il sistema (o come parte della registrazione), chiedere agli utenti di scegliere un nome visualizzato. Poiché questo nome è separato dalle credenziali di accesso, sei libero di richiederlo se l'utente diventa inattivo e, al suo ritorno, può fargli selezionare un nuovo nome. Come bonus, puoi consentire agli utenti di cambiare il loro nome visualizzato a piacimento.

Questo non funziona altrettanto bene (ma non è poi così male) per i sistemi in cui stai salvando discussioni a lungo termine tra molti utenti - può essere difficile analizzare una conversazione tra una manciata di utenti alcuni mesi o anni dopo quando due di loro sono diventati inattivi e hanno perso i nomi visualizzati (sostituiti con inactive user #123e #186rispettivamente) ma hanno ancora fatto riferimento ai loro vecchi nomi nel testo. Può anche portare gli utenti a impersonarsi a vicenda, anche se ci sono molte strategie per combattere questo.

Questa non è un'idea molto nuova. Stack Overflow fa la separazione (anche se non credo che i nomi vengano mai reclamati o addirittura unici), diversi giochi online implementano anche l'aspetto del recupero.


Scopri quanti utenti su Stack Overflow sono chiamati "Matt". Quindi notate che nove di loro hanno oltre 10k rep
durron597

@ durron597 È interessante notare che ci sono altri 2000 di Alex, ma solo nove di loro hanno oltre 10.000 rappresentanti .
Mark Hurd,

@MarkHurd Lol sì, ma non c'è un moderatore di nome Alex, motivo per cui ho notato quella particolare statistica in primo luogo.
durron597,

1

Questo è più un problema di UX, piuttosto che un problema di programmazione.

Ma la soluzione è semplice: non utilizzare il nome utente dell'utente come nome visualizzato. Fondamentalmente ogni servizio principale utilizza questo metodo: Stack Exchange, Google, Youtube, Steam, tutto.

Ciò comporta due vantaggi principali:

1) Gli utenti possono scegliere il nome che desiderano, anche se è già stato utilizzato. Gli utenti duplicati di solito non creano confusione poiché gli utenti in genere hanno avatar o ID.

2) Sicurezza. Non stai dicendo il tuo nome utente al mondo, chiedendo alle persone di rafforzare il tuo account.


2
questo sembra semplicemente ripetere il punto sollevato e spiegato in una risposta precedente , "Separare le credenziali di accesso dai nomi visualizzati ..."
moscerino

0

Quando un account è inattivo da molto tempo, inviagli un'email che notifica loro che il loro account verrà disattivato tra qualche mese. Alla disattivazione cancellare il nome utente e inviare un collegamento di ripristino via e-mail.

La prossima volta che l'utente vuole accedere, gli fa scegliere un nuovo nome. Deve utilizzare il link di reimpostazione per scegliere un nuovo nome.

In questo modo tutti gli utenti possono conservare i propri dati ma alla fine i nomi inattivi vengono resi disponibili.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.