Naar de inhoud

Begrip

Technische schuld: lenen bij je eigen software

Waarom elke snelle oplossing rente kost bij de volgende wijziging, hoe je die rente in uren meet en wanneer afbetalen loont.

Het planbord van het DA Logistics-platform met demodata en de chauffeursapp op een gsm: software die elke dag draait en waar je technische schuld laag wil houden
Technische schuld
Technische schuld is het extra werk dat je later betaalt omdat software sneller of goedkoper gebouwd werd dan goed was: elke volgende wijziging kost meer tijd, tot je de schuld afbetaalt.
Ook genoemdtechnical debttech debtachterstallig onderhoud in code

Door , Oprichter en CEO

6 min lezen
Op deze pagina
  1. 01Tijd winnen nu, rente betalen later
  2. 02Hoofdsom en rente
  3. 03Bewust of per ongeluk, roekeloos of verstandig
  4. 04Drie schulden die we vaak tegenkomen
  5. 05De rente in uren en euro

Tijd winnen nu, rente betalen later

Technische schuld merk je pas als een kleine wijziging plots dagen duurt. Het werkt als een lening. Je wint nu tijd, een snellere lancering of een lagere offerte, en betaalt daarna rente bij elke aanpassing: een uur extra hier, een dag zoeken daar, een update die je niet durft te installeren.

Technische schuld zit niet alleen in maatwerk. Een WordPress-site met twintig plug-ins die niemand bijwerkt, een Excel met macro's die alleen de zaakvoerder begrijpt, een koppeling die met plakband aan elkaar hangt: het zijn allemaal leningen. Onderzoekers kwamen in 2016 op het Dagstuhl-seminarie tot een werkdefinitie: keuzes in ontwerp of code die op korte termijn handig zijn, maar toekomstige wijzigingen duurder of onmogelijk maken. Ook een app die een AI-model schreef zonder dat iemand de code las, vibe coding, is een lening die je later terugbetaalt.

Sinds Ward Cunningham in 1992

  1. 26 maart 1992Cunningham bedenkt de metafoorIn een ervaringsverslag voor de conferentie OOPSLA over WyCash, software voor beleggingsportefeuilles, schrijft Ward Cunningham dat code voor het eerst opleveren is als schulden maken.
  2. 2009Cunningham legt het opnieuw uitIn een video van vijf minuten vertelt hij hoe de metafoor ontstond, verdedigt hij ze als argument om code te herschrijven en rekent hij af met hoe ze vaak verkeerd begrepen wordt.
  3. 14 oktober 2009Fowler maakt er vier soorten vanMartin Fowler deelt schuld in langs twee assen: voorzichtig of roekeloos, bewust of onbewust.
  4. April 2016Een gedeelde definitieOnderzoekers en bedrijven leggen op het Dagstuhl-seminarie 16162 een werkdefinitie vast, sindsdien de 16162-definitie genoemd.
  5. 21 mei 2019Rente in dagenFowler rekent het voor: een functie van vier dagen kost met rommelige code zes, en opruimen kost vijf.

Hoofdsom en rente

Cunningham schreef in 1992 dat een beetje schuld de ontwikkeling versnelt, zolang je ze snel terugbetaalt met een herschrijving. Het gevaar begint als je ze niet terugbetaalt: elke minuut die je doorbrengt in niet helemaal juiste code telt als rente. Volgens hem kunnen hele ontwikkelteams stilvallen onder die last.

Martin Fowler maakte er in 2019 een rekensom van. Met een heldere opbouw kost een nieuwe functie vier dagen; met de rommel die er nu zit, zes. Die twee dagen zijn de rente. De rommel opruimen kost vijf dagen: dat is de hoofdsom. Voor een functie loont afbetalen niet, voor drie wel. En een nuance die vaak vergeten wordt: rente betaal je alleen wanneer je dat stuk software aanraakt. Rommelige code die je nooit verandert, mag blijven liggen; waar je elke week aan werkt, moet proper.

Bewust of per ongeluk, roekeloos of verstandig

Niet elke schuld is een fout. Fowler zet ze in een raster met twee vragen: wist het team dat het een schuld aanging, en was dat een verstandige keuze?

SoortHoe het klinktWat je ermee doet
Bewust en voorzichtigWe gaan live voor de beurs en ruimen de week erna op.Plan de opruimronde meteen in, met een datum.
Bewust en roekeloosGeen tijd voor tests, het moet morgen af.Stop ermee: de rente komt binnen weken, niet maanden.
Onbewust en roekeloosEr komt een plug-in bij voor elke vraag.Laat iemand met ervaring de basis nakijken.
Onbewust en voorzichtigNa een jaar weet je hoe het had gemoeten.Normaal. Herschrijf wat je vaak aanraakt.

De laatste soort is volgens Fowler onvermijdelijk, ook bij de beste teams: je leert terwijl je bouwt. Een MVP gaat bijna altijd een bewuste schuld aan, en dat mag, als de opruimronde in de planning staat. In Scrum hoort dat werk gewoon in de sprints thuis, niet op een lijst voor later.

Een jaar lang de rente in uren

Opgetelde extra uren, een jaar lang

  • Rente blijven betalen: 8 uur per maand
  • Afbetalen: 60 uur in maand 1, daarna 1 uur per maand
1007550250
96 uur71 uur

Na ruim 8 maanden is afbetalen goedkoper

036912

maand, uur

Vier soorten schuld, naar Martin Fowler

Bewust of onbewust

Bewust en voorzichtig

We gaan live voor de beurs en ruimen de week erna op.

Bewust en roekeloos

Geen tijd voor tests, het moet morgen af.

Onbewust en voorzichtig

Na een jaar weet je hoe het had gemoeten.

Onbewust en roekeloos

Er komt een plug-in bij voor elke vraag, niemand kijkt wat hij doet.

Voorzichtig of roekeloos

Een rekenvoorbeeld, geen klant. Aan 75 euro per uur kost een jaar rente 7.200 euro; afbetalen kost 5.325 euro en de site is daarna sneller te veranderen.

Drie schulden die we vaak tegenkomen

De WordPress-site met twintig plug-ins. Stel: een groothandel heeft een WordPress-site uit 2019 met 23 plug-ins, waarvan een deel al jaren geen update kreeg, op een server met PHP 7.4. Die versie krijgt sinds 28 november 2022 geen beveiligingsupdates meer; WordPress raadt vandaag PHP 8.3 of hoger aan en waarschuwt dat oudere versies je site blootstellen aan lekken. Ook PHP 8.2 valt op 31 december 2026 uit de ondersteuning. Overstappen gaat niet, want twee plug-ins werken niet op een nieuwere versie. Elke kleine wijziging, een nieuw blok op de productpagina, een veld in het formulier, kost drie uur in plaats van een, omdat iemand eerst moet uitzoeken wat er breekt. Of WordPress veilig is, hangt precies daarvan af; vaak is het ook waarom WordPress zo traag wordt.

De Excel die een platform werd. Een transportbedrijf plant zijn ritten in een Excel met macro's, gebouwd door de zaakvoerder op een zondag. Het werkte voor vijf chauffeurs. Bij twintig is elke nieuwe klant een nieuw tabblad, kan maar een persoon tegelijk plannen en weet niemand meer welke formule wat doet. Ook dat is technische schuld, en de rente zit in de uren van de planner. Wanneer overstappen loont, staat in planning in Excel of software en in van Excel naar een eigen platform.

De rente in uren en euro

Reken het uit zoals een lening. Neem de site van de groothandel: vier wijzigingen per maand die elk twee uur extra kosten, is acht uur rente per maand. Aan 75 euro per uur is dat 600 euro per maand, 7.200 euro per jaar, zonder dat er iets bij komt. Afbetalen: de plug-ins van 23 naar 12, PHP naar 8.4, het thema opgekuist, zestig uur werk of 4.500 euro. Daarna blijft er hooguit een uur rente per maand over. Na een jaar heb je 71 uur betaald in plaats van 96: 5.325 euro tegenover 7.200, en het kantelpunt ligt na ruim acht maanden.

Wat niet in die som staat, is het risico. Een site op een PHP-versie zonder beveiligingsupdates kan op een dag gehackt zijn, en dan kost het herstel meer dan het hele opruimwerk. Wat een site per jaar aan onderhoud vraagt, lees je in wat een website per jaar kost; de keuze tussen een nieuwe basis en verder bouwen op de oude, in maatwerk of WordPress.

Afbetalen zonder alles te herbouwen

  1. Maak de inventarisVersies van PHP, framework en plug-ins, wat geen updates meer krijgt, en welke delen niemand durft aan te raken.
  2. Meet waar de rente zitNoteer een maand lang hoeveel uur elke wijziging kost en waar die tijd naartoe gaat. Dat zijn je dure plekken.
  3. Begin waar je vaak komtRuim eerst op wat je elke maand verandert. Wat stabiel is en zelden wijzigt, mag wachten.
  4. Span een vangnetTests en een back-up met een geoefende terugweg, voor je iets herschrijft. Zonder vangnet wordt opruimen zelf een risico.
  5. Betaal vast afEen vast deel van elke werkronde gaat naar opruimen, niet een groot project om de drie jaar.

Eerlijke antwoorden over oude code

Is technische schuld altijd slecht?

Nee. Bewust lenen om een beurs, een seizoen of een eerste klant te halen, kan een goede keuze zijn. Het wordt een probleem als niemand de opruimronde plant, of als de schuld onbewust groeit omdat er geen ervaren blik op de basis is.

Hoe meet je technische schuld?

In uren: hoeveel langer duurt een wijziging dan ze zou moeten duren, en hoe vaak doe je zo'n wijziging. Daarnaast de harde signalen: software zonder beveiligingsupdates, versies die je niet kan bijwerken, delen zonder tests. Een exact getal bestaat niet, een goede schatting wel.

Wie draait op voor technische schuld bij een bureau?

Wie de software bezit, en dat ben jij. Laat daarom in de offerte zetten welke versies gebruikt worden, hoe lang ze ondersteund worden, wie updates doet en of er tests meekomen. Een lage offerte zonder die afspraken is vaak een lening op jouw naam.

Herbouwen of opruimen?

Opruimen als de basis gezond is en de schuld in een paar plekken zit. Herbouwen als de basis zelf het probleem is, zoals een versie die nergens meer naartoe kan, of als het opruimen meer kost dan opnieuw beginnen met de kennis van nu.

Software op maat

Hoe VBS schuld afbouwt zonder alles te herbouwen

We kijken eerst waar je schuld zit en wat ze je per maand kost, en zeggen dan eerlijk of opruimen, verhuizen of herbouwen het goedkoopst is. Voor SN Group verhuisden we de site van een Vite-SPA naar een statische export met een echte 404-pagina, redirects en canonical-tags, zonder adressen te verliezen. In onze eigen platformen houden we de rente laag: het platform van DA Logistics had op 27 augustus 2026 1.396 tests over 117 bestanden. Bekijk software op maat, website laten maken of plan een gesprek.

Technische schuld in uren en euro, voor je site of tool

We zetten op een rij wat je software je per maand aan rente kost en wat afbetalen oplevert, en jij beslist.

Optioneel, als je liever gebeld wordt.

Wat wil je bereiken, en wat staat er al?

We gebruiken je gegevens alleen om je te antwoorden.