Progettare Mole per restare discreto
Ho passato un giorno a ridisegnare mole.fit, la pagina che stai leggendo. Quando ne ho scritto ho messo una riga: silenzioso, affidabile, non ti sta tra i piedi, la stessa filosofia dell’app. È il criterio che guida il design di Mole dal primo script di shell. Ecco cosa significa in pratica.
La discrezione è un requisito
Per uno strumento, essere discreto significa rispettare regole precise. Un pannello è completo oppure nascosto: niente schede disegnate a metà o risultati che compaiono pezzo per pezzo. La scansione finisce prima che l'interfaccia passi ai risultati. Nelle attese brevi non compare alcun indicatore; in quelle più lunghe c'è un solo stato di lavoro, senza distrazioni. La schermata finale riserva lo spazio prima che arrivino i dati, così la finestra non cambia dimensioni.
Sono vincoli tecnici, non decorazioni. Richiedono stati dell'operazione espliciti, indicatori di caricamento ritardati, dimensioni stabili dei contenitori e percorsi di annullamento. Senza quel meccanismo, aggiungere una transizione anima solo l’incertezza. La calma che l’utente vede nasce dal rendere prevedibile il lavoro asincrono in background.
Il punto di tutto questo è uno strumento che non devi stare a guardare. Gli chiedi di fare qualcosa, lo fa e ti restituisce lo schermo. Un software che lampeggia e si riorganizza chiede un’attenzione che non si è guadagnato, e uno strumento di manutenzione non se n’è guadagnata nessuna: dovrebbe sembrare più un elettrodomestico ben fatto che un’app da controllare di continuo.
Mostra il lavoro prima di toccare qualsiasi cosa
La decisione di design più importante in Mole è mostrare il piano di eliminazione con le dimensioni e aspettare la conferma. Le rimozioni ordinarie di file utente vanno nel Cestino, dove restano recuperabili, e le radici di navigazione come la cartella home non hanno opzione di eliminazione. L’interfaccia stabilisce l’intento, ma il livello di servizio valida comunque ogni percorso al momento dell’esecuzione. Una sola schermata di avviso non è un confine di sicurezza.
Qui la sicurezza fa parte del funzionamento dell'app, non è un avviso aggiunto alla fine. La scansione non può eliminare. La conferma crea un piano delimitato. L’esecuzione ricontrolla identità e percorsi protetti, e il risultato riporta separatamente elementi rimossi, saltati e falliti. La revisione prima dell’azione è la metà visibile; la validazione indipendente è la metà invisibile.
Perché un cleaner ha un sistema solare
Un'app così avrebbe potuto essere un’icona nella barra dei menu con un pulsante di pulizia, e avrebbe venduto lo stesso. Io gli ho dato cinque pianeti. Nel mondo c’è già troppo software generato e usa e getta, e se dovevo metterci lo sforzo volevo un risultato con cui fosse piacevole stare.
Ogni funzione è un pianeta il cui carattere corrisponde al lavoro: Pulizia è la Terra, App è Marte, Ottimizza è Mercurio, Analizza è Giove e Stato è il Sole. Devono restare un unico sistema, non cinque decorazioni. Le texture arrivano da immagini astronomiche, con la Terra basata sulla Blue Marble della NASA; la direzione di rotazione e il ritmo relativo seguono i corpi reali, e ogni pianeta è disegnato dallo stesso codice a poche dimensioni fisse. La bellezza in uno strumento va bene finché è costruita come il resto dello strumento. La storia più lunga di come sono nati i pianeti è un pezzo a parte.
Progettare significa anche rinunciare
Gran parte del lavoro di design in Mole è sottrazione. L’app è solo scura, di proposito. Il pannello della barra dei menu fluttua sullo sfondo come un HUD, e il vetro scuro riduce il riverbero, così non c’è una modalità chiara da mantenere né un interruttore di tema su cui ragionare. C’è una sola scala tipografica per tutta l’app e una per il sito, e nessun elemento riceve una dimensione o un colore una tantum: ogni valore arriva da un token condiviso, ed è per questo che le pagine si leggono equilibrate senza che niente urli.
E tante buone funzioni non escono mai. Un Mac ha molti trucchi carini che Mole potrebbe fare e non dovrebbe, perché uno strumento a cui affidi l’eliminazione di file deve restare abbastanza piccolo da starci in testa. Dire no a una buona idea è più difficile che aggiungerla, ed è gran parte di ciò che tiene l’app calma. Ho scritto a parte su decidere cosa non costruire.
La stessa attenzione vale per l’accessibilità. La calma visiva non basta se il focus salta, i controlli hanno etichette vaghe o un’animazione nasconde lo stato a VoiceOver. Ordine di lettura, accesso da tastiera, movimento ridotto e focus stabile fanno parte della stessa promessa: l’interfaccia deve consumare quanta meno attenzione dell’utente il compito consente.
Questa regola vale anche per i pianeti. Quando è attiva l'opzione Riduci movimento, la rotazione decorativa si ferma e i cambi di stato evitano il movimento spaziale. Il pianeta può portare identità senza richiedere un'animazione, e nessuna operazione dipende dal vederlo muovere. La discrezione non è uno stile visivo fisso: significa anche rispettare il livello di movimento scelto dall'utente.
Una filosofia, tre superfici
Mole è uno strumento da riga di comando, un’app per Mac e questo sito, e il criterio è lo stesso per tutti e tre. La CLI scava a fondo ma resta delimitata e sicura. L’app rende quel lavoro visibile senza renderlo rumoroso. Il sito cerca di dirti cosa fa l’app e poi di togliersi di mezzo, ed è per questo che il redesign ha preso un giorno e non un mese: c’era poco da aggiungere, solo cose da togliere.
Questo è tutto: un custode discreto, niente di più. Per il tuo Mac, o per quello di un amico. Che il tuo tempo resti tuo.