Ops, qualcosa è andato storto

Una “nuova” tendenza (in realtà c’è da molti anni) in informatica è rinunciare completamente a ogni forma di error handling sensato, di solito perché non si ha idea di che errori possono uscire dalle funzioni invocate, librerie importate e codice chiamato; si preferisce invece sbattere in faccia all’utente un messaggio genericissimo e inutile che dice, ad esempio, “Ops, qualcosa è andato storto :(” con tanto di faccina per sopperire alla mancanza di informazioni tecniche utili a sanare l’errore.

Un po’ come racchiudere l’intero programma in un try-catch gigante. Che non è detto che non sia proprio quello che si fa.
Se non altro è meglio che crashare brutalmente e perdere tutto il lavoro non salvato.

In realtà l’errore inutile e il crash devastante non sono mutualmente esclusivi, quindi a volte c’è il danno e la beffa, ma stiamo divagando…

È invece ben noto che i messaggi d’errore di Windows siano, in linea generale, abbastanza specifici: anche nei casi in cui il testo dice poco, almeno c’è un codice che ha un significato preciso. In linea generale, ho detto: ci sono anche dei messaggi generici e inutili che non danno alcun aiuto nel capire il problema, ad esempio tutti quelli inerenti la condivisione dei file.

Tutto ciò era valido fino a Windows 7, o forse 8; sembra che con 10 Microsoft stia cercando di distruggere il delicato lavoro di anni, perché l’error handling è sempre una parte lunga e complicata di ogni progetto software se si vuole farla in maniera sensata, per rimpiazzare tutto con messaggi inutili ma più user-friendly.
Anche se l’utente medio non li legge mai e se c’è un errore va nel panico comunque, faccina o no.
L’unico risultato è trasformare la vita del supporto tecnico in un inferno, come se già non lo fosse. Anche se mediamente il supporto tecnico di qualsiasi cosa dice solo di spegnere e riaccendere, disinstallare e reinstallare e se ancora non va «È colpa tua, arrivederci» e chiude la telefonata, messaggio d’errore sensato o no…

Insomma, di recente ho acceso il netbook con Windows 10 che non accendevo da 6 mesi, accendo il wifi, vede la rete, non si connette e la ignora completamente, penso che non sia memorizzata, ci clicco sopra, clicco “connetti”, sta 40 minuti a macinare con un messaggio ridicolo come “Sto eseguendo l’esegesi stocastica dei parametri trascendentali di rete”, poi “Ops, NON RIESCO A CONNETTERMI”.

Ho provato a spegnere e riaccendere il wifi, col risultato che Windows non riusciva più a vedere alcuna rete, indipendentemente dal fatto che fosse acceso o spento; eppure la scheda wifi è Intel, i driver non dovrebbero fare così schifo…

Dopo aver riavviato per spurgarlo, ho cercato su internet dove diamine è stato occultato l’elenco delle reti salvate, perché già su 7 era abbastanza nascosto ed essendo più o meno la cosa più utile del wifi dopo il tasto on\off e l’elenco delle reti disponibili, va nascosto in qualche luogo improbabile, no?

Una volta trovato, ho cancellato la rete, mi sono riconnesso e ho aspettato che Windows mi chiedesse la password, che in questi ultimi 6 mesi avevo cambiato e finalmente è andato: forse mi ricorderò male, ma Windows 7 chiedeva la password, se riteneva di aver fallito la connessione perché quella memorizzata era sbagliata?

Poi ho scaricato 200 PB di aggiornamenti, cioè non si sono scaricati, Windows mi ha solo detto con tono di sfida “Ho fallito. HO FALLITO, LURIDA BESTIA.”. Immagino che in realtà non abbia fallito, perché quando ho spento il computer è stato un bel po’ con la schermata “Preparazione di Windows (come se fosse una pietanza elaborata)”, suppongo che fosse il suo modo per dirmi che stava installando gli aggiornamenti che non è riuscito a scaricare (!?). Dopo 3 riavvii ha scaricato altri aggiornamenti, li ha installati e al successivo riavvio non ha detto nulla, quindi sarà andato tutto bene, no? No, se vado nell’elenco degli aggiornamenti c’è scritto che sono tutti falliti e non c’è altro da aggiornare, quindi non ci sto più capendo nulla.

Aggiornare Arch (e qualsiasi altra distro Linux, oserei dire) è molto più deterministico: si sa quali pacchetti vengono aggiornati, dimensione totale dei file da scaricare, a che punto è, a che velocità va, percentuale dell’installazione di ogni singolo pacchetto e in caso di errore c’è chiaramente scritto quale grave problema ha prevenuto il completamento della transazione.

Quindi?

Windows è generalmente visto come più user-friendly di Linux, ma essere user-friendly si traduce forse nel non funzionare in maniera totalmente casuale, senza saper indicare cosa è andato storto, cercando di non dirlo mai all’utente, e mettere le faccine nei messaggi d’errore? Ovvio che se all’utente medio si sbatte in faccia il messaggio “Errore fatale tangenziale con scappellamento a destra F42823908U289BA429090R: il controller del servizio dinamico di arresto della periferica RDP tramite RTP del PNP è terminato in maniera inaspettata, premere OK per rigenerare il criterio di meccanizzazione anfiprotica di sistema, premere Annulla per riprovare” ne sa quanto prima, ma 40 minuti di “esegesti stocastica” e poi “Ops, ho fallito” per 3 secondi in un angolino sono un insulto alla ragione umana, l’utente se ne accorge abbastanza se ha dato il comando di connessione al wifi e dopo 40 minuti non è ancora successo nulla di tangibile…

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...