Anomalia contabile per i giorni visitati?

Come altri prima di me, ho cercato di ottenere il distintivo di “Aficionado” partecipando al mio forum per 100 giorni consecutivi. E sono quasi arrivato. Penso di aver saltato solo uno o due giorni di fila, il che mi fa dubitare dei dati di partecipazione riportati, ma ciò che è davvero anomalo è che i conteggi non tornano.

Nel rapporto “Utenti”, per il trimestre, risulto con 92 giorni, che deve corrispondere all’intero trimestre.
Nella vista Amministratore dei requisiti di Livello 3, la mia partecipazione è riportata come 92/100 giorni, ovvero il 92%, ben oltre il 50%.
Da questi due dati, dovremmo concludere che sono stato assente per almeno 8 giorni, dal giorno 100 al giorno 93 nel passato.

Eppure: nella vista Utenti, se controllo la partecipazione annuale, ottengo 360, il che significa al massimo 5 giorni di assenza nell’anno (escluso il giorno bisestile).

Quindi, una delle due statistiche non è del tutto corretta… oppure ho commesso un errore.

(Certo, non è un problema grave, ma forse il bug influisce su qualcos’altro, se esiste davvero.)

Ho installato il plugin Data Explorer ed eseguito la query da Come posso vedere quanti giorni consecutivi ho visitato il forum? e risulta che la mia presenza continua è di 99 giorni. Se è corretto, la vista Admin che riporta i giorni di presenza su 100 deve essere errata – come notato sopra, tl3_requirements riporta 92/100.

username start_range end_range days
EdS 2019-10-07 2020-01-13 99
EdS 2019-09-29 2019-10-05 7
EdS 2019-07-28 2019-09-27 62

Un aggiornamento: ho ottenuto il badge Aficionado, quindi quel metodo di calcolo della frequenza ha raggiunto 100. Tuttavia, il calcolo dei requisiti per il Livello 3 indica 93/100. Inoltre, il calcolo della frequenza consecutiva in giorni nell’Esploratore dati mostra 101 giorni.

C’è sicuramente qualcosa in corso.

Molto probabilmente si tratta di un malinteso relativo al fuso orario. L’orario del server è sempre in UTC, quindi il calcolo è: devi visitare il sito tra le 00:01 e le 23:59 UTC di quel giorno perché venga conteggiato.

Questi numeri, insieme ad altri, hanno generato molte domande qui e in altre istanze di Discourse nel 2014/15. C’erano così tanti nuovi utenti desiderosi di ottenere i distintivi e non avevamo molta fiducia in Discourse. Alcune differenze erano effettivamente bug, quindi la maggior parte dei calcoli è stata confermata con buona approssimazione.

Ho verificato alcuni dati io stesso. Ricordo di aver raccolto le mie informazioni e di aver contato quanti giorni UTC ho visitato Discourse. Avevo statistiche di terze parti provenienti da software di monitoraggio di rete, quindi potevo controllare le statistiche di Discourse. Sarebbe stato bello trovare alcune grandi anomalie, ma Discourse era corretto per le mie statistiche.

Questo non significa che non ci siano problemi ora. Sembra solo improbabile.

A proposito, non ho ancora il distintivo perché è difficile lavorare con l’ora UTC quando sono il più lontano possibile da essa su questo pianeta.

Sto usando il badge solo come motivazione per il controllo. Non è il badge a essere dubbio, ma il conteggio. Ci sono almeno due o tre sistemi che contano la presenza e non sono tutti d’accordo.

Il problema del fuso orario potrebbe certamente trarre in inganno una persona che crede di aver visitato per N giorni ma non risulta aver visitato per N giorni, ma non è questa la situazione qui.

Per ricapitolare, vediamo i conteggi dei giorni di presenza in questi contesti:

  • la segnalazione dei requisiti per il livello di fiducia 3
  • l’assegnazione dei badge
  • i report degli utenti per settimana, mese, trimestre, anno
  • la segnalazione tramite Data Explorer

Aggiungo solo un paio di considerazioni…

L’unico caso in cui mi viene in mente che questo potrebbe avere un impatto significativo sul comportamento è nelle retrocessioni di livello 3. Se il contatore di presenza del livello 3 è “errato”, qualcuno potrebbe essere retrocesso per non aver raggiunto l’obiettivo del 50% di presenza, quando in realtà l’aveva raggiunto.

Ho un membro che, secondo Data Explorer, ha una presenza del 100% – 290 giorni consecutivi – ma sulla pagina dei requisiti del livello 3 risulta essere solo 97 su 100.

So che è vecchio, ma per curiosità hai risolto/si è risolto magicamente?

Non l’ho capito, sono abbastanza sicuro che non si sia risolto da solo, quindi sarei abbastanza sicuro che ci sia ancora qualcosa che non va. Non ho letto nessun codice né ho approfondito. Come dico, per la maggior parte degli scopi è solo di interesse occasionale e rimanderebbe solo un badge o una promozione di una settimana o giù di lì. Ma il mio commento sulla retrocessione L3 rimane valido.

Mi darebbe fastidio, penso, se avessi avuto qualche responsabilità per una codebase che non sa contare! Potrebbe persino interessarmi indagare, ma non tutti sono fatti così.

Le query che ho fatto potrebbero essere facilmente eseguite su altri forum, non sulla sandbox, suppongo, dato che non è a lunga durata.