Insegno Web Design da oltre un decennio, tra qualche anno saranno due. Quando iniziai avevo pochissima esperienza di insegnamento e la disciplina era in via di definizione. Pensai, in ogni caso, che un corso di Web Design dovesse includere la creazione di un sito web reale. Si sarebbe dovuto scrivere l’HTML, oltre che progettare il layout con il software che si usava all’epoca: Photoshop. (Se oggi vi sembra una follia usare Photoshop, vi assicuro che anche allora ci sembrava una follia.)
Da allora ho sempre dedicato una parte del corso a spiegare l’HTML e il CSS. Una delle prima slide sull’HTML sottolinea che non è un linguaggio di programmazione. Un po’ perché lo penso, un po’ per tranquillizzare gli studenti, spesso timorosi del codice.
L’altro giorno sono finito su un articolo di Tim Carmody su Wired. L’articolo si intitola HTML is actually a programming language. Fight me. Già nel titolo, Carmody mette le mani avanti, sapendo che non tutti sono d’accordo. Carmody sostiene che l’HTML è il linguaggio informatico più significativo degli ultimi 30 anni, capace di ridefinire l’informatica e di essere il punto di riferimento per molti altri linguaggi di programmazione.
L’articolo ha poi generato una lunga discussione. Carmody ha poi scritto su Bluesky che più che stabilire se l’HTML fosse o meno un linguaggio di programmazione, il suo intento era celebralo.
Celebra il fatto che l’HTML è un linguaggio democratico e accessibile a tutti. Celebra i siti rotti (o che si possano rompere), senza compromettere il contenuto. (Linka pure al suo "sito rotto" preferito).
Tra l’altro, ricordiamo, che l’HTML (e il CSS) sono stati concepiti da Tim Berners-Lee all’epoca per essere “compatibili in avanti”. Nel senso che qualsiasi cosa scritta oggi funzionerà anche tra 10 anni, come funzionano ancora i siti web in HTML-CSS di 20 anni fa.
Scrive Carmody:
Quando gli haters negano lo status dell’HTML come linguaggio di programmazione, mostrano di non capire cosa sia veramente un linguaggio. Un linguaggio non è un insieme di istruzioni per un interlocutore da eseguire senza margine di interpretazione; è qualcosa di più ampio e ricco. Come il linguaggio umano, l’HTML è conversazionale. È incredibilmente abile nell’adattarsi al contesto. Può assumere forme diverse su qualsiasi macchina, da un browser desktop a uno schermo di e-reader, fino a un’app mobile o un lettore per non vedenti (purché quel dispositivo sia progettato per presentare ipertesti).
Concludendo così:
Ciò che altri programmatori potrebbero dire con disprezzo è qualcosa che gli amanti dell’HTML abbracciano: chiunque può farlo. Che si usino framework complessi o strumenti molto semplici, la promessa dell’HTML è che possiamo costruire, creare, programmare e fare qualsiasi cosa vogliamo.