Vibe Coding e Debito Tecnologico

Image

Vibe Coding e Debito Tecnologico

Mi occupo di progettazione e sviluppo software da oltre 30 anni. Ancora oggi, con lo stesso entusiasmo degli inizi, amo “sporcarmi le mani” in prima linea, scrivendo codice e cercando costantemente di migliorarmi. Non mi definisco un puro “spaccacodice”, perché la mia figura è piuttosto ibrida, ma sono abbastanza folle da aver scritto da solo un intero framework PHP, con tanto di ecosistemi interconnessi tra PHP, C# e MySQL. Insomma, so anche divertirmi.

Quando ho iniziato, tanti (ma davvero tanti) anni fa con QBasic su MS-DOS, perfino trovare la documentazione era un’impresa. Si era costretti a ordinare rari manuali dagli Stati Uniti o dall’Inghilterra per riuscire a progredire. La conoscenza, all’epoca, ce la siamo davvero guadagnata.

Poi è arrivato Internet e tutto è diventato più accessibile, che meraviglia, la documentazione era lì, a portata di clic. Ma, attenzione, prima di applicarla, bisognava capirla. Oggi, invece, siamo entrati nell’era del vibe coding, dove spesso si scrive codice più per ispirazione che per comprensione.

Che cos’è il Vibe Coding

Il termine vibe coding nasce in ambienti dev tra l’ironico e il disilluso, descrive il momento in cui qualcuno scrive codice non per risolvere un problema in modo robusto, ma “perché sembrava una buona idea”. Si codifica secondo la vibrazione del momento. Può sembrare innocuo e persino creativo, ma in un contesto produttivo, dove il codice deve essere mantenuto, scalato, compreso da altri, è di fatto il preludio di un disastro.

Con l’introduzione delle AI generative, questo fenomeno si amplifica, si copia, incolla, modifica, e si esegue la pubblicazione con una rapidità mai vista. Tutto funziona… o almeno, sembra funzionare… fino a quando qualcosa si rompe. E nessuno sa esattamente perché.

La Velocità è la Nuova Droga Digitale

L’introduzione di strumenti come GitHub Copilot, ChatGPT, Claude e affini ha reso lo sviluppo straordinariamente veloce. Un tempo, quello che richiedeva giorni oggi si completa in ore. La tentazione è forte, perché riflettere su architettura e design pattern quando l’AI può scrivere 500 righe di codice su richiesta?

Ma questa velocità è illusoria. È come un mutuo a tasso variabile, oggi ti sembra di risparmiare tempo, domani potresti pagare interessi altissimi sotto forma di bug, refactoring estremo, incompatibilità o il peggiore dei mali, lock-in mentale verso tecnologie che nessuno sa più maneggiare senza AI.

Superficialità nei Processi Decisionali

L’AI non sostituisce il pensiero strategico, eppure, molte decisioni critiche vengono oggi delegate implicitamente alla macchina. Quando chiediamo all’AI: “scrivimi un backend in PHP con autenticazione”, diamo per scontato che sia la scelta giusta. Ma in base a cosa? Esperienza? Contesto? Scalabilità? Troppo spesso l’AI non è più uno strumento, ma un oracolo a cui affidare scelte che richiederebbero invece tempo, confronto e ragionamento critico. Si va avanti per iterazioni “finché funziona”, senza più chiedersi: “è la cosa giusta da fare?”

Perdita di Controllo sul Codice

Chi mantiene il codice scritto oggi dall’AI? Chi ne comprende le dipendenze, le vulnerabilità, gli effetti collaterali? Sempre più spesso, sviluppatori junior (o anche senior sotto pressione) si trovano a gestire progetti in cui il codice è stato auto-generato, patchato e dimenticato. La conoscenza del sistema non è distribuita, è evaporata. E quando il codice diventa opaco, il team perde potere. Il software smette di essere uno strumento controllabile e diventa una creatura autonoma, il cui comportamento è difficile da prevedere. Il fatto stesso che funzioni è un atto di fede verso ChatGPT, Claude o altro LLM.

La Documentazione Sacrificata sull’Altare della Rapidità

Mantenendo un tono quasi sacrale (portate pazienza, sarà l’effetto dell’estate che svanisce…), potremmo dire che la documentazione è diventata la vittima sacrificale offerta sull’altare della velocità.
Nella corsa sfrenata al rilascio continuo, annotare il senso di una funzione o spiegare una logica progettuale viene vissuto come una zavorra, un’inutile perdita di tempo.

Perché spendere minuti preziosi a documentare, quando puoi semplicemente chiedere all’AI: “cosa fa questa roba?”

Ma questo approccio ci conduce a un paradosso pericoloso, sistemi che funzionano ma non comunicano. Codici che eseguono, ma non insegnano nulla. Il sapere smette di essere condiviso, smette di essere verificabile. Si dissolve.

Nei team che fanno uso massiccio di AI, è sempre più comune imbattersi in progetti senza README aggiornati, senza un solo commento illuminante, senza un disegno architetturale a cui aggrapparsi.
È come costruire una casa senza planimetria, ogni nuovo muratore deve procedere a tentoni, sperando di non trapanare un tubo nascosto nel muro.

Solo qualche giorno fa, un mio ex-studente, oggi giovane professionista, mi ha mostrato un caso emblematico. Sta per mettere mano a un progetto chiaramente generato in modalità vibe coding: nessun commento, funzioni annidate in modo ossessivo, algoritmi spezzettati in una tale selva di micro-astrazioni che nessun programmatore dotato di buon senso lo avrebbe mai scritto così. Eppure quel codice gira in produzione. Almeno per ora.

Chi Rischia di Più?

Spinte dal time-to-market, molte startup adottano l’AI in modo quasi compulsivo. Sfornano prodotti che funzionano, certo, ma che sono incomprensibili sotto il cofano. Il debito tecnologico cresce esponenzialmente, e quando arriva il momento del scale-up… il codice implode.

L’adozione dell’AI nei contesti educativi rischia di far saltare una generazione di sviluppatori. Se gli studenti imparano solo a “chiedere all’AI di scrivere codice”, senza passare per la fatica del debugging, della logica, del design… chi formerà gli ingegneri di domani?

Nelle PMI e nella PA, lì dove le competenze digitali sono già fragili (a cause di budget ridotti spesso non esiste la figura del CTO), l’uso disinvolto dell’AI per produrre software “funzionante” può essere fatale. App che non si aggiornano, backend ingestibili, dipendenze da librerie obsolete. Il rischio è che l’innovazione apparente si trasformi in paralisi burocratica digitale.

Un Mutuo a Tasso Variabile

Immagina di costruire un intero condominio prendendo scorciatoie ovunque, materiali economici, progetti copiati da altri edifici, mancanza di collaudi. Il condominio sta in piedi… finché arriva la prima scossa di terremoto. Così funziona oggi molto sviluppo software spinto dall’AI. Il debito tecnologico cresce silenzioso, come gli interessi composti. E quando esplode, non basta “aggiustare il codice”, serve ripensare il modo in cui sviluppiamo, formiamo e decidiamo.

Formazione Consapevole e Cultura Tecnica

Non si tratta affatto di un rifiuto della tecnologia, anzi. La nostra azienda, NGTN SRL, ha come core business l’Intelligenza Artificiale applicata al contesto aziendale, e gran parte dei nostri processi interni sono già AI-driven.
Tuttavia, in molte realtà produttive dove manca expertise e seniority (i nostri CTO, sì, hanno qualche annetto di esperienza…), per evitare il collasso serve una vera contro-rivoluzione culturale, una formazione solida che insegni prima di tutto il pensiero critico, architetture comprensibili e manutenibili, e soprattutto una visione del codice come bene collettivo, non come semplice strumento per chiudere task.

Anche scrivere codice leggibile e pulito è, a tutti gli effetti, una responsabilità sociale. Non solo verso i colleghi che dovranno metterci mano, ma anche verso tutte le persone che useranno quell’app per divertirsi, per lavorare, o magari per prenotare una visita in ospedale.

Il vibe coding può sembrare innocuo, persino affascinante. L’AI può apparire come la bacchetta magica che ogni sviluppatore ha sempre sognato. Ma se continuiamo a scrivere codice come se nessuno dovesse mai leggerlo, capirlo o mantenerlo, allora non stiamo innovando, stiamo solo rinviando il momento in cui tutto si romperà.

Se ti piace la tecnologia restiamo in contatto su linkedin a https://www.linkedin.com/in/andreatonin/

VibeCoding #DebitoTecnologico #AIeCodice #SuperficialitàDecisionale #MancanzaDocumentazione #ContestoLavorativo #StartupEDebito #ScuolaEDigitalizzazione #PubblicaAmministrazioneDigitale #FormazioneTecnologica

Banner

Releated Posts

ComfyUI – Reference Conditioning

In ComfyUI (soprattutto con modelli come Flux) il Reference Conditioning è un nodo che permette di usare una…

DiByAndrea Tonin Apr 9, 2026

ComfyUI per generare anime: NewBie Image Exp0.1

NewBie Image (spesso indicato come NewBie-image-Exp0.1) è un modello text-to-image in stile anime/ACG pensato per generare illustrazioni con…

DiByAndrea Tonin Apr 9, 2026

Comfy UI: OpenPose

Quando si parla di “OpenPose” in giro per ComfyUI, spesso si intende una cosa molto concreta: prendere una…

DiByAndrea Tonin Apr 9, 2026

L’AI in Cooperativa come scelta organizzativa

Negli ultimi mesi sono stato molto impegnato con docenze in cooperative anche molto diverse tra loro. In aula…

DiByAndrea Tonin Apr 9, 2026