Ciao ragazzi, bentornati sul blog! Oggi voglio parlare di una questione che chi lavora nell’informatica conosce fin troppo bene: il fatto che nessuno, ma proprio nessuno, capisca davvero che lavoro facciamo. E non sto parlando solo dei nonni o dei genitori, ma anche di persone colte, laureate, che dovrebbero avere almeno un’idea di cosa significhi “programmare”. E invece no. Appena dici “sono un programmatore”, si apre il sipario sul grande spettacolo dei fraintendimenti.
“Ah, quindi aggiusti i computer?”
La scena è sempre la stessa. Persona X chiede: “Che lavoro fai?” e tu, con orgoglio, rispondi “sono un ingegnere informatico, un programmatore”. E loro, con aria soddisfatta: “Ah, quindi aggiusti i computer?”. Ecco, partiamo da un presupposto chiaro: programmare non significa fare il tecnico informatico. Io non configuro modem, non riparo stampanti, non so perché il tuo PC emetta quel rumore strano. Io scrivo codice. Ma per molti, “informatica” è una parola ombrello che include tutto: dall’hacker russo al tecnico che installa Windows.
L’immagine del programmatore nel mondo esterno
Per il mondo esterno, il programmatore è una creatura misteriosa. Alcuni lo immaginano come l’hacker con la felpa e il cappuccio che di notte penetra nei sistemi governativi. Altri pensano che sia il tuttofare digitale capace di aggiustare PC, router, lavatrici smart e televisori. E poi c’è la versione più popolare: il nerd alimentato da pizza e caffeina, che digita codici incomprensibili come nei film americani.
La verità, invece, è molto meno cinematografica. Passiamo ore davanti a uno schermo a discutere con un errore che alla fine si rivela essere… una virgola dimenticata.
“Ah, quindi puoi sbloccare Netflix gratis?”
Uno dei momenti più esilaranti arriva quando cerchi di spiegare cosa fai davvero. Dici con semplicità: “Creo software.” E loro, con un lampo negli occhi: “Ah, quindi puoi sbloccare Netflix gratis?”. Come se avessimo un telecomando segreto nascosto nel cassetto, capace di eliminare abbonamenti e pubblicità con un click. E lì ti chiedi: vale la pena spiegare cos’è davvero un software, o è meglio lasciar correre?
Due mondi che non si capiscono
Il problema è che parliamo lingue diverse. Per noi, “bug” è un errore nel codice; per loro, un insetto nel computer. “Debugging” per noi è risolvere un problema; per loro significa spruzzare Baygon sul portatile. “Framework”? Una struttura software per costruire applicazioni; per loro, un mobile Ikea. “Repository”? Il luogo dove conserviamo il codice; per loro, un magazzino di schede madri. È davvero come un dialogo tra due mondi che non condividono nemmeno l’alfabeto.
Le metafore che (non sempre) aiutano
Per cercare di semplificare, a volte usiamo metafore. Dico: “Programmare è come costruire una casa: invece dei mattoni uso righe di codice.” E loro rispondono: “Ah, quindi sei un muratore digitale.” E a quel punto annuisci. Perché spiegare ulteriormente rischia solo di generare più confusione.
Un altro grande classico è la frase: “Ma dai, che ci vuole a fare un’app?”. Come se bastasse un click per far apparire un software perfettamente funzionante. Nessuno immagina le ore passate a leggere documentazione, a risolvere bug, a fare debugging alle tre di notte. E se provi a dire che servono settimane o mesi per completare un progetto serio, ti senti rispondere: “Ma non puoi copiare due righe da Google?”.
Anche gli ingegneri non informatici non capiscono
La cosa più buffa è che anche altri ingegneri non hanno idea di cosa facciamo. Una volta un ingegnere civile mi chiese: “Ma quindi scrivi equazioni al computer?”. Io: “No, creo applicazioni.” E lui, con aria illuminata: “Ah, programmi i semafori!” A quel punto ti rendi conto che, per quanto condividiate la parola “ingegnere”, la vostra realtà è completamente diversa. Loro costruiscono ponti; noi costruiamo logiche invisibili, linee di codice che reggono il mondo digitale.
Colpa di Hollywood
Gran parte della confusione arriva anche dal cinema. Nei film, il programmatore digita dieci secondi e sullo schermo appare la scritta “ACCESS GRANTED”. Nella realtà, noi passiamo ore a capire perché la funzione non restituisce il valore giusto. Nei film c’è il codice verde che scorre come in Matrix; nella vita reale, c’è l’errore “SyntaxError: unexpected indent.”
Una volta ho provato a mostrare: “Guarda, scrivo questa riga: print("Ciao").
Il computer risponde ‘Ciao’.” E la persona, seria: “E ti pagano per questo?” In
quel momento ti senti quasi un impostore, come se stessi truffando l’umanità.
Ma poco dopo, quella stessa persona racconterà agli amici: “Conosci Tizio? È un
hacker, lavora coi governi!” E tu diventi la leggenda urbana del quartiere.
Traduzioni impossibili
Non serve essere anziani per non capire: anche i trentenni fanno confusione. Per noi “cloud” è un sistema di archiviazione online; per molti altri è una nuvola vera. Per noi “codice” è linguaggio di programmazione; per loro, il codice fiscale. È un dialogo costante tra chi vive nel mondo digitale e chi lo osserva da fuori.
Col tempo impari a sopravvivere. Spieghi in modo semplice, eviti i tecnicismi, accetti la loro versione dei fatti. Se per loro sei “quello che stampa videogiochi”, va bene così. Alla fine, ogni fraintendimento diventa un aneddoto divertente da raccontare a cena o nei video.
In fondo, c’è anche un lato bello
Dietro l’ironia, c’è qualcosa di bello in tutto questo. Spesso chi non capisce il nostro lavoro è comunque orgoglioso. “Non so cosa sia un software, ma so che sei bravo.” E quella, forse, è la migliore definizione possibile del nostro mestiere.
Conclusione
Spiegare la programmazione a chi non la conosce è come tentare di installare Windows 95 su un iPhone: non funzionerà mai del tutto. Ma va bene così. Perché questi fraintendimenti ci ricordano quanto la tecnologia sia un mondo nuovo, affascinante e difficile da raccontare. E forse un giorno toccherà a noi non capire, quando i nostri figli ci diranno che lavorano “nell’informatica quantistica aumentata interdimensionale”. E allora risponderemo con la stessa innocenza: “Ah, quindi puoi sbloccare Netflix gratis per tutta la famiglia?”