Ciao, e benvenuto nella nona puntata della decima stagione. Finora abbiamo parlato di server come di macchine fisiche: computer da comprare, accendere, sorvegliare. Oggi raccontiamo la trasformazione che ha cambiato radicalmente cosa significa avere un server, fino a farlo quasi scomparire dalla vista: l'arrivo della nuvola, e poi l'idea affascinante e paradossale del server che sparisce. È forse il cambiamento più profondo nella vita quotidiana del backendista degli ultimi vent'anni.
Partiamo da com'era il mondo prima, perché il contrasto è enorme. Un tempo, per mettere online un'applicazione, dovevi possedere fisicamente dei server: computer veri, che compravi a caro prezzo, sistemavi in una stanza, collegavi alla rete, e dovevi accudire come creature delicate. Se ti serviva più potenza, ordinavi altre macchine e aspettavi settimane che arrivassero e venissero installate. Se una si guastava di notte, qualcuno doveva alzarsi e andare a sistemarla fisicamente. Gestire i server era un lavoro pesante, costoso e lento, fatto di ferro, cavi e stanze refrigerate. Era una barriera enorme, soprattutto per chi era piccolo e non aveva capitali.
Poi, a partire dalla metà degli anni Duemila, arrivò un'idea che avrebbe cambiato tutto: e se, invece di comprare e possedere i server, li potessi affittare da qualcun altro, prendendone quanti ne servono, quando servono, e pagando solo per ciò che usi? Grandi aziende cominciarono a costruire enormi centri di calcolo e ad affittarne la potenza a chiunque, attraverso la rete. Questa è la nuvola: un'immensa riserva di potenza di calcolo, sempre disponibile, da cui attingi ciò che ti serve con pochi comandi, senza possedere nulla fisicamente. Come passare dal possedere un generatore elettrico all'attaccare la spina alla presa di corrente.
L'impatto di questa idea sul backend fu rivoluzionario, e vale la pena coglierne la portata. Improvvisamente, ottenere un nuovo server non richiedeva più settimane e denaro, ma pochi secondi e pochi clic. Se il tuo sito diventava popolare all'improvviso, potevi aggiungere potenza all'istante, e toglierla quando il picco passava, pagando solo per l'uso reale. Chiunque, anche una singola persona nella sua cameretta, poteva avere accesso alla stessa potenza di calcolo dei colossi, senza investimenti iniziali. Riprendo un tema della sesta stagione: la nuvola democratizzò l'accesso all'infrastruttura, abbattendo una delle ultime grandi barriere del settore.
Ma la nuvola aprì anche la strada a un'idea ancora più radicale, quasi filosofica, che è il cuore di questa puntata: e se potessimo dimenticarci del tutto dei server, e pensare solo al nostro codice? Nacque così un modello in cui tu scrivi semplicemente la logica che vuoi eseguire, la affidi alla nuvola, e non ti preoccupi più affatto di quali e quanti server la faranno girare. È la nuvola stessa che, dietro le quinte, trova le macchine, le accende quando serve la tua logica, e le spegne quando ha finito, in modo del tutto invisibile a te. Tu pensi solo a cosa deve fare il codice, non a dove girerà.
Questo modello ha un nome un po' ingannevole, che significa, letteralmente, senza server, e va chiarito subito, perché è un paradosso solo apparente. Ovviamente i server ci sono ancora, sotto: il codice deve pur girare da qualche parte. Il senza server non significa che i server non esistono, ma che tu non devi più pensarci, non li vedi, non li gestisci, sono diventati un dettaglio invisibile di cui si occupa qualcun altro. È come dire senza pensieri di server. Per lo sviluppatore, è come se i server fossero scomparsi, lasciando solo la pura logica da scrivere. Un sogno antico del backend che si avvicinava.
Accanto a questa strada, ne crebbe un'altra, complementare, che merita una menzione per capire il backend di oggi: quella degli strumenti per impacchettare le applicazioni in scatole standard e per coordinarne moltissime. Nacque un modo di mettere un'applicazione, con tutto ciò che le serve per funzionare, dentro una scatola sigillata e uniforme, che gira allo stesso modo ovunque, sul tuo computer come sulla nuvola. E poi nacquero strumenti sofisticati per orchestrare, cioè dirigere, centinaia o migliaia di queste scatole, decidendo automaticamente dove eseguirle, come sostituirle se si guastano, come farle crescere. Fu la risposta a come gestire con ordine gli sciami di servizi di cui parlavamo.
Voglio chiudere riflettendo su come tutto questo abbia cambiato il mestiere, perché è una trasformazione profonda anche nell'identità del backendista. Un tempo, chi gestiva i server e chi scriveva il codice erano mondi separati. Con la nuvola, questi due mondi si sono fusi: gestire l'infrastruttura è diventato, esso stesso, una forma di scrittura di codice, in cui descrivi con istruzioni precise quali server vuoi e come devono comportarsi, e la nuvola li crea di conseguenza. L'infrastruttura è diventata codice. Questo ha unito competenze prima distanti e ha creato figure nuove, a cavallo tra lo sviluppo e la gestione dei sistemi, che sono oggi tra le più richieste, come accennavamo nella stagione sul cloud.
Per oggi ci fermiamo qui. La nuvola ha trasformato i server da macchine da possedere a potenza da affittare all'istante, democratizzando l'accesso all'infrastruttura. Poi il modello senza server ha spinto oltre: scrivi solo la logica, e dei server si occupa invisibilmente la nuvola, anche se sotto esistono ancora. Accanto, gli strumenti per impacchettare le applicazioni in scatole uniformi e orchestrarle a migliaia. E l'infrastruttura è diventata codice, fondendo mondi un tempo separati. Nella prossima e ultima puntata tiriamo le somme del backend e dell'intero viaggio. Nelle note trovi qualche spunto. Se ti è utile, condividila. Grazie per l'ascolto, e ci sentiamo alla prossima.