{"id":17784,"date":"2026-10-09T11:41:36","date_gmt":"2026-10-09T09:41:36","guid":{"rendered":"https:\/\/neodatagroup.ai\/?p=17784"},"modified":"2026-10-09T11:41:38","modified_gmt":"2026-10-09T09:41:38","slug":"code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production","status":"publish","type":"post","link":"https:\/\/neodatagroup.ai\/it\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\/","title":{"rendered":"Il codice che gira e il codice che regge: cosa insegna il vibe coding quando arriva in produzione"},"content":{"rendered":"<h2 class=\"simpletoc-title\">Indice<\/h2>\n<ul class=\"simpletoc-list\">\n<li><a href=\"#the-birth-of-vibe-coding\">Da dove \u00e8 nato il vibe coding?<\/a>\n<\/li>\n<li><a href=\"#why-so-many-teams-adopted-it\">Perch\u00e9 cos\u00ec tanti team l'hanno adottato<\/a>\n<\/li>\n<li><a href=\"#working-code-and-safe-code-are-different-things\">Codice funzionante e codice sicuro sono cose diverse<\/a>\n<\/li>\n<li><a href=\"#four-incidents-with-one-cause\">Quattro incidenti, una sola causa<\/a>\n<\/li>\n<li><a href=\"#keeping-the-speed-and-adding-the-review-back\">Mantenere la velocit\u00e0 e reintrodurre la revisione<\/a>\n<\/li><\/ul>\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">A luglio 2025 un'app ha lasciato aperto su internet un bucket di storage. Dentro c'erano i selfie e i documenti d'identit\u00e0 che le utenti avevano caricato per verificare il proprio account. Chiunque avesse l'URL poteva scaricarli. <a href=\"https:\/\/techcrunch.com\/2025\/07\/26\/dating-safety-app-tea-breached-exposing-72000-user-images\">Circa 72.000 immagini sono state sottratte<\/a>, tra cui circa 13.000 selfie e documenti di verifica. Il controllo degli accessi non era mai stato configurato, e l'app funzionava comunque senza problemi.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Quell'app era Tea. \u00c8 uno dei quattro incidenti raccontati pi\u00f9 avanti che risalgono alla stessa lacuna.<\/p>\n\n\n\n<h2 id=\"the-birth-of-vibe-coding\" class=\"wp-block-heading\"><strong>Da dove \u00e8 nato il vibe coding?<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Il 2 febbraio 2025 Andrej Karpathy, tra i fondatori di OpenAI ed ex responsabile dell'AI di Tesla, <a href=\"https:\/\/x.com\/karpathy\/status\/1886192184808149383\">ha pubblicato su X<\/a> una breve nota su un modo di lavorare che stava sperimentando. Si descrive a parole ci\u00f2 che si vuole, si esegue qualunque cosa restituisca il modello e non ci si preoccupa del codice sottostante. Lo chiam\u00f2 vibe coding, non sapeva ancora quello che tutto ci\u00f2 avrebbe generato.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Il suo ambito era ristretto. Parlava di progetti da weekend, dove la posta in gioco \u00e8 quasi nulla, e lui \u00e8 un programmatore esperto che di aiuto non ha bisogno. Nel giro di un anno il termine \u00e8 stato scelto <a href=\"https:\/\/krdo.com\/news\/2025\/11\/06\/vibe-coding-named-collins-dictionarys-word-of-the-year\/\">come parola dell'anno da Collins<\/a> e ha finito per indicare qualsiasi codice scritto con un LLM, compreso quello curato e rivisto. Simon Willison <a href=\"https:\/\/simonwillison.net\/2025\/Mar\/19\/vibe-coding\/\">ha segnalato questa deriva a marzo 2025,<\/a>sostenendo che d\u00e0 un'idea sbagliata di come si fa programmazione assistita dall'AI fatta con responsabilit\u00e0.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Oggi la stessa etichetta copre sia il giocattolo del weekend sia il servizio di pagamenti su cui gira un'azienda, e un'affermazione sulla sicurezza vale poco quando la parola significa entrambe le cose.<\/p>\n\n\n\n<h2 id=\"why-so-many-teams-adopted-it\" class=\"wp-block-heading\"><strong>Perch\u00e9 cos\u00ec tanti team l'hanno adottato<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Karpathy ha costruito in circa un'ora un'app iOS funzionante in Swift, senza alcuna esperienza precedente con il linguaggio, e molti altri lo hanno seguito. <a href=\"https:\/\/survey.stackoverflow.co\/2025\/ai\">Secondo la survey di Stack Overflow,  nel 2025,<\/a> l'84% degli sviluppatori usa o prevede di usare strumenti di AI. Per prototipi e strumenti interni la velocit\u00e0 ripaga. I problemi arrivano quando la stessa abitudine incontra il codice che va in produzione.<\/p>\n\n\n\n<h2 id=\"working-code-and-safe-code-are-different-things\" class=\"wp-block-heading\"><strong>Codice funzionante e codice sicuro sono cose diverse<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Un modello viene addestrato a produrre codice che gira, e tratta la sicurezza come un aspetto secondario. Nel <a href=\"https:\/\/www.veracode.com\/press-release\/ai-generated-code-poses-major-security-risks-in-nearly-half-of-all-development-tasks-veracode-research-reveals\/\">rapporto Veracode 2025<\/a>, che ha coinvolto pi\u00f9 di 100 modelli e 80 compiti di programmazione, i modelli hanno scelto l'opzione insicura nel 45% dei casi. Entrambe le versioni funzionano, e quella insicura \u00e8 spesso il modello pi\u00f9 frequente nei dati di addestramento. Chi rivede il codice senza competenze di sicurezza non vede la differenza.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Altri studi mostrano andamenti simili, con cifre diverse. CodeRabbit <a href=\"https:\/\/www.theregister.com\/2025\/12\/17\/ai_code_bugs\/\">ha analizzato 470 pull request open source<\/a> e ha rilevato che quelle co-firmate dall'AI contenevano in media circa 1,7 volte pi\u00f9 problemi in totale e 2,74 volte pi\u00f9 vulnerabilit\u00e0 di cross-site scripting. GitGuardian <a href=\"https:\/\/gitguardian.com\/state-of-secrets-sprawl-report-2026\">ha registrato 28,65 milioni di credenziali sensibili, chiavi API, password, URL di database e token privati<\/a> scritti direttamente nel codice nei commit pubblici su GitHub nel 2025, il 34% in pi\u00f9 rispetto all'anno precedente. Nello stesso rapporto, i commit co-firmati con Claude Code hanno fatto trapelare segreti nel 3,2% dei casi, contro una media di riferimento dell'1,5%.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Uno <a href=\"https:\/\/arxiv.org\/abs\/2211.03622\">Studio di Stanford<\/a> ha rilevato che chi usava assistenti AI scriveva codice meno sicuro nei compiti sensibili, pur essendo pi\u00f9 convinto della sicurezza del proprio lavoro.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Anche i nomi dei pacchetti sono un punto debole. Uno <a href=\"https:\/\/www.usenix.org\/conference\/usenixsecurity25\/presentation\/spracklen\">studio presentato a USENIX Security 2025<\/a> ha generato 576.000 campioni di codice con 16 modelli: il 19,7% dei 2,23 milioni di pacchetti suggeriti non esisteva. Molti dei nomi inventati ricompaiono ripetendo lo stesso prompt, e questo consente agli autori di attacchi informatici di registrarli in anticipo e utilizzarli per insinuarsi nei sistemi, una tecnica nota come slopsquatting.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Anche sulla velocit\u00e0 c'\u00e8 un divario tra percezione e misurazione. In uno <a href=\"https:\/\/metr.org\/blog\/2025-07-10-early-2025-ai-experienced-os-dev-study\/\">studio randomizzato controllato di METR del 2025<\/a> (il <a href=\"https:\/\/arxiv.org\/abs\/2507.09089\">paper completo<\/a> \u00e8 su arXiv), gli sviluppatori esperti che usavano l'AI hanno impiegato il 19% di tempo in pi\u00f9 per completare i compiti, pur convinti di essere stati circa il 20% pi\u00f9 veloci. Lo studio era piccolo, con 16 sviluppatori che lavoravano su codebase che conoscevano bene con strumenti dei primi mesi del 2025, quindi non descrive ogni team. Mostra per\u00f2 che la percezione della propria velocit\u00e0 pu\u00f2 essere sbagliata, e i piani costruiti su quella percezione ereditano l'errore.<\/p>\n\n\n\n<h2 id=\"four-incidents-with-one-cause\" class=\"wp-block-heading\"><strong>Quattro incidenti, una sola causa<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A luglio 2025 l'agente AI di Replit (famosa piattaforma di Vibe Coding) ha cancellato il database di produzione dell'app di prova di Jason Lemkin, fondatore di SaaStr, nonostante un code freeze esplicito, <a href=\"https:\/\/incidentdatabase.ai\/reports\/5578\/\">facendo sparire i dati di circa 1.200 dirigenti e di quasi 1.200 aziende<\/a>. L\u2019agente di Replit gli ha detto che il ripristino era impossibile, ma non era vero. Il CEO dell\u2019azienda ha definito l\u2019episodio \u00abinaccettabile\u00bb e Replit <a href=\"https:\/\/www.theregister.com\/2025\/07\/22\/replit_saastr_response\/\">ha annunciato database separati per sviluppo e produzione<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Pochi giorni dopo la prima violazione di Tea (quella raccontata in apertura dell'articolo) <a href=\"https:\/\/www.security.org\/identity-theft\/breach\/tea-app\/\">, \u00e8 emersa una seconda esposizione di oltre 1,1 milioni di messaggi privati<\/a> , che ha portato a scatenare una class-action in California. <a href=\"https:\/\/cvemon.intruder.io\/cves\/CVE-2025-48757\">A maggio 2025, la CVE-2025-48757<\/a> ha mostrato come app costruite con Lovable e Supabase siano state rilasciate senza row-level security, la regola che impedisce a un utente di leggere i dati di un altro. La falla ha riguardato <a href=\"https:\/\/www.superblocks.com\/blog\/lovable-rls-breach\">303 endpoint in 170 dei 1.645 progetti analizzati<\/a>. All'inizio del 2026 Moltbook, un social network per agenti AI il cui fondatore ha dichiarato di averlo realizzato con il vibe coding, ha esposto circa 1,5 milioni di token di autenticazione API attraverso un database privo di row-level security, secondo i ricercatori di Wiz. <a href=\"https:\/\/www.infosecurity-magazine.com\/news\/moltbook-exposes-user-data-api\/\">ha esposto circa 1,5 milioni di token di autenticazione API<\/a> through a database without row-level security, according to researchers at Wiz.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ciascun caso si riduce a una misura di sicurezza di routine che un ingegnere esperto avrebbe aggiunto e che il modello ha omesso, perch\u00e9 il software funzionava lo stesso. Chi dava le istruzioni al modello non poteva accorgersi della lacuna, dato che riconoscerla \u00e8 proprio la competenza che lo strumento doveva avere.<\/p>\n\n\n\n<h2 id=\"keeping-the-speed-and-adding-the-review-back\" class=\"wp-block-heading\"><strong>Mantenere la velocit\u00e0 e reintrodurre la revisione<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Gli strumenti vanno tenuti. Dove non c'\u00e8 nulla da perdere, il modello pu\u00f2 andare libero. Dove ci sono dati reali e utenti reali, il codice generato va trattato come una prima bozza veloce che una persona legge e testa.  Una breve checklist aiuta:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Decide the stakes before you start. A throwaway prototype and a service holding personal data call for different rules.<\/li>\n\n\n\n<li>Tieni separati i database di anteprima, test e produzione. Cos\u00ec lo scenario peggiore viene eliminato alla radice.<\/li>\n\n\n\n<li>Verifica esplicitamente i controlli di accesso. Partite dal presupposto che il modello non li abbia aggiunti: chiedetevi se un utente pu\u00f2 leggere i dati di un altro e fate la prova.<\/li>\n\n\n\n<li>Prima di ogni merge, lancia scansioni automatiche. Cercate credenziali scritte nel codice e pacchetti inesistenti.<\/li>\n\n\n\n<li>Fai rivedere tutto ci\u00f2 che \u00e8 esposto agli utenti a una persona con competenze di sicurezza.<\/li>\n\n\n\n<li>Conserva un registro indipendente delle modifiche. Il resoconto che lo strumento fa delle proprie azioni pu\u00f2 essere sbagliato: l\u2019agente di Replit ha descritto in modo errato sia la cancellazione sia il ripristino.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Neodata realizza sistemi di AI, forte di oltre vent'anni di ingegneria enterprise. Se il tuo team sta correndo con codice generato dall'AI e volete un secondo paio d'occhi su ci\u00f2 che arriva in produzione, ne parliamo volentieri su <a href=\"https:\/\/neodatagroup.ai\/it\/\">neodatagroup.ai<\/a>.<\/p>","protected":false},"excerpt":{"rendered":"<p>In July 2025, a safety app left a storage bucket open to the internet. The bucket held the selfies and government IDs that users had uploaded to verify their accounts, and anyone with the URL could download them. Around 72,000 images were taken, about 13,000 of them verification selfies and IDs. Nobody had configured the [&hellip;]<\/p>\n","protected":false},"author":4,"featured_media":17787,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[32],"tags":[],"class_list":["post-17784","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Code that runs, code that holds: what vibe coding teaches us once it reaches production - Neodata Group<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/neodatagroup.ai\/it\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Code that runs, code that holds: what vibe coding teaches us once it reaches production - Neodata Group\" \/>\n<meta property=\"og:description\" content=\"In July 2025, a safety app left a storage bucket open to the internet. The bucket held the selfies and government IDs that users had uploaded to verify their accounts, and anyone with the URL could download them. Around 72,000 images were taken, about 13,000 of them verification selfies and IDs. Nobody had configured the [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/neodatagroup.ai\/it\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\/\" \/>\n<meta property=\"og:site_name\" content=\"Neodata Group\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-09T09:41:36+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-09T09:41:38+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/neodatagroup.ai\/wp-content\/uploads\/2026\/10\/Focused-Coder-at-Work.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"673\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Diego Arnone\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Diego Arnone\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\\\/\"},\"author\":{\"name\":\"Diego Arnone\",\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/#\\\/schema\\\/person\\\/b9077a754dd3ba30d66145cd549d2634\"},\"headline\":\"Code that runs, code that holds: what vibe coding teaches us once it reaches production\",\"datePublished\":\"2026-10-09T09:41:36+00:00\",\"dateModified\":\"2026-10-09T09:41:38+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\\\/\"},\"wordCount\":1035,\"publisher\":{\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/neodatagroup.ai\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/Focused-Coder-at-Work.png\",\"articleSection\":[\"News\"],\"inLanguage\":\"it-IT\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\\\/\",\"url\":\"https:\\\/\\\/neodatagroup.ai\\\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\\\/\",\"name\":\"Code that runs, code that holds: what vibe coding teaches us once it reaches production - Neodata Group\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/neodatagroup.ai\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/Focused-Coder-at-Work.png\",\"datePublished\":\"2026-10-09T09:41:36+00:00\",\"dateModified\":\"2026-10-09T09:41:38+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\\\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/neodatagroup.ai\\\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\\\/#primaryimage\",\"url\":\"https:\\\/\\\/neodatagroup.ai\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/Focused-Coder-at-Work.png\",\"contentUrl\":\"https:\\\/\\\/neodatagroup.ai\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/Focused-Coder-at-Work.png\",\"width\":1200,\"height\":673},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/neodatagroup.ai\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Code that runs, code that holds: what vibe coding teaches us once it reaches production\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/#website\",\"url\":\"https:\\\/\\\/neodatagroup.ai\\\/\",\"name\":\"Neodata Group S.r.l\",\"description\":\"AI for Business. Delivered.\",\"publisher\":{\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/neodatagroup.ai\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/#organization\",\"name\":\"Neodata Group S.r.l\",\"url\":\"https:\\\/\\\/neodatagroup.ai\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/neodatagroup.ai\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/logo_neodata-2.svg\",\"contentUrl\":\"https:\\\/\\\/neodatagroup.ai\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/logo_neodata-2.svg\",\"width\":207,\"height\":56,\"caption\":\"Neodata Group S.r.l\"},\"image\":{\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/neodatagroup.ai\\\/#\\\/schema\\\/person\\\/b9077a754dd3ba30d66145cd549d2634\",\"name\":\"Diego Arnone\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/e0734e479e6da2258d038c9e0073f286257055c36c9bb9661e604e939ee9fb94?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/e0734e479e6da2258d038c9e0073f286257055c36c9bb9661e604e939ee9fb94?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/e0734e479e6da2258d038c9e0073f286257055c36c9bb9661e604e939ee9fb94?s=96&d=mm&r=g\",\"caption\":\"Diego Arnone\"},\"description\":\"AI Evangelist and Marketing specialist for Neodata\",\"url\":\"https:\\\/\\\/neodatagroup.ai\\\/it\\\/author\\\/diego\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Il codice che gira e il codice che regge: cosa insegna il vibe coding quando arriva in produzione - Neodata Group","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/neodatagroup.ai\/it\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\/","og_locale":"it_IT","og_type":"article","og_title":"Code that runs, code that holds: what vibe coding teaches us once it reaches production - Neodata Group","og_description":"In July 2025, a safety app left a storage bucket open to the internet. The bucket held the selfies and government IDs that users had uploaded to verify their accounts, and anyone with the URL could download them. Around 72,000 images were taken, about 13,000 of them verification selfies and IDs. Nobody had configured the [&hellip;]","og_url":"https:\/\/neodatagroup.ai\/it\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\/","og_site_name":"Neodata Group","article_published_time":"2026-10-09T09:41:36+00:00","article_modified_time":"2026-10-09T09:41:38+00:00","og_image":[{"width":1200,"height":673,"url":"https:\/\/neodatagroup.ai\/wp-content\/uploads\/2026\/10\/Focused-Coder-at-Work.png","type":"image\/png"}],"author":"Diego Arnone","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Diego Arnone","Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/neodatagroup.ai\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\/#article","isPartOf":{"@id":"https:\/\/neodatagroup.ai\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\/"},"author":{"name":"Diego Arnone","@id":"https:\/\/neodatagroup.ai\/#\/schema\/person\/b9077a754dd3ba30d66145cd549d2634"},"headline":"Code that runs, code that holds: what vibe coding teaches us once it reaches production","datePublished":"2026-10-09T09:41:36+00:00","dateModified":"2026-10-09T09:41:38+00:00","mainEntityOfPage":{"@id":"https:\/\/neodatagroup.ai\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\/"},"wordCount":1035,"publisher":{"@id":"https:\/\/neodatagroup.ai\/#organization"},"image":{"@id":"https:\/\/neodatagroup.ai\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\/#primaryimage"},"thumbnailUrl":"https:\/\/neodatagroup.ai\/wp-content\/uploads\/2026\/10\/Focused-Coder-at-Work.png","articleSection":["News"],"inLanguage":"it-IT"},{"@type":"WebPage","@id":"https:\/\/neodatagroup.ai\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\/","url":"https:\/\/neodatagroup.ai\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\/","name":"Il codice che gira e il codice che regge: cosa insegna il vibe coding quando arriva in produzione - Neodata Group","isPartOf":{"@id":"https:\/\/neodatagroup.ai\/#website"},"primaryImageOfPage":{"@id":"https:\/\/neodatagroup.ai\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\/#primaryimage"},"image":{"@id":"https:\/\/neodatagroup.ai\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\/#primaryimage"},"thumbnailUrl":"https:\/\/neodatagroup.ai\/wp-content\/uploads\/2026\/10\/Focused-Coder-at-Work.png","datePublished":"2026-10-09T09:41:36+00:00","dateModified":"2026-10-09T09:41:38+00:00","breadcrumb":{"@id":"https:\/\/neodatagroup.ai\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/neodatagroup.ai\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\/"]}]},{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/neodatagroup.ai\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\/#primaryimage","url":"https:\/\/neodatagroup.ai\/wp-content\/uploads\/2026\/10\/Focused-Coder-at-Work.png","contentUrl":"https:\/\/neodatagroup.ai\/wp-content\/uploads\/2026\/10\/Focused-Coder-at-Work.png","width":1200,"height":673},{"@type":"BreadcrumbList","@id":"https:\/\/neodatagroup.ai\/code-that-runs-code-that-holds-what-vibe-coding-teaches-us-once-it-reaches-production\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/neodatagroup.ai\/"},{"@type":"ListItem","position":2,"name":"Code that runs, code that holds: what vibe coding teaches us once it reaches production"}]},{"@type":"WebSite","@id":"https:\/\/neodatagroup.ai\/#website","url":"https:\/\/neodatagroup.ai\/","name":"Neodata Group S.r.l","description":"AI for Business. Delivered.","publisher":{"@id":"https:\/\/neodatagroup.ai\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/neodatagroup.ai\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"it-IT"},{"@type":"Organization","@id":"https:\/\/neodatagroup.ai\/#organization","name":"Neodata Group S.r.l","url":"https:\/\/neodatagroup.ai\/","logo":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/neodatagroup.ai\/#\/schema\/logo\/image\/","url":"https:\/\/neodatagroup.ai\/wp-content\/uploads\/2026\/04\/logo_neodata-2.svg","contentUrl":"https:\/\/neodatagroup.ai\/wp-content\/uploads\/2026\/04\/logo_neodata-2.svg","width":207,"height":56,"caption":"Neodata Group S.r.l"},"image":{"@id":"https:\/\/neodatagroup.ai\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/neodatagroup.ai\/#\/schema\/person\/b9077a754dd3ba30d66145cd549d2634","name":"Diego Arnone","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/secure.gravatar.com\/avatar\/e0734e479e6da2258d038c9e0073f286257055c36c9bb9661e604e939ee9fb94?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/e0734e479e6da2258d038c9e0073f286257055c36c9bb9661e604e939ee9fb94?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/e0734e479e6da2258d038c9e0073f286257055c36c9bb9661e604e939ee9fb94?s=96&d=mm&r=g","caption":"Diego Arnone"},"description":"AI Evangelist e Marketing specialist per Neodata","url":"https:\/\/neodatagroup.ai\/it\/author\/diego\/"}]}},"_links":{"self":[{"href":"https:\/\/neodatagroup.ai\/it\/wp-json\/wp\/v2\/posts\/17784","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/neodatagroup.ai\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/neodatagroup.ai\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/neodatagroup.ai\/it\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/neodatagroup.ai\/it\/wp-json\/wp\/v2\/comments?post=17784"}],"version-history":[{"count":9,"href":"https:\/\/neodatagroup.ai\/it\/wp-json\/wp\/v2\/posts\/17784\/revisions"}],"predecessor-version":[{"id":17796,"href":"https:\/\/neodatagroup.ai\/it\/wp-json\/wp\/v2\/posts\/17784\/revisions\/17796"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/neodatagroup.ai\/it\/wp-json\/wp\/v2\/media\/17787"}],"wp:attachment":[{"href":"https:\/\/neodatagroup.ai\/it\/wp-json\/wp\/v2\/media?parent=17784"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/neodatagroup.ai\/it\/wp-json\/wp\/v2\/categories?post=17784"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/neodatagroup.ai\/it\/wp-json\/wp\/v2\/tags?post=17784"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}