Linear è così veloce perché non aspetta che il server gli dia il permesso

Linear è così veloce perché non aspetta che il server gli dia il permesso

Quanto tempo perdete ogni giorno a fissare uno spinner che gira mentre aspettate che un foglio Google o un Jira decidano finalmente di caricare i dati? Se la risposta è «più di quanto dovrei ammettere», allora dovete dare un’occhiata a quello che sta succedendo nel mondo di Linear.

Recentemente è uscito un breakdown tecnico che spiega perché questa app sembra avere dei superpoteri rispetto alla media delle piattaforme SaaS che oggi chiamiamo «moderno» (ma che in realtà sono solo wrapper pesanti di JavaScript). Il segreto non è un miracolo divino, ma un’architettura che rimpicciolisce la distanza tra il vostro click e l’azione compiuta.

Il pezzo forte è l’approccio «local-first sync». Invece di fare una chiamata al server ogni volta che spostate un task (con la latenza che ti fa venire voglia di andare a farti un caffè nel frattempo), l’app sincronizza i dati in background. I dati sono già lì, sul vostro disco, pronti all’uso. Se la connessione cade, non succede nulla: continuiate a smanettare e quando il Wi-Fi torna, il sync si occupa del resto. A questo si aggiunge l’uso di MobX per la gestione degli osservabili, che permette aggiornamenti della UI istantanei e chirurgici, e un design costruito attorno alla tastiera che evita quel tripudio di click frustranti tipico delle interfacce pensate solo per chi usa il mouse come un principiante.

Da smanettone, trovo questa cosa decisamente stimolante. Spesso ci perdiamo in setup infiniti di Docker, Kubernetes e microservizi complicatissimi, dimenticandoci che l’esperienza utente finale dipende da quanto velocemente l’interfaccia risponde. È un po’ come costruire una CNC ultra-precisa ma con i motori passo-passo che saltano i passi: non importa quanto sia figo il codice G-code, se la macchina non è reattiva, non serve a nulla.

Per noi che amiamo mettere le mani in pasta, questo è un promemoria: la vera innovazione spesso non sta nell’aggiungere una funzione AI inutile che scrive i commenti al posto tuo, ma nel risolvere i problemi fondamentali di latenza e fluidità. Costruire software che sia «reattivo» come un hardware ben calibrato è la vera sfida.

C’è un piccolo rischio, però: questo approccio local-first può diventare un incubo di gestione dei conflitti se non gestito con una logica di sincronizzazione impeccabile. E poi, ovviamente, c’è sempre il rischio di trovarsi intrappolati in un ecosistema troppo ottimizzato che rende difficile migrare i propri dati altrove. Ma ehi, se la velocità è questa, forse sono disposto a perdonare un po’ di vendor lock-in. Almeno non devo aspettare tre secondi per spostare una card da «In Progress» a «Done».

Source: How's Linear so fast? A technical breakdown

Lascia un commento