Ciao, e benvenuto nella prima puntata della settima stagione di questo podcast. Nelle stagioni precedenti abbiamo parlato molto del mestiere: la mentalità, la carriera, i colloqui, le specializzazioni. Questa stagione è diversa, ed è quella che molti aspettavano: è un piccolo manuale tecnico. Mettiamo le mani su come si costruisce davvero un'applicazione web, strato per strato, dal davanti fino al dietro. Non impareremo a programmare in dieci puntate, chiaro, ma costruiremo la mappa mentale di come tutti i pezzi si incastrano.
E la prima cosa da avere ben chiara, prima di scrivere una sola riga di codice, è come funziona il Web. Perché tutto ciò che costruiremo poggia su questo, e chi non ha questo quadro in testa lavora alla cieca. Oggi quindi niente codice: costruiamo il modello mentale di cosa succede, davvero, quando usi il Web.
Partiamo dalla scena più comune del mondo: apri il browser, scrivi un indirizzo, e appare una pagina. Cosa è successo, in mezzo? Dietro quella semplicità c'è una conversazione tra due protagonisti, ed è la cosa più importante di tutta la puntata capire chi sono. Da una parte c'è il cliente, che nella maggior parte dei casi è il tuo browser, il programma con cui navighi. Dall'altra c'è il server, un computer, da qualche parte nel mondo, sempre acceso, che custodisce il sito e aspetta di essere interpellato.
Il meccanismo è una domanda e una risposta. Il tuo browser, il cliente, manda una richiesta al server: "per favore, dammi la pagina che si trova a questo indirizzo". Il server riceve la richiesta, la elabora, e manda indietro una risposta: il contenuto della pagina. Il browser riceve quel contenuto e lo trasforma in ciò che vedi sullo schermo. Tutto il Web, nella sua sostanza, è questo scambio ripetuto miliardi di volte: qualcuno chiede, qualcuno risponde. Richiesta e risposta: tienilo stretto, perché è il battito del cuore di tutto.
Questa conversazione avviene seguendo delle regole precise, un linguaggio comune che cliente e server parlano per capirsi. È il protocollo del Web, che di solito senti chiamare con la sigla di quattro lettere che vedi all'inizio degli indirizzi. Non devi conoscerne i dettagli adesso; ti basta sapere che esiste un insieme di regole condivise che permette a browser costruiti da aziende diverse di parlare con server costruiti da altri ancora, in tutto il mondo, e capirsi perfettamente. È l'accordo comune su cui si regge l'intera baracca.
Un concetto che confonde all'inizio e che vale la pena chiarire subito: l'indirizzo che scrivi non è la pagina, è dove trovare la pagina. È come un indirizzo di casa: non è la casa, è l'informazione che permette di raggiungerla. Quando scrivi un indirizzo web, stai dicendo al browser dove andare a bussare. E dietro le quinte c'è tutto un sistema che traduce quel nome leggibile, fatto di parole, nella posizione reale del server nel mondo, un po' come una rubrica traduce un nome in un numero di telefono.
Adesso una distinzione fondamentale, che sarà la struttura portante di tutta la stagione: cosa succede da che parte. Ci sono cose che avvengono sul cliente, cioè nel tuo browser, sul tuo dispositivo: è lì che la pagina viene disegnata e diventa interattiva. E ci sono cose che avvengono sul server, lontano da te: è lì che si custodiscono i dati, si fanno i calcoli importanti, si decide cosa mandare. Gran parte del lavoro dello sviluppatore web consiste nel decidere cosa mettere di qua e cosa di là. Frontend è la parola per il lato cliente; backend per il lato server. Questa stagione, non a caso, li attraversa in ordine: prima il davanti, poi il dietro.
Facciamo un esempio concreto per fissare le idee. Quando apri il tuo social preferito, il browser chiede al server la pagina. Il server, prima di rispondere, va a prendere i tuoi messaggi da un archivio, li mette insieme, e manda indietro il risultato. Il browser riceve quel contenuto e lo trasforma nella pagina colorata e cliccabile che vedi. Quando premi un pulsante, spesso parte una nuova richiesta al server, che risponde con nuovi dati. Quel gioco continuo di domande e risposte, tra il tuo browser e i server lontani, è la vita di ogni applicazione web che usi ogni giorno.
Per oggi ci fermiamo qui, senza aver scritto una riga, ma con in testa la mappa che regge tutto il resto. Il Web è una conversazione fatta di richieste e risposte tra un cliente, di solito il browser, e un server; avviene seguendo un protocollo comune; l'indirizzo dice dove trovare le cose, non è la cosa; e il lavoro si divide tra il frontend, il lato del browser, e il backend, il lato del server. Nelle prossime puntate scenderemo dentro ciascuno di questi pezzi, cominciando dal primo mattone che il browser riceve: il linguaggio della struttura. Nelle note trovi qualche spunto. Se ti è utile, condividila. Grazie per l'ascolto, e ci sentiamo alla prossima.