Ieri ho fatto un miniacquisto all’Esselunga, visto che ormai siamo in fase 3, e sono andato a pagare alle casse automatiche. Qualcosa nel tempo l’ho imparato: quando seleziono il pagamento con Satispay, la schermata rimane stolidamente immobile e devo partire dal principio che il sistema stia aspettando che io tiri fuori il telefono e invii il pagamento. Diciamo che questo è un classico problema di interfaccia utente.
Quello che mi è successo stavolta è diverso. Ho inquadrato il codice a barre della tessera Fìdaty (sempre sul telefono), e l’ho inquadrato una seconda volta visto che non era apparentemente successo nulla. Subito è comparso un messaggio di errore: “Tessera passata due volte” e un pulsantone “Assistenza” che ho anche cliccato senza alcun risultato. Come capita spesso, l’unico modo per farmi notare è stato sbracciarmi. Ora, che l’interfaccia utente sia malfatta e non indichi che lo stato del sistema è mutato è un fatto. Ma il vero problema è un altro. Pensateci un attimo: qual è il problema pratico se la stessa carta fedeltà viene passata due, tre, quarantadue volte? Non stiamo facendo un pagamento. Quello che dovrebbe succedere in pratica è che il campo “carta_fedelta” può avere il valore NULL oppure un numero di tessera; il default è NULL e ogni volta che passi una tessera il valore viene sovrascritto. Matematicamente, l’inserzione di un numero di tessera dovrebbe insomma essere idempotente: in formule, A²=A. E invece nulla. Ma chi è che ha scritto quel codice?