Info
If you want to read this article in English, 🇬🇧 you can click here.
Cinque settimane fa avevo dato il via a una serie di articoli ad-hoc per parlarti del nuovo look per una nuova era di The Marvellous Suspender, avevo usato direttamente il blog di Marvellous Codeworks e l’inglese come lingua principale per raggiungere quanti più lettori e utilizzatori possibili (non pensavo avrebbe avuto senso ospitare il tutto, in italiano, anche qui sul mio blog personale). Poche ore fa Google ha dato il via libera alla pubblicazione della v9.0.0 e, a partire da lunedì mattina, 3 agosto, la nuova versione comincerà a essere distribuita sul Chrome Web Store. È l’ultima tappa di questo percorso, e te la racconto volentieri (con 40°C fuori e la voglia di mettere la testa sott’acqua, ma questo è un altro discorso).
TMS 9: cosa c’è di nuovo sotto al cofano
- Backup e ripristino delle sessioni (forse tra le feature più richieste in assoluto, dalla notte dei tempi), in locale o su Google Drive, programmabile o su richiesta, con supporto multi-dispositivo.
- Una pagina di Tab Health che scansiona le schede sospese e ripara da sola il bug dei Tab Groups che si perdono al riavvio di Chrome, Edge e Brave (bug ormai risolto, ma considerato che non si sa mai, le funzioni sono state conservate e rese disponibili su richiesta / necessità).
- Un feed di notizie che pesca direttamente dal blog di Marvellous Codeworks (che rimane l’unico ufficiale del progetto, in inglese, mentre qui sul mio blog personale continuerò a proporre articoli in italiano, talvolta traducendoli direttamente) raggiungibile tramite la barra laterale delle impostazioni dell’estensione.
- Un redesign visivo completo che finalmente fa sembrare tutte le pagine delle impostazioni parte dello stesso prodotto.
- 16 lingue riportate in pari dopo essere rimaste indietro per chissà quanto tempo.
Niente di tutto questo è arrivato per caso, e niente è arrivato da solo.
Le chiacchierate con Rob
Io e Rob non lavoriamo nello stesso ufficio, nello stesso Paese, e nemmeno vicini come fuso orario, per buona parte del tempo. Gran parte delle decisioni su TMS 9 sono state avviate in un gruppo Slack in orari che non avevano senso per nessuno dei due, discutendo se un permesso fosse troppo invasivo, se un’impostazione avesse bisogno di un tooltip, se “Ripristina da backup” dovesse stare sotto Sessioni o sotto Backup. Domande piccole, ma di quelle che decidono se un’estensione sembra curata o semplicemente pubblicata.
The Great-er Tab Discarder (TGD) e The Marvellous Suspender (TMS) sono due progetti distinti, con codebase separate, ma Marvellous Codeworks funziona solo perché siamo in due a tirare nella stessa direzione, a controllarci i punti ciechi a vicenda e, ogni tanto, a dirci l’un l’altro che un’idea fa schifo prima che finisca in produzione. TMS 9 ne guadagna, eccome, e speriamo di poter fare la stessa cosa con TGD, presto.
La community che si è fatta sentire
Nel changelog di TMS 9 ci sono anche due contributor al debutto: @MatrixNeoKozak, che ha rifattorizzato il livello di storage eliminando serializzazioni JSON inutili, e @iGhost, che ha aggiunto l’opzione per mantenere la posizione di riproduzione di YouTube quando una scheda viene sospesa. Una feature piccola, richiesta e costruita da chi il problema lo ha vissuto sul serio (io per esempio non avevo mai avuto necessità di questa caratteristica). È esattamente così che dovrebbe crescere un progetto open source: non solo bug report, ma pull request di persone che hanno deciso di sistemare la cosa di persona.
In più, sedici lingue hanno ricevuto un passaggio di traduzione assistita da AI (qui Claude ha avuto carta bianca) per colmare buchi che si trascinavano da diverse versioni. Non sono perfette: se usi TMS nella tua lingua e qualcosa suona storto, Crowdin è aperto, e le correzioni dei madrelingua sono esattamente ciò che serve per chiudere il cerchio.
Segnalare un problema senza account GitHub
Per anni l’unico modo per dirci che qualcosa non andava era aprire una segnalazione su GitHub, il che significava avere un account GitHub, spesso visto come un muro che molti semplicemente non erano disposti a scavalcare solo per segnalare un bug. I problemi ci arrivavano di riflesso, nelle recensioni, nei thread di Reddit, mai dove potevamo davvero intervenire.
marvellouscode.works/tms/report proverà a risolvere la cosa. Si compila un form, senza registrazione, senza account, e viene aperta in automatico una issue GitHub corretta, etichettata bene, con i campi che ci servono davvero per riprodurre il problema. Chi segnala riceve un link per seguire lo stato, noi riceviamo un report vero e utilizzabile invece di una recensione da una stella che dice solo “non funziona più”.
E a proposito: leggiamo tutto, comprese le recensioni lasciate direttamente sul Chrome Web Store. Stelline, recensioni scritte, richieste di supporto in quel piccolo box, tutto viene letto. Teniamo d’occhio in particolare le segnalazioni GitHub perché è lì che tracciamo e agiamo davvero, verificando comportamenti strani, seguendo le richieste, chiudendo le cose una volta risolte, ma una recensione lasciata sullo Store non è comunque gridare nel vuoto.
Attenzione
Il form di segnalazione via web è sperimentale. Esiste per abbassare la barriera per chi non vuole creare un account GitHub solo per dirci che qualcosa è rotto, non per sostituire GitHub del tutto. Se mai venisse abusato, spam, rumore in malafede, qualunque forma prenda, sarà la prima cosa che disattiveremo, e le segnalazioni torneranno a passare solo da account GitHub che aprono segnalazioni a proprio nome, punto.
Un sito di documentazione costruito da zero
Il vecchio wiki di TMS viveva sul repo GitHub, mezzo incompleto, datato in alcuni punti, e onestamente non il tipo di posto dove mandare qualcuno se volevate che capisse davvero l’estensione. Ora è disattivato.
Al suo posto: kb.marvellouscode.works/docs, popolato da zero sfruttando Docusaurus come base, pagina per pagina, specialmente per TMS 9 (anche se in realtà pensato per tutti i lavori che trovano spazio sotto l’ala di Marvellous Codeworks). Ogni pagina delle impostazioni ha il suo articolo: Impostazioni, Sessioni, Backup, Tab Health, Azioni Rapide, Scorciatoie da Tastiera, Notizie, Informazioni, che spiega cosa fa davvero ogni pulsante, non solo come si chiama. C’è una pagina dedicata ai permessi che spiega perché TMS chiede quello che chiede e cosa è cambiato con lo scope Drive più ristretto in questa release. FAQ incluse. Niente nascosto in una pagina wiki stantia che nessuno aggiornava dal 2019.
L’abbiamo costruito pagina per pagina, decidendo cosa aveva davvero bisogno di essere spiegato e cosa era abbastanza ovvio da saltare. Il dominio marvellouscode.works era registrato e fermo da quasi un anno: ci sono volute settimane di riorganizzazione e riscrittura per trasformarlo nel sito, nella documentazione e nel flusso di segnalazione che puoi sfruttare oggi.
Cambia tutto (ma non cambia niente)
TMS 9 ha un aspetto diverso, è organizzato diversamente, permette di effettuare il backup diversamente, e parla più lingue di prima. Questa è la parte “cambia tutto”, ed è costata una riscrittura completa delle pagine di impostazioni, un nuovo sistema di backup e parecchie scambi in chat.
La parte “non cambia niente” è più semplice: TMS esiste ancora per prendere le schede che il browser accumula in memoria e metterle a dormire finché non servono davvero. Era vero il giorno in cui The Great Suspender è stato salvato, lo è stato durante la riscrittura per Manifest V3, e lo è ancora nella v9.0.0. Ogni feature di questa release, Tab Health, backup, redesign, esiste per proteggere quel singolo compito, non per sostituirlo.
Non piacerà a tutti, e va bene così
Siamo perfettamente consapevoli che non tutti saranno entusiasti del nuovo look. Il cambiamento raramente è visto di buon occhio, e un redesign di queste dimensioni – nuovi font, nuovi colori, nuovo layout su ogni singola pagina – è esattamente il tipo di cosa per cui alcuni avranno bisogno di tempo per abituarsi, o semplicemente non gli piacerà affatto. Fa parte della crescita di un progetto, fa parte del gioco.
Restiamo convinti che la “ritinteggiatura” fosse necessaria, e pensiamo sia solo il primo passo importante. Ci sono altre idee in cantiere, e ci sono già parecchi problemi e richieste di feature su GitHub che intendiamo affrontare per continuare a spingere TMS avanti. Ascoltiamo, prendiamo sul serio feedback e critiche costruttive: è tutto il senso dell’open source, in fondo.
Cosa succede ora
La revisione di Google è conclusa, il changelog è definitivo, e il rilascio parte lunedì mattina, 3 agosto. Gli aggiornamenti sul Chrome Web Store vengono distribuiti gradualmente e non a tutti insieme, quindi non allarmarti se non vedi la v9.0.0 nel secondo esatto in cui andrai a controllare: arriverà entro la normale finestra di aggiornamento. Questa serie di articoli si chiude ufficialmente qui. Grazie per averla seguita fino in fondo, per aver testato i feature branch, per le issue aperte, per le pull request, e per la pazienza.
Ci vediamo dall’altra parte, nella v9.0.0. L’area commenti è a tua disposizione, come sempre, per domande o per raccontarmi la tua personale esperienza con TMS 9.
#KeepItSimple (e buone vacanze!)