Qualche mese fa mi ha scritto un imprenditore con una frase che ormai sento sempre piu spesso: "L'app ce l'ho gia, funziona, manca solo l'ultimo ritocco." Ho aperto il suo schermo e in effetti funzionava. Interfaccia curata, pulsanti che rispondono, dati che compaiono. Tutto costruito in pochi giorni con Lovable, quasi senza scrivere una riga di codice. Il problema era che quell'"ultimo ritocco" in realta era tutto cio che separa una demo da un prodotto. E quel "tutto" era piu di tutto il lavoro fatto fino a quel momento.
Questo fenomeno ha gia un nome: vibe coding. In questo articolo ti spiego cos'e, perche e geniale per un prototipo e pericoloso per un prodotto, cosa manca concretamente a un'app vibe-coded, quando basta davvero (si, a volte basta sul serio) e come trasformare un prototipo del genere in un prodotto reale, capace di reggere in produzione, con tutti gli obblighi italiani al loro posto.
Cos'e il vibe coding
Il vibe coding e un modo di sviluppare in cui non costruisci l'app scrivendo codice, ma descrivendo a parole, in linguaggio naturale, a uno strumento di IA cosa vuoi. "Fammi un'app per la lista delle cose da fare, con login e modalita scura" e dopo qualche secondo hai una schermata funzionante. Non ti piace il colore? Chiedi di cambiarlo. Manca un pulsante? Chiedi di aggiungerlo. Non scrivi codice riga per riga: guidi a sensazione, ossia chiedi, guardi il risultato, chiedi una correzione. Da qui il "vibe". In italiano qualcuno lo traduce come "programmazione conversazionale", ma il termine inglese ormai e quello che si usa.
Gli strumenti che lo permettono sono ben noti: Lovable e Bolt generano l'intera app, v0 l'interfaccia, Cursor e ChatGPT scrivono codice a partire dalla conversazione. E tecnologia davvero impressionante e non la sminuisco: anch'io uso l'intelligenza artificiale ogni giorno nel mio lavoro. La domanda non e mai stata "l'IA sa scrivere codice". La domanda e "cio che ha scritto reggera il mondo reale".
Perche il vibe coding ha una caratteristica invisibile: e ottimizzato perche sembri funzionare. L'IA genera codice che supera il test piu ovvio, cioe premi un pulsante e succede qualcosa. Ma "funziona sul mio schermo" e "funziona in produzione con utenti reali" sono due cose completamente diverse, e in mezzo c'e esattamente quel lavoro che l'IA non fa da sola.
Perche e fantastico per un prototipo e pericoloso per un prodotto
Il compito di un prototipo e uno solo: dimostrare un'idea. Gli basta funzionare per te, una volta, lungo il percorso felice (cosi chiamo lo scenario in cui l'utente fa tutto giusto e niente si rompe). Se vuoi mostrare a un investitore come sara il tuo servizio, o verificare tu stesso se l'idea ha senso, il vibe coding qui non ha rivali. Cio che prima richiedeva una settimana e qualche migliaio di euro, oggi si fa in un pomeriggio. E un vantaggio reale ed enorme.
Il compito di un prodotto e tutt'altro. Un prodotto deve funzionare non per te, ma per persone che non conosci. Con una connessione pessima. Con dati inseriti male. Con qualcuno che prova a fregarti. Di notte, mentre tu dormi. Dopo sei mesi, quando una libreria e cambiata. Con mille utenti contemporaneamente, non con uno solo. E qui che un prototipo vibe-coded inizia a sgretolarsi, e non si sgretola dove si vede, ma dove non si vede, finche non e troppo tardi.
L'illusione piu pericolosa del vibe coding
Quando l'app sembra finita al 90%, l'istinto dice che resta il 10% di lavoro. Nella realta e il contrario: la parte visibile (interfaccia, pulsanti, schermate) e quella facile, che l'IA fa bene. La parte invisibile (sicurezza, dati, casi limite, deploy, conformita) e insieme la piu difficile e la piu costosa. Quel 30% pesante l'ho raccontato a parte nell'articolo "Hai fatto un'app con l'IA e si e bloccata? Cosa fare adesso".
7 cose che a un'app vibe-coded mancano
Quando prendo in mano un progetto vibe-coded, quasi sempre mancano le stesse sette cose. Non perche l'IA sia "cattiva": semplicemente genera cio che le chiedi, e queste cose nessuno le chiede, perche nemmeno sai che esistono finche non diventano un problema.
| Cosa manca | Perche conta in produzione |
|---|---|
| 1. Test automatici | Senza test ogni modifica e un azzardo. Aggiusti un punto e invisibilmente se ne rompe un altro. Nel codice vibe-coded i test non ci sono quasi mai, quindi il progetto diventa sempre piu fragile man mano che lo si tocca. |
| 2. Gestione degli errori | Cosa succede se cade la connessione, il server non risponde o l'utente inserisce spazzatura? Nel prototipo: schermata bianca o crash. In un prodotto serve un messaggio chiaro, un percorso alternativo e la registrazione silenziosa dell'errore. |
| 3. Sicurezza | Chiavi API esposte nel codice, database aperto da cui chiunque puo prelevare dati altrui, nessuna validazione degli input. E la falla vibe-coded piu frequente e pericolosa: viene sfruttata in pochi minuti. |
| 4. Migrazioni dei dati | Quando aggiungi un campo o cambi una struttura, i dati gia presenti devono "traslocare" senza perdite. Nel prototipo lo schema dati si cambia cancellando e ricreando: in produzione vorrebbe dire clienti cancellati. |
| 5. Monitoraggio | In produzione devi scoprire un problema prima dell'utente. Senza tracciamento errori e log non vedi che meta delle persone non riesce ad accedere: lo scopri solo quando smettono di tornare. |
| 6. Scalabilita | Codice che regge con un utente puo crollare con cento. Query non ottimizzate, nessuna cache, tutto su un solo thread: irrilevante per il prototipo, fatale per il prodotto al primo giorno di successo. |
| 7. Manutenzione | Le librerie invecchiano, escono falle di sicurezza, cambiano le regole di pagamenti e login. Un prodotto richiede cura continua. Codice vibe-coded che nessuno capisce diventa irreparabile dopo il primo guasto serio. |
Nota una cosa: nessuna di queste sette voci e visibile all'utente finche va tutto bene. Si manifestano tutte in quell'unico giorno storto, ed e proprio per loro che costruire un prodotto e piu lento e piu caro che fare un prototipo. Non sono la vernice finale: sono le fondamenta.
Quando il vibe coding basta davvero
E ora la parte piu importante e piu onesta di questo articolo. Il vibe coding non e "sbagliato". Ci sono molti casi in cui non solo basta, ma e anche la scelta piu intelligente. Se rientri in uno di questi, non chiamare me: risparmia i soldi e costruisci da solo.
Qui il vibe coding basta davvero
- Strumento interno per poche persone. Un foglio di calcolo evoluto, una tabella, un sistemino usato dal tuo team. Se non custodisce dati altrui e non incassa denaro, costruiscilo con l'IA e non pensarci.
- Demo per un investitore o un cliente. Devi mostrare come sara l'idea. A nessuno importa cosa c'e sotto il cofano, se l'obiettivo e convincere, non servire.
- Visualizzare un'idea per te stesso. Vuoi capire se il tuo progetto ha senso prima di investire soldi veri. Un prototipo vibe risponde a questa domanda nel modo piu economico.
- Progetto personale. Un hobby, un diario, uno strumento per te. Se si rompe, si rompe solo per te, e te ne farai una ragione.
La regola generale e semplice: se l'app non custodisce dati altrui e non incassa denaro, il vibe coding molto probabilmente ti basta.
Quando il vibe coding non basta piu
E ora l'altra faccia. C'e una soglia oltre la quale "sembra che funzioni" diventa un rischio che costa molto piu di quanto hai risparmiato costruendo. La superi nel momento in cui a usare l'app iniziano persone che non conosci, oppure quando ci passa del denaro.
| Il vibe coding basta | Serve una ricostruzione professionale |
|---|---|
| La usi solo tu o una cerchia ristretta e fidata | La usano sconosciuti, clienti reali |
| Nessun denaro nel sistema | Pagamenti, abbonamenti, incassi (Nexi, Stripe, PayPal) |
| Dati irrilevanti o pubblici | Dati personali, GDPR, Garante, privacy dei clienti |
| Un guasto non costa nulla | Un fermo significa clienti o reputazione persi |
| Vive qualche settimana | Deve funzionare ed essere mantenuto per anni |
Appena compaiono clienti reali o pagamenti, ognuna di quelle sette mancanze diventa una responsabilita. Un database non protetto con i tuoi clienti dentro non e piu un dettaglio tecnico: e una violazione del GDPR, e in Italia il Garante e tutt'altro che addormentato sui banner cookie e sul trattamento dei dati. Pagamenti senza gestione degli errori sono soldi che spariscono tra te e la banca. Ed e qui che la questione non e piu il vibe coding, ma il prodotto.
La conformita che l'IA salta sempre (e in Italia conta)
C'e un blocco di lavoro che nessuno strumento di vibe coding gestira mai per te, perche e specifico del mercato italiano e non c'entra con il codice "che funziona". E proprio qui che molti progetti fatti con l'IA si bloccano nel momento di mandare in produzione.
- Banner cookie a norma Garante. Deve permettere di rifiutare con la stessa facilita con cui si accetta, niente caselle preselezionate (sono illegali). In Italia si usano CMP come Iubenda o CookieYes, che l'IA non configura da sola.
- Informativa sulla privacy e dove sono ospitati i dati. Tema delicato dopo lo scrutinio del Garante su Google Analytics e i trasferimenti verso gli USA. Va deciso e scritto, non improvvisato.
- Fatturazione elettronica via SdI. Obbligatoria per ogni partita IVA dal 2024, anche in regime forfettario: le fatture sono XML trasmessi al Sistema di Interscambio dell'Agenzia delle Entrate, non PDF inviati via email. Se la tua app emette fatture, serve l'integrazione con un provider come Fatture in Cloud, Aruba o InfoCert.
- Accessibilita (Legge Stanca / EAA). Per molte attivita e un obbligo crescente dal 2025. Un'interfaccia generata a sensazione raramente la rispetta.
Nessuna di queste cose la vedi nella demo. Tutte ti presentano il conto quando inizi a vendere davvero. La demo non e il traguardo: il traguardo e la produzione, con la conformita al suo posto.
Come trasformare un prototipo vibe in un prodotto
La buona notizia: un prototipo vibe spesso non e lavoro sprecato, anzi e un ottimo punto di partenza. Hai gia deciso cosa fa l'app, che aspetto ha, quale logica segue. E la parte piu preziosa e piu difficile da mettere su carta di una specifica, ed e gia fatta. Resta da chiudere quel 30% pesante per cui un prototipo non e un prodotto.
Quando mi arriva un progetto vibe-coded, la prima cosa che faccio e guardare il repository e decidere un punto: continuare sul codice esistente o ricostruire pulito. La decisione non dipende dalla quantita di codice, ma dalla sua struttura. Se logica e modello dati sono sani, continuo su quelli e aggiungo lo strato mancante. Se il codice e caotico, con chiavi esposte e stato ingestibile, una ricostruzione pulita esce piu veloce ed economica della toppa continua. Di cosa succede quando il codice IA inizia a crollare e "aggiustandolo" crolla ancora di piu parlo a parte nell'articolo "Lovable, Bolt, v0, Cursor: cosa fare quando il codice IA si rompe".
Il percorso dal prototipo alla produzione
- Audit. Verifico cosa funziona davvero e cosa solo sembra. Individuo le falle di sicurezza e i punti critici.
- Fondamenta solide. Database sicuro, login serio, chiavi nascoste, validazione degli input: la base su cui si puo costruire.
- Il 30% pesante. Pagamenti, integrazioni, gestione degli errori, casi limite. In Italia qui si aggiungono spesso le integrazioni locali (Nexi XPay, Stripe, PayPal, Satispay, fatturazione elettronica via SdI, SPID/CIE) che l'IA non collega.
- Rete di sicurezza. Test, monitoraggio e log, perche del problema lo sappia tu, non il tuo cliente.
- Deploy e manutenzione. Dominio vero, hosting vero, backup e un accordo chiaro su chi cura il prodotto da qui in avanti. Il codice resta tuo, senza lock-in.
La mia proposta non e mai "ti sistemo il codice". E "ti costruisco qualcosa che funziona e incassa". La differenza e sostanziale: sistemare il codice e cosmetica, costruire un prodotto significa che i tuoi clienti possono usarlo, pagare e tornare in tranquillita, e tu puoi dormire sereno.
I numeri, concretamente
Veniamo al prezzo, perche tanto me lo chiederai comunque ed e giusto cosi: in Italia "quanto costa" e una delle prime domande. Se il prototipo vibe ha gia logica e schermate, una ricostruzione pulita fino alla produzione, con autenticazione, sicurezza, deploy e integrazioni di base, costa tipicamente da 1.500 a 6.000€ (netto IVA). Prodotti piu complessi, con pagamenti Nexi o Stripe, integrazioni italiane e pannello admin, partono da 8.000€ in su. I tempi sono di solito 2-6 settimane, a seconda di quanto il prototipo e davvero arrivato.
Lavoro come sviluppatore freelance in regime forfettario, quindi sulle fatture non trovi l'IVA ma la nota di legge prevista: il prezzo che leggi e il prezzo. Puo sembrare parecchio per un progetto "quasi finito", ma ricorda la tabella delle sette mancanze: non paghi la verniciatura, paghi quelle fondamenta senza le quali un'app non e un prodotto, ma solo la sua fotografia. Un confronto onesto tra freelance e web agency e legittimo: di solito un singolo sviluppatore con presenza locale costa meno di una struttura e ti da una persona di riferimento con nome e cognome.
Hai un prototipo vibe-coded e vuoi trasformarlo in un prodotto vero?
Guardo il tuo progetto Lovable, Bolt, v0 o Cursor e ti dico apertamente se conviene continuare sul codice esistente o ricostruire pulito, con prezzo e tempi precisi. Preventivo gratuito, contatto via WhatsApp, email o modulo. Sviluppatore in Italia, il codice resta tuo.
Parliamo del mio progetto