HomeErvaringVaardighedenProjectenBlogContact
Alle artikelen

Stop met copy-paste engineering

Laten we de "corporate" taal even overboord gooien. Als senior developer zie ik de bui namelijk al hangen: we zijn collectief een generatie "copy-paste engineers" aan het kweken die op topsnelheid richting een ravijn rennen. Het probleem is niet dat AI dom is; het probleem is dat AI overtuigend is, zelfs als het klinkklare onzin verkoopt.

Hier is de rauwe waarheid over waarom je die "magic button" nooit moet indrukken voor logica die boven je eigen pet gaat.

De "gestoorde professor" in je codebase

Stel je voor: je huurt een assistent in die 10.000 boeken heeft gelezen, maar nog nooit een dag in de echte wereld heeft gewerkt. Dat is een coding agent. Hij kan je een briljante oplossing geven voor een complex probleem in Rust of Go, maar hij begrijpt de consequenties niet. Het afgelopen jaar zagen we dit bij de "AI Package Hallucination" aanvallen. Onderzoekers van Lasso Security ontdekten dat AI's vaak verwijzen naar libraries die helemaal niet bestaan. Hackers zagen dit, registreerden die namen op npm of PyPI met kwaadaardige code erin, en voilà: je hebt malware in je systeem gepusht omdat je de code die de agent schreef niet zelf kon valideren. Jij dacht dat je een handige helper had; in werkelijkheid heb je een achterdeur opengezet voor hackers omdat je te lui was om de import-logica zelf te checken.

Het "student die zijn eigen examen nakijkt" syndroom

Je zegt dat je de tests ook door de AI laat schrijven? Gefeliciteerd, je hebt zojuist een echoput gebouwd. In de software-engineering noemen we dit confirmation bias op steroïden. Als een agent een subtiele fout maakt in een algoritme, laten we zeggen een O(n²) operatie waar een O(n log n) nodig is, dan zal de test die diezelfde agent genereert alleen controleren of de output klopt voor kleine datasets. De agent "weet" immers niet dat de code efficiënt moet zijn; hij weet alleen wat hij zojuist heeft geschreven. Je krijgt een groen vinkje, gaat rustig slapen, en wordt de volgende dag wakker met een gecrashte server omdat je productie-data 100 keer groter was dan je test-data. Je hebt geen kwaliteit gecontroleerd; je hebt alleen gevraagd: "Vind je jezelf een goede programmeur?" en de AI zei "Ja".

De AWS- en Cloudflare-lessen: automatisering is een vermenigvuldiger

Kijk naar de grote incidenten van eind 2024 en begin 2025. Hoewel de specifieke details vaak achter NDA's verdwijnen, wijzen rapporten van onder andere Snyk en Datadog op een stijgende lijn in "automated misconfigurations". Bij een grote cloud-outage vorig jaar bleek dat een AI-agent een reeks Terraform-scripts had aangepast om "kosten te besparen". De wijzigingen waren technisch correct volgens de syntax, maar de engineers die de code goedkeurden begrepen de diepere netwerk-implicaties niet. Ze vertrouwden op de snelheid van de agent. Het resultaat? Een cascade-fout die een hele regio platlegde. De les: AI maakt je fouten niet minder, het maakt ze alleen sneller en groter. Als jij de logica niet zelf kunt uitschrijven, ben je geen piloot, maar een passagier in een vliegtuig zonder piloot.

Waarom jouw brein de enige echte debugger is

Software schrijven is voor 10% typen en voor 90% nadenken over randgevallen. Een agent is een kampioen in die 10%, maar een amateur in die 90%. Uit een veelgeciteerd onderzoek van de Universiteit van New York (NYU) bleek dat ongeveer 40% van de code gegenereerd door AI-tools beveiligingslekken bevat. Waarom? Omdat AI getraind is op alle code op internet, inclusief de troep die studenten in 2012 op GitHub gooiden. Als jij die code accepteert zonder het fundamentele inzicht om de kwetsbaarheid te herkennen, ben jij degene die verantwoordelijk is wanneer de data op straat ligt. Je kunt tegen je CEO niet zeggen: "Maar de chatbot zei dat het veilig was." De rechter in de Air Canada-zaak (2024) was daar heel duidelijk over: een bedrijf is 100% verantwoordelijk voor de onzin die hun AI uitkraamt. Dat geldt voor chatbots, en dat geldt dubbel voor je broncode.

Wil je de bronnen zelf checken?

Mijn advies? Gebruik die agent voor je boilerplate, voor je saaie CSS-classes of om een regex uit te leggen. Maar zodra het aankomt op je business logica, je beveiliging of je database-integriteit: leg die agent het zwijgen op en pak zelf het toetsenbord.