Vibe Coding

Vibe Coding: cos'é?

Il vibe coding è la pratica di scrivere codice tramite l’uso di intelligenze artificiali (AI) senza avere una conoscenza approfondita della programmazione. Questo approccio delega la maggior parte del lavoro di sviluppo a modelli linguistici avanzati (LLM), consentendo di ottenere codice funzionante senza necessariamente comprendere il linguaggio utilizzato, ponendo la fiducia nell’AI piuttosto che nel programmatore.

È un bene o un male?

Il vibe coding è un’arma a doppio taglio. Non voglio mentire, personalmente lo utilizzo per scrivere script in Python e mi ha purtroppo quasi completamente sollevato dalla necessità di imparare il linguaggio in modo approfondito, finché il mio utilizzo rimane superficiale.

Ritengo che si possano distinguere due categorie di persone che praticano il vibe coding:

  1. Chi sa programmare – Sono in grado di supervisionare, correggere e migliorare il codice generato dall’AI. Inoltre, sanno esprimere con precisione ciò che vogliono ottenere.
  2. Chi non ha competenze di programmazione – Si affida completamente all’AI senza comprendere il codice generato.

Entrambi i gruppi affrontano delle problematiche:

  • I programmatori esperti rischiano di perdere manualità con il codice e di allontanarsi dalle basi della programmazione.
  • I principianti possono cadere nell’illusione di sapere programmare, finché non si trovano ad affrontare problemi complessi. In questi casi, potrebbero arenarsi e, spesso, non avere l’umiltà di riconoscere i propri limiti e ripartire da zero.

Che rischi chi sono?

Tra i principali rischi di questo approccio troviamo:

  • Bug e vulnerabilità ripetuti – Se il codice generato contiene errori o falle di sicurezza, questi possono ripetersi in più parti del progetto o addirittura tra progetti diversi senza che l’utente se ne accorga.
  • Incomprensione del codice – Il processo di sviluppo software è iterativo e richiede continue integrazioni e miglioramenti. Chi non ha conoscenze di programmazione potrebbe avere difficoltà a espandere o correggere il codice generato.
  • Fragilità strutturale – Se non si comprende il funzionamento del codice prodotto, un progetto apparentemente stabile potrebbe collassare improvvisamente senza possibilità di risolvere il problema in modo efficace.

Come si evolverà la cosa

Un’evoluzione naturale del vibe coding prevedo sarà  la fusione con il prompt engineering e la standardizzazione delle richieste. Salvare e riutilizzare prompt ben strutturati può ottimizzare il processo, ma tuttavia per fare questo è necessaria una conoscenza di base della programmazione

Vi lascio con un analogia

Vi lascio con un analogia che ritengo calzante: il vibe coding tramite AI é simile alle previsioni del meteo.

Chiedere all’AI di generare codice immediatamente successivo a quello già esistente ha un alto tasso di successo. Tuttavia, più si cerca di spingersi avanti nel tempo e nella complessità, meno affidabile diventa il risultato.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *