C'è una frase che ripeto spesso a chi mi chiede se con l'AI si può fare a meno di saper programmare: l'AI è un amplificatore. Se le dai un'idea chiara, la trasforma in qualcosa di concreto a una velocità impressionante. Se le dai un'idea confusa, ti restituisce confusione, solo più velocemente e con un aspetto molto convincente.
Il vibe coding funziona, e lo uso anche io. Ma funziona davvero solo quando chi guida sa dove vuole andare.
Il problema non è il codice, è la richiesta
Quando un progetto costruito con l'AI va storto, raramente è perché il modello non sapeva scrivere il codice. Quasi sempre è perché la richiesta era vaga, contraddittoria o cambiava a ogni messaggio. «Fammi un gestionale per la palestra» può voler dire cento cose diverse. L'AI ne sceglierà una, con sicurezza, e tu ti accorgerai solo dopo ore che non era quella giusta.
Chi fa questo mestiere lo sa da prima dell'AI: la parte difficile di un software è capire esattamente cosa deve fare. Scrivere il codice viene dopo.
Una specifica in sei punti
Non serve un documento di cinquanta pagine. A me basta una pagina con queste sei voci, che incollo all'inizio di ogni conversazione con l'AI:
- Obiettivo: il problema che risolve, in una frase.
- Per chi: chi la usa, da quale dispositivo, con quale dimestichezza.
- Cosa fa: le funzioni della prima versione, in un elenco breve.
- Cosa non fa: ciò che resta fuori, scritto esplicitamente.
- Dati: quali informazioni salva, dove, chi può vederle.
- Come capisco che funziona: tre o quattro prove concrete da fare a mano.
Il punto 4 evita che l'app cresca in direzioni inutili. Il punto 5 ti obbliga a pensare alla privacy prima che diventi un problema. Il punto 6 trasforma «mi sembra che vada» in qualcosa di verificabile.
Piccoli passi, sempre
Con una specifica in mano, la tentazione è chiedere tutto in un colpo solo. Resisti. Il ciclo che uso è questo:
Un prompt piccolo produce una modifica piccola, che riesci a leggere e a provare. Se qualcosa non va, sai esattamente cosa è cambiato e puoi correggere o tornare indietro. Se invece chiedi dieci cose insieme e qualcosa si rompe, non sai da dove iniziare a cercare. Ogni volta che una versione funziona, la salvi. È lento solo in apparenza: alla fine arrivi prima.
Devi poter giudicare il risultato
Qui arriva la parte scomoda. Per usare bene uno strumento che scrive codice al posto tuo, devi essere in grado di capire se il codice è giusto. Non riga per riga, ma abbastanza da accorgerti quando qualcosa non torna: dati salvati nel posto sbagliato, una funzione che fa più di quanto chiesto, un controllo di sicurezza mancante.
Nel 1983 la psicologa Lisanne Bainbridge pubblicò un articolo diventato un classico, Ironies of Automation, «le ironie dell'automazione». Uno dei suoi argomenti è proprio questo: più un sistema automatico fa al posto nostro, più le persone vengono chiamate in causa solo per gestire i casi difficili e inattesi, e meno occasioni hanno di allenare le competenze che servono per farlo. Parlava di impianti industriali, ma il discorso si applica perfettamente al codice generato dall'AI.
Cosa conviene imparare, anche se non vuoi diventare programmatore
- Come una pagina web parla con un server, e cosa resta visibile a chiunque nel browser.
- Cos'è un database e cosa significa che un dato è «pubblico» o «privato».
- Come si legge un messaggio di errore, invece di incollarlo e sperare.
- Come si torna a una versione precedente quando qualcosa si rompe.
Puoi impararle proprio con l'AI: ogni volta che genera qualcosa, chiedile di spiegartelo come se fossi alle prime armi. In qualche settimana ti accorgerai che i tuoi prompt sono diventati più precisi, perché sai di cosa stai parlando.
In breve
Il vibe coding non elimina la necessità di sapere cosa stai facendo: la sposta. Scrivi meno codice, ma devi pensare meglio. Specifica chiara, passi piccoli, risultato verificato. Se vuoi un punto di partenza pratico, parti da la tua prima app in 7 passi e, prima di pubblicare, passa dalla checklist di sicurezza.