Fino a ieri, programmare significava imparare un linguaggio: la sintassi, la logica, le strutture, le eccezioni. E poi scrivere codice, riga dopo riga, sperando che il computer interpretasse correttamente quello che si aveva in mente. Era un mestiere con una barriera d’ingresso molto alta, che richiedeva tempo, pazienza e molta pratica. Punto.
Poi è arrivato il vibe coding, un approccio che ha letteralmente stravolto tutto. Invece di scrivere codice, si descrive quello che si vuole a un’intelligenza artificiale e il chatbot lo fa per conto dell’utente. Si desidera creare un’app per organizzare le spese? Basta dirlo a Claude o a ChatGPT, ed è fatta. Si vuole creare un timer con un pulsante di avvio e uno di stop? idem. La conversazione sostituisce la competenza tecnica, e il risultato è che milioni di persone che non avevano mai scritto una riga di codice in vita loro adesso sviluppano cose che funzionano, anche senza capire fino in fondo come funziona il processo.
Programmare senza saper programmare, ma cos’è il vibe coding?
In pratica, il processo si svolge come una conversazione. Si descrive all’AI cosa serve, uno strumento per elaborare dati, un’applicazione web semplice, uno script per automatizzare operazioni ripetitive, e l’AI genera il codice necessario. Poi “basta” testare il risultato, descrivere eventualmente cosa non va e raffinare attraverso un dialogo continuo fino a quando il programma fa quello che deve fare.
I difetti, naturalmente, non mancano. Il rischio è passare ore e ore a verificare, chiarire e richiedere correzioni. Dato che non si scrive direttamente il codice, risolvere i problemi significa descriverli all’AI piuttosto che metterci le mani direttamente. Per progetti semplici, però, questo limite conta molto meno della possibilità di costruire qualcosa che altrimenti non si sarebbe mai potuto creare.
Come costruire programmi conversando con l’AI, la guida per chi parte da zero
1. Partire in piccolo
Il primo errore che commettono tutti è pensare in grande. Magari si vuole sviluppare un’app con login, database, API e sincronizzazione tra dispositivi, tutto bellissimo. Ma non è da lì che si comincia. Si comincia con un timer. Una calcolatrice. Un organizzatore di file. Qualcosa che si può completare in mezz’ora e testare immediatamente.
L’idea è imparare come funziona il processo prima di aumentare la complessità. Se il primo progetto è troppo ambizioso e qualcosa non va, e di sicuro accadrà, sarà difficile capire dov’è il problema. Se invece si parte da qualcosa di semplice, ogni pezzo che si aggiunge è un mattone che si può controllare prima di posare il successivo.
Prompt da provare: Costruisci un timer con conto alla rovescia con pulsanti di avvio e di stop.
Una volta che funziona, si può aggiungere qualche funzione, ad esempio: Fai suonare un allarme quando il timer arriva a zero.
2. Essere specifici
L’intelligenza artificiale è un collaboratore diligente, ma letterale. Se si chiede: Fai una landing page
, si otterrà qualcosa di generico, e che probabilmente non assomiglia nemmeno un po’ a quello che si immaginava. Se invece si spiega cosa si vuole esattamente, il primo tentativo sarà molto più vicino al risultato desiderato. Per evitare un numero incalcolabile di revisioni non si deve lasciare spazio alle interpretazioni.
Prompt da provare: Crea una pagina web singola che funzioni come portfolio personale. In alto il mio nome, al centro tre descrizioni di progetti con titolo e breve testo, in basso il mio indirizzo email. Sfondo bianco, carattere pulito e moderno, layout centrato.
Più dettagli si forniscono in partenza, meno correzioni serviranno dopo. E meno correzioni significano meno frustrazione, che nel vibe coding è la risorsa più preziosa da conservare!
3. Aggiungere una funzionalità alla volta
La tentazione di chiedere tutto insieme è fortissima, ma è anche la strada più rapida verso il caos. Se si chiede all’AI di sviluppare un’applicazione completa con dieci funzionalità in un’unica richiesta e qualcosa non funziona, capire quale pezzo abbia causato il problema, diventerà una missione impossibile.
L’approccio giusto è costruire a strati. Prima la struttura base, poi una funzionalità alla volta, testando ogni aggiunta prima di passare alla successiva.
Prompt da provare: Crea un registro spese semplice, solo un campo per l’importo e uno per la descrizione.
Quando funziona: Aggiungi un pulsante per calcolare il totale di tutte le spese inserite.
Poi: Aggiungi un menu a tendina per le categorie: alimentari, trasporti, intrattenimento.
Se qualcosa non funziona dopo l’ultima aggiunta, si saprà esattamente dove cercare. È il metodo più efficace per mantenere il controllo su un processo che non si controlla fino in fondo.
4. Testare tutto
Ecco una verità scomoda sul vibe coding… il codice generato dall’intelligenza artificiale può sembrare corretto e non esserlo affatto. Funziona nei casi normali, ma non appena si prova a fare qualcosa di leggermente imprevisto, un campo lasciato vuoto, un numero negativo, un clic doppio dove ne bastava uno, è la fine.
La regola è non fidarsi mai del primo risultato. Bisogna cliccare ogni pulsante. Inserire dati assurdi nei moduli. E se si trova un errore, meglio descriverlo all’AI nel modo più preciso possibile.
Il consiglio è di non usare mai codice generato dall’intelligenza artificiale per compiti importanti senza averlo testato a fondo. La fiducia cieca nel codice altrui è un errore che i programmatori esperti non commettono mai.
5. Provare strumenti diversi per compiti diversi
Non tutti i modelli di intelligenza artificiale lavorano allo stesso modo. Claude gestisce bene i progetti complessi e ragiona in modo strutturato. ChatGPT è spesso più veloce per script semplici e compiti rapidi. Strumenti come Cursor si integrano direttamente negli ambienti di sviluppo.,
L’ideale è provare la stessa richiesta con strumenti diversi e confrontare i risultati. La maggior parte offre prove gratuite, quindi si può sperimentare prima di considerare un abbonamento. Si potrebbe scoprire che per certi compiti uno strumento funziona molto meglio di un altro, e che la scelta giusta dipende più dal tipo di progetto che dalla qualità generale del modello.
Il vibe coding non è la fine della programmazione tradizionale, è solo un’altra porta d’ingresso. Meno alta, aperta a chiunque abbia un’idea e la pazienza di descriverla bene. Il codice perfetto resta un lavoro da professionisti. Ma il codice che funziona, quello che risolve un problema concreto, adesso è alla portata di tutti.