C’è un principio molto noto dell’informatica che spesso viene dimenticato dagli sviluppatori tutti. Tale principio recita più o meno così: se una cosa è a 3 schermate di distanza allora non esiste. È un principio basilare nell’usabilità del computer per l’utente medio: se una cosa necessita di più di 3-4 click e si trova oltre i 3 passaggi allora, indipendentemente da quanto sia importante, per l’utente finale, non esiste.
Al riguardo ci sono un po’ di considerazioni da fare.
Perché viene dimenticata?
Il motivo è semplice: i programmi vengono scritti dai programmatori. Non è un gioco di parole, è la verità. Ai programmatori piace la soluzione arguta, l’opzione contorta, l’arzighigolo programmativo. Non possono farci nulla, è più forte di loro. Non di rado quando parli dell’usabilità d’uso di un programma con un programmatore ricevi come risposta cose tipo “vabbè è semplice. Basta che aggiungi /percorso/assurdo nella variabile ENV e avvii il programma con nomeprogramma -opzione1 -opzione2 -opzionen=boh e ottieni quello che vuoi!”. E tutto ciò è normale: se non gli piacessero le cose complicate non sarebbero programmatori.
Tutti se le dimenticano?
No. Ovviamente in molti programmi ci sono persone incaricate appositamente di frenare l’indole complicatrice degli sviluppatori. Ma allora perché troviamo ancora questi grossolani errori? Alcune volte per disattenzione e altrettante per malafede. Un esempio? Le impostazioni della privacy di Facebook. Quanti click servono per arrivarci? Sono tre per visualizzarle e 4 + n per modificarle a piacimento, tutto questo attraversando 2 schermate e un menù piuttosto dimenticato.
Solo malafede?
No. A volte nascondere una possibilità oltre la soglia dei 3-4 passaggi è una “features” che permette allo sviluppatore di evitare la scrittura di complicati meccanismi di blocco, criptaggio, ecc, contando sui grandi numeri.
Un esempio è dato da un applicazione Android per impostare lo sfondo del terminale. L’applicazione da accesso a una sterminata galleria di sfondi ma, ovviamente, non da la possibilità diretta di scaricare tali sfondi. Il motivo è che, giustamente, lo sviluppatore vuole che tu apra il programma ogni volta che vuoi cambiare sfondo: se te li facesse scaricare facilmente l’utente se ne scaricherebbe 30 nel giro di due minuti e poi si dimenticherebbe dell’applicazione!
Tuttavia per impostare uno sfondo è necessario scaricare l’immagine. Come fa il programma? La scarica e la imposta. Quando cambiate sfondo, cancella la precedente e la sostituisce con la nuova.
Ora capirete che è ancora teoricamente possibile scaricarsi 30 sfondi e buttare l’applicazione, basta copiarsi in una cartella l’immagine scaricata ogni volta che il programma la scarica. Ma quanti passaggi necessita? Troppi. Non tanti, ma troppi, più di 3-4. E così statisticamente il 99% delle persone utilizzerà il programma nel modo voluto dallo sviluppatore nonostante sia teoricamente fare diversamente.
Altri esempi?
Google. Fate una ricerca su Google e notate a che pagina desistete dalla ricerca. Sono quasi sicuro che smettete di cercare entro la 3° 4° pagina, se arrivate a 6 siete parecchio insistenti, a 10 significa che siete disperati (come io quando cerco tutorial su roba strana).
Se il vostro blog cade oltre la 4° pagina non esistete. È come se fosse alla pagina 100 mila.
Quindi?
Quindi pensateci. Tutto qui. Se programmate qualsiasi cosa che non sia destinata ad altri programmatori, fate caso a non collocare nulla oltre la soglia dei 4 click/schermate. I vostri utenti ne gioveranno e voi pure.
Mmh…la memoria a breve termine però ha una capienza di 7±2 chunks, quindi 5 passaggi dovrebbero starci no? Questa regola non la conoscevo.
Non è questione di memoria ma di pigrizia. 🙂
Gli utenti se non trovano qualcosa dopo due colpi vanno nel panico, pensano che sia impossibile e lasciano perdere (o vanno su un forum a chiedere). L’esempio di Google è il più emblematico e corredato da uno studio scientifico serio al riguardo. 🙂
Ah ok ora mi è più chiaro grazie 🙂 Terrò a mente questa regola in futuro 🙂
un ottimo consiglio per l’usabilità 🙂
Non sapevo esistesse formalmente come “legge” anche se una cosa simile ho cercato sempre di tenerla a mente.
Concordo sulla questione GUI disegnata dagli sviluppatori, per me è un grosso problema del FLOSS 🙂
Le GUI devono essere fatte dai Designer! 🙂
In ambito informatico è prassi chiamare “legge” qualunque cosa xD Ma questa volta condivido. Quella dell’usabilità è una cosa talmente importante che solo chiamarla “legge” può rendere l’idea. 😀
Io sono un programmatore ma ammetto che in quanto a GUI faccio schifo. Infatti faccio altre cose e lascio questo compito a chi ha più esperienza di me. 😉
Un esempio: unity. Per aprire il menù delle applicazioni servono… uhmm… no ok ho perso il conto dei passaggi xD
Ottimo esempio 😀 Uso Unity con soddisfazione e profitto ma non ho mai usato il menù applicazioni (come non l’ho mai usato su nessun desktop manager, ma almeno negli altri erano usabili).