codesmid

BLOG

Vibe coding: wat het is, en waarom wij er geen bedrijfssoftware mee bouwen

Vibe coding is software bouwen door een AI te vertellen wat je wilt, zonder de code zelf te lezen of te begrijpen. Voor een prototype is dat geweldig. Voor software waar een bedrijf elke dag op draait, niet. Dat zeg ik niet als iemand die AI wantrouwt: ik schrijf zelf elke dag code met AI. Maar in een recent project, gebouwd met AI door mensen die weten wat ze doen, kwamen we toch problemen tegen die een vibe coder nooit had gezien. Hieronder welke, en waar het verschil zit.

Raffael, Software-architect ·

Artikel

Wat is vibe coding?

De term komt van Andrej Karpathy, medeoprichter van OpenAI. Op 2 februari 2025 beschreef hij een manier van programmeren waarbij je je volledig overgeeft aan de AI en vergeet dat de code bestaat. Je beschrijft wat je wilt, de AI schrijft het, en werkt het niet, dan plak je de foutmelding terug tot het wel werkt. Collins Dictionary riep het uit tot woord van het jaar 2025.

Het kernpunt zit niet in het gebruik van AI, maar in dat laatste deel: de code niet lezen en niet begrijpen. Zolang het werkt, is het goed. Dat gaat precies mis bij alles wat je niet ziet als het werkt: beveiliging, gedrag met echte hoeveelheden data, en wat er gebeurt als er iets kapotgaat.

Gebruiken wij dan geen AI om te programmeren?

Jawel. AI maakt ons sneller, net zoals betere tools dat altijd hebben gedaan. Maar het werk dat een systeem goed maakt, verschuift daardoor niet naar de AI. Iemand moet beslissen hoe het systeem in elkaar zit, welke gegevens waar staan en wie waar bij mag. Iemand moet lezen wat de AI voorstelt en zien wanneer het fout is. En iemand moet weten welke vragen je stelt voordat er één regel code bestaat. Dat is het werk van een ervaren ontwikkelaar, met of zonder AI.

Na acht jaar software bouwen zitten de grootste beslissingen niet in de code zelf, maar in architectuur, beveiliging, compliance en schaalbaarheid. Daar neemt AI je niets uit handen. Het bouwt wat je vraagt, ook als je het verkeerde vraagt, en het vertelt je niet wat je vergeten bent.

Wat er misging in ons eigen project, gebouwd met AI

Een voorbeeld uit de praktijk: een recent project, gebouwd met veel hulp van AI en inmiddels in productie. Alles hieronder is opgelost voordat het een probleem werd. Toch kwamen we onderweg vier soorten problemen tegen. Niet omdat de AI slechte code schreef, maar omdat dit dingen zijn die je alleen vindt als je weet waar je moet kijken.

ProbleemHoe het zich liet zienWat we nu standaard doen
Gegevens die niemand noemdeEen klant had in de specificatie alleen naam, KVK, factuurmail en betaaltermijn. Een formulier verderop vroeg elke keer om een adres. Locaties, tarieven en documenten kwamen pas na de schermen die ze nodig hadden.Per gegeven van elk onderdeel vooraf één concrete vraag stellen
Gaten in de beveiligingEen functie in de database was zonder inloggen aan te roepen, waardoor je een controle bij het aanmelden kon overslaan. En er zat een route in waarmee een account overgenomen had kunnen worden.Gevoelige functies alleen voor de server, auditlog in dezelfde transactie, en een test die alle rechten controleert
Traag met echte dataMet testdata was alles snel. Met echte data riepen beveiligingsregels per rij een functie aan, deden pagina's tot zo'n twintig databasevragen na elkaar, en duurde een veelgebruikte pagina 274 milliseconden in plaats van 80.Automatische prestatiecontroles op elke databasewijziging
AI-sessies die elkaar in de weg zatenMeerdere sessies tegelijk maakten databasewijzigingen met hetzelfde nummer. Eén wijziging aan een functie ging stilletjes verloren. Samenvoegingen zonder conflict braken toch de build.Vaste volgorde voor databasewijzigingen, en de deploy weigert wat niet klopt

Waarom een vibe coder deze problemen niet had gezien

Kijk naar de tabel en vraag je af: had de software 'gewerkt'? Ja. Elk scherm deed wat het moest doen. De beveiligingsgaten waren onzichtbaar, want niemand probeert de database rechtstreeks aan te roepen tijdens een demo. De traagheid was onzichtbaar, want testdata is klein. De verloren wijziging was onzichtbaar, want er kwam geen foutmelding.

Dat is precies de valkuil van vibe coding. 'Het werkt' is de enige controle, en juist de gevaarlijkste problemen werken prima tot het moment dat ze dat niet meer doen. Wij vonden ze omdat we wisten dat ze er konden zitten, en omdat we tests en controles hebben gebouwd die ze opsporen. Elke les uit dat project is nu een automatische check die bij elke wijziging draait.

Wat gaat er nog meer mis bij vibe-coded software?

Wat wij tegenkwamen, is wat er misgaat als je wél weet wat je doet. Bij software die gebouwd is zonder dat iemand de code begrijpt, komt daar nog een rij bij. Dat het geen theorie is, blijkt uit onderzoek: in 2025 bleek dat 170 van 1.645 onderzochte apps, gebouwd met een populair vibe-coding-platform, een lek hadden waardoor iedereen persoonsgegevens kon inzien.

Wat ontbreektWat er dan gebeurt
TestsElke wijziging kan iets anders kapotmaken, en je merkt het pas als een klant belt
Beveiliging per gebruikerGebruikers kunnen elkaars gegevens zien of aanpassen
Een doordacht databaseontwerpHet werkt met tien klanten en loopt vast bij duizend
Iemand die de code begrijptBij een fout kan niemand uitzoeken waar het zit, ook de bouwer niet
Back-upsEén verkeerde actie en je gegevens zijn weg, zonder weg terug
MonitoringEen storing duurt tot iemand toevallig klaagt
ComplianceGeen verwerkersovereenkomst, onbekend waar de data staat, geen logging van wie wat deed

Wanneer is vibe coding wel prima?

Voor een prototype. Wil je een idee testen, een scherm laten zien aan een paar klanten of uitzoeken of iets de moeite waard is, dan is vibe coding een snelle en goedkope manier. Daar is het voor bedoeld, en dat raden we ondernemers zelfs aan.

Het gaat mis op het moment dat het prototype stilletjes het systeem wordt. Er komen echte klanten in, echte persoonsgegevens, echte facturen. Dan is het geen experiment meer, en gelden andere eisen. Het verstandige moment om opnieuw te bouwen, met wat je van het prototype leerde, is vóórdat dat gebeurt.

Hoe herken je of software gevibecodeerd is?

Heb je software laten bouwen, of een offerte gekregen die verdacht snel en goedkoop is? Stel de bouwer deze vragen. Je hoeft de antwoorden niet technisch te begrijpen. Of er een duidelijk antwoord komt, zegt genoeg.

VraagGoed antwoordWaarschuwingssignaal
Zijn er automatische tests?Ja, ze draaien bij elke wijziging'We testen het handmatig' of een stilte
Hoe is geregeld wie welke gegevens mag zien?Per rol vastgelegd en getest'Dat zit in de app' zonder uitleg
Waar staan mijn gegevens, en is er een verwerkersovereenkomst?In de EU, en jaWeet niet waar het draait
Hoe vaak is er een back-up, en is terugzetten getest?Dagelijks, en jaWel back-ups, nooit teruggezet
Hoe merk je dat het systeem plat ligt?Monitoring met een melding'Dan bellen jullie ons'
Kan iemand anders de code overnemen?Ja, het is leesbaar en gedocumenteerdAlleen de bouwer, en die begrijpt het eigenlijk ook niet

AI schrijft de code, iemand moet het begrijpen

AI heeft het schrijven van code sneller gemaakt, en dat is goed nieuws. Maar het moeilijke deel van software is nooit het typen geweest. Het is weten wat je moet bouwen, waar het mis kan gaan en hoe je het jarenlang draaiend houdt.

Daar zit het verschil tussen een demo en een systeem. AI versnelt het bouwen. Een ervaren ontwikkelaar zorgt dat wat er gebouwd wordt ook over drie jaar nog veilig, snel en uitlegbaar is. Het een vervangt het ander niet.

Veelgestelde vragen

Wat je waarschijnlijk wilt weten.

Wat betekent vibe coding?+

Vibe coding betekent software laten schrijven door AI op basis van een beschrijving, zonder dat je de code zelf leest of begrijpt. Werkt iets niet, dan geef je de foutmelding terug aan de AI tot het werkt. De term is in februari 2025 bedacht door Andrej Karpathy.

Is vibe coding slecht?+

Nee, voor een prototype of een experiment is het een snelle en goedkope manier om een idee te testen. Het wordt een probleem als het prototype ongemerkt de software wordt waar je bedrijf op draait, met echte klanten en persoonsgegevens.

Gebruikt codesmid AI om te programmeren?+

Ja, als gereedschap dat ons sneller maakt. De architectuur, de beveiliging en de controle op wat er gebouwd wordt, blijven het werk van een ervaren ontwikkelaar. Wij lezen wat de AI voorstelt en bouwen tests en controles die fouten vangen voordat ze in productie komen.

Over ons →
Kan ik een gevibecodeerd prototype laten doorbouwen?+

Vaak is het prototype vooral waardevol als specificatie: het laat zien wat je wilt. Of je de code kunt hergebruiken, hangt af van hoe het is opgezet. Meestal is opnieuw bouwen, met het prototype als voorbeeld, sneller en veiliger dan repareren.

Wat kost maatwerk software? →

Contact

Hier zelf mee aan de slag?

Plan een vrijblijvende intake. We kijken naar jouw proces en waar een model, regels of een mens het beste past. Reactie binnen 1 werkdag.

Of mail ons op info@codesmid.nl