AI-hallucinaties uitgelegd: waarom taalmodellen dingen verzinnen en hoe ze te verminderen

  1. Home
  2. Blog
  3. Kunstmatige intelligentie

Kunstmatige intelligentie

AI-hallucinaties uitgelegd: Waarom taalmodellen dingen verzinnen en hoe je deze kunt verminderen

Een taalmodel kan een zelfverzekerd, goed geschreven antwoord geven dat eenvoudigweg onjuist is. Ontdek waarom dit gebeurt, welke vormen het aanneemt en praktische manieren om dit te verminderen en te detecteren in uw eigen AI-functies.

8 min leestijd
AI-hallucinaties uitgelegd: waarom taalmodellen dingen verzinnen en hoe je dit kunt verminderen

Belangrijkste punten

  • Er wordt een AI-hallucinatie weergegeven die plausibel klinkt, maar onwaar is of niet wordt ondersteund.
  • Modellen voorspellen waarschijnlijke tekst. Ze hebben geen ingebouwde manier om te weten wat waar is.
  • Gefundeerde antwoorden in vertrouwde bronnen, duidelijke aanwijzingen en geautomatiseerde controles verminderen hallucinaties.
  • Geen enkele huidige techniek verwijdert ze volledig, dus belangrijke outputs moeten nog steeds worden geverifieerd.

Een support-chatbot vertelt een klant dat terugbetalingen 14 dagen duren. Het echte beleid luidt: 7. Het antwoord was vloeiend, beleefd en verkeerd. Dit is een AI-hallucinatie en het is een van de belangrijkste redenen waarom AI-functies zorgvuldig moeten worden ontworpen en getest.

Deze gids legt de oorzaken in heldere bewoordingen uit en richt zich op praktische preventie. De automatische controle aan het einde is een klein Python-script dat we hebben uitgevoerd op basis van voorbeeldantwoorden die we zelf hebben geschreven. Het werd niet uitgevoerd tegen een live AI-model.

Wat is een AI-hallucinatie?

Er is sprake van een hallucinatie wanneer een generatief AI-systeem inhoud produceert die feitelijk onjuist is, verzonnen is of niet wordt ondersteund door de verstrekte informatie, terwijl deze als waar wordt gepresenteerd. De term is een metafoor. Het model ziet geen dingen. Het genereert tekst die past in het patroon van een goed antwoord, zonder gebonden te zijn aan feiten.

Het gevaarlijke deel is het vertrouwen. Een gehallucineerd antwoord ziet er meestal precies zo uit als een juist antwoord, met dezelfde toon, structuur en details.

Waarom taalmodellen hallucineren

Een groot taalmodel wordt getraind om het volgende stuk tekst, een token, te voorspellen op basis van patronen in een enorme hoeveelheid trainingsgegevens. Daaruit volgen een aantal zaken:

  • Plausibel is niet hetzelfde als waar. Het model leert hoe antwoorden er doorgaans uitzien. Als de feiten ontbreken, kan de meest waarschijnlijk ogende voortzetting nog steeds worden bedacht.
  • Huizen en grenswaarden. Trainingsgegevens bevatten hiaten en eindigen op een bepaalde datum. Het model kan ontbrekende feiten aanvullen in plaats van te zeggen dat het het niet weet.
  • Training beloont antwoorden. Onderzoek, waaronder een OpenAI-paper uit 2025 over waarom modellen hallucineren, stelt dat gangbare trainings- en evaluatiemethoden het raden belonen in plaats van het toegeven van onzekerheid, vergelijkbaar met een meerkeuzetoets zonder straf voor foute antwoorden.
  • Dubbelzinnige aanwijzingen. Vage vragen nodigen het model uit om details aan te nemen.
  • Lange of rommelige context. Belangrijke feiten kunnen over het hoofd worden gezien als ze verborgen zijn in lange invoer.

Veel voorkomende soorten hallucinaties

Typ Voorbeeld
Verzonnen feiten Een verkeerde datum, getal of statistiek
Valse bronnen Citaties, artikelen of URL’s die niet bestaan
Ontrouwe samenvattingen Een samenvatting die claims toevoegt die niet in het document staan
Verzonnen code Aanroepen van functies of pakketten die niet bestaan
Verkeerde redenering Elke stap ziet er goed uit, maar de conclusie volgt niet
Vals vertrouwen Een vraag beantwoorden waarop geen betrouwbaar antwoord bestaat

Onderzoekers splitsen deze vaak op in feitelijkheidsfouten, die in tegenspraak zijn met de echte wereld, en trouw fouten, die in tegenspraak zijn met het bronmateriaal dat aan het model werd gegeven. Voor zakelijke apps die op uw eigen documenten zijn gebouwd, kunt u de betrouwbaarheid meestal het meest direct testen.

Verzonnen code verdient een speciale waarschuwing. Als een assistent voorstelt een pakket te installeren dat niet bestaat, kan een aanvaller een kwaadaardig pakket onder die naam publiceren. Controleer of elke voorgestelde afhankelijkheid reëel en vertrouwd is voordat u deze installeert.

Waar het er het meest toe doet

Een gehallucineerd filmfeit is onschadelijk. Een gehallucineerde medicijndosis, juridisch citaat, terugbetalingsbeleid of financieel cijfer is dat niet. Er zijn goed gerapporteerde gevallen waarin advocaten rechtszaken hebben ingediend met citaten uit de zaak, uitgevonden door AI-tools. Rangschik uw gebruiksscenario’s op basis van de kosten van een verkeerd antwoord en pas de sterkste controles toe als de kosten hoog zijn.

Hoe hallucinaties te verminderen

  1. Onderbouw het antwoord op betrouwbare gegevens. Geef het model de relevante feiten in plaats van te vertrouwen op het geheugen ervan.
  2. Sta ‘Ik weet het niet’ toe. Laat het model expliciet zeggen wanneer de informatie niet beschikbaar is, en beschouw dat als een goed resultaat.
  3. Wees specifiek. Duidelijke, beperkte vragen laten minder ruimte voor uitvindingen. Onze snelle technische handleiding behandelt dit gedetailleerd.
  4. Vraag om citaten of citaten uit de aangeboden bronnen en verifieer deze vervolgens automatisch.
  5. Gebruik gestructureerde uitvoer, zoals JSON met vaste velden, zodat antwoorden gemakkelijker te valideren zijn.
  6. Gebruik tools voor zaken waar modellen zwak in zijn, zoals berekeningen, datums en live opzoeken van gegevens.
  7. Houd een mens op de hoogte bij beslissingen waarbij veel op het spel staat.

Aarden met je eigen data

Retrieval-augmentedgeneration (RAG) is het meest voorkomende aardingspatroon. Het systeem doorzoekt uw documenten op passages die relevant zijn voor de vraag en neemt deze op in de prompt, met instructies om alleen vanuit die passages te antwoorden. Het reduceert verzonnen feiten scherp, maar het is geen geneesmiddel. Het model kan een passage nog steeds verkeerd lezen, passages verkeerd combineren of terugvallen op zijn eigen kennis, en de zoekstap kan de verkeerde documenten opleveren. Geaarde systemen hebben dus nog steeds controles nodig.

Tip: Registreer de opgehaalde passages naast elk antwoord. Wanneer een verkeerd antwoord wordt gerapporteerd, kunt u snel zien of het ophalen is mislukt of dat het model de goede context heeft genegeerd. De oplossing is voor iedereen verschillend.

Een eenvoudige automatische controle

Hier is een goedkope beveiliging die we hebben gebouwd: markeer elk getal in een antwoord dat niet in de brontekst voorkomt. Het is grof, maar cijfers als prijzen, dagen en limieten zijn precies waar kostbare hallucinaties de kop opsteken.

import re

SOURCE = """Refunds are paid within 7 days to the original payment method.
Orders over 1000 rupees ship free. Standard delivery takes 3 to 5 working days."""

def unsupported_numbers(answer, source):
    found = set(re.findall(r"\d+", answer))
    allowed = set(re.findall(r"\d+", source))
    return sorted(found - allowed, key=int)

We hebben drie antwoorden getest die zijn geschreven om de typische modeluitvoer te imiteren:

grounded     -> no unsupported numbers
hallucinated -> ['14', '500']
partly       -> ['1']

Het “gehallucineerde” antwoord eiste een terugbetaling binnen 14 dagen en gratis verzending van meer dan 500 roepies, en beide cijfers werden betrapt. Het antwoord “gedeeltelijk” had correcte levertijden, maar voegde “of 1 dag met express” toe, wat het beleid nooit vermeldt, en dat werd ook betrapt. Een tweede controle verifieert of de geciteerde zinnen ook daadwerkelijk in de bron voorkomen:

{'paid within 7 days': True, 'no questions asked': False}

Deze controles hebben duidelijke grenzen. Ze missen verkeerde woorden, eenheden en niet-ondersteunde claims zonder cijfers, en ze zouden ten onrechte een correcte berekening markeren. Veel teams voegen een stap ‘LLM als rechter’ toe, waarbij een tweede model elke claim vergelijkt met de bronnen. Dat vangt meer op, maar het kan ook fout zijn, dus meet dat eens.

Testen op hallucinaties

Beschouw het hallucinatiepercentage als een kwaliteitsmaatstaf die je meet, en niet als een gevoel. Een praktische aanpak:

  • Bouw een testset van echte vragen met bekende correcte antwoorden en bronnen.
  • Voeg vragen toe die het systeem moet weigeren, omdat het antwoord niet in de gegevens staat.
  • Scoor antwoorden op correctheid, trouw aan bronnen en passende weigeringen.
  • Voer de set uit bij elke wijziging in aanwijzingen, modellen of ophaalinstellingen.
  • Voorbeeldproductiegesprekken voor menselijke beoordeling.

De discipline van regressietesten is hier ook van toepassing: een vaste reeks cases, die bij elke verandering wordt uitgevoerd, waarbij de resultaten in de loop van de tijd worden vergeleken. Bij het kiezen van de manier waarop een systeem moet worden geaard, verklaart onze vergelijking van RAG versus fijnafstemming versus snelle engineering de afwegingen.

Advies voor dagelijkse gebruikers

  • Verifieer feiten, cijfers, citaten en citaten uit de originele bron.
  • Wees vooral voorzichtig met medische, juridische en financiële informatie.
  • Plak de brontekst erin en vraag de assistent om alleen vanuit deze tekst te antwoorden.
  • Vraag: “Hoe zelfverzekerd ben je, en waar is dit op gebaseerd?”, Maar onthoud dat het antwoord ook verkeerd kan zijn.

Kunnen hallucinaties geëlimineerd worden?

Niet met de huidige technologie. Nieuwere modellen en betere training hebben het aantal hallucinaties op veel benchmarks verminderd, en aarden helpt veel, maar elk systeem maakt nog steeds fouten. Het realistische doel is om fouten zeldzaam, gemakkelijk te detecteren en weinig impact te maken door middel van systeemontwerp, testen en duidelijke signalen naar gebruikers.

Hallucinaties in AI-coderingstools

Ontwikkelaars worden dagelijks geconfronteerd met hallucinaties in codeerassistenten: een methode die niet bestaat in een klasse, een verouderde configuratieoptie of een zelfverzekerde verklaring van een fout die in werkelijkheid door iets anders wordt veroorzaakt. De verdedigingen zijn degene die je al gebruikt voor menselijke code. Compileer of typecontrole het resultaat, voer de tests uit en lees de officiële documentatie voor elke API die u nog niet eerder hebt gebruikt. Wees extra voorzichtig met beveiligingsgevoelige code, zoals authenticatie, cryptografie en invoervalidatie, waarbij plausibel ogende code op subtiele wijze onveilig kan zijn. Beschouw AI-suggesties als een concept van een snelle maar onbetrouwbare collega: vaak nuttig, nooit automatisch correct.

Tot slot

Hallucinaties komen voort uit de manier waarop taalmodellen werken: ze genereren waarschijnlijke tekst, geen gecontroleerde feiten. Je kunt ze niet uitschakelen, maar je kunt er wel omheen ontwerpen. Grond antwoorden op basis van vertrouwde gegevens, laat het model zeggen “Ik weet het niet”, voeg automatische controles toe voor de details die er toe doen en meet de resultaten voortdurend.

Veelgestelde vragen

Wat is een AI-hallucinatie?

Het is wanneer een AI-systeem valse of niet-ondersteunde informatie produceert en deze als waar presenteert, zoals een verzonnen statistiek, citaat of beleidsdetail.

Waarom hallucineren AI-modellen?

Taalmodellen voorspellen waarschijnlijke tekst op basis van patronen, niet op basis van geverifieerde feiten. Hiaten in de trainingsgegevens, vage aanwijzingen en training die gokken beloont, maken hallucinaties waarschijnlijker.

Stopt RAG hallucinaties?

Het verkleint deze door het model betrouwbare informatie te geven, maar houdt ze niet tegen. Het model kan bronnen nog steeds verkeerd lezen en bij het ophalen kunnen de verkeerde documenten worden geretourneerd.

Hoe kun je AI-hallucinaties detecteren?

Vergelijk antwoorden met brondocumenten, controleer cijfers en citaten automatisch, gebruik een tweede model om claims te verifiëren en bekijk voorbeelden met mensen.

Zullen AI-hallucinaties ooit verdwijnen?

De tarieven dalen naarmate de modellen verbeteren, maar geen enkele huidige methode kan deze volledig verwijderen. Belangrijke resultaten behoeven nog steeds controles en menselijke beoordeling.

Blijf leren

Werk met Stack Quora

Hulp nodig met testen, WordPress of SEO?

We helpen teams betere software te leveren en hun sites te laten groeien. Vertel ons waar u mee bezig bent en wij stellen een duidelijke volgende stap voor.

Blijf lezen

Meer handleidingen over testen, AI en moderne ontwikkeling

Genoten van dit artikel? Kies een onderwerp en ga direct naar onze nieuwste tutorials.

Kunstmatige intelligentie

AI-hallucinaties uitgelegd: waarom taalmodellen dingen verzinnen en hoe ze te verminderen

AI-hallucinaties uitgelegd: wat ze zijn, waarom taalmodellen ze produceren, veelvoorkomende typen, hoe je ze kunt verminderen met aarding en aanwijz…

Lees artikel →
DevOps

Omgevingsvariabelen uitgelegd: .env-bestanden, geheimen en configuratie goed gedaan

Omgevingsvariabelen uitgelegd met Python-voorbeelden die we hebben uitgevoerd: ze lezen en instellen, waarom elke waarde een string is, .env-bestand…

Lees artikel →
Softwareontwikkeling

API-snelheidsbeperking uitgelegd: algoritmen, headers en afhandeling van 429-fouten

API-snelheidsbeperking uitgelegd met een simulatie die we hebben uitgevoerd: token-bucket, vast venster, schuifvenster, 429 reacties, headers van sn…

Lees artikel →
Testautomatisering

Spotten in Python: unittest.mock, patch en de fouten die tests doen liegen

Spotten in Python met unittest.mock, getest: Mock en return_value, side_effect, patchen waar een naam wordt gebruikt, spec en autospec, spotdatums e…

Lees artikel →
Softwaretesten

Codedekking uitgelegd: lijn versus filiaaldekking en wat 100% werkelijk betekent

Codedekking uitgelegd met een echte dekking.py-run: dekking van lijnen, vertakkingen en condities, een rapport lezen, waarom 100% dekking nog steeds…

Lees artikel →
Databases & SQL

DELETE versus TRUNCATE versus DROP in SQL: verschillen, terugdraaien en wanneer elk te gebruiken

DELETE versus TRUNCATE versus DROP uitgelegd met geteste SQL: wat elk verwijdert, terugdraaien, triggers, identiteitsreset, snelheid en hoe PostgreS…

Lees artikel →
Databases & SQL

SQL-weergaven uitgelegd: creëer, gebruik en vermijd de valkuilen, met voorbeelden

SQL-weergaven uitgelegd met query's die we hebben uitgevoerd: een weergave maken, live resultaten, kolommen verbergen, prestaties, bijwerkbare en ge…

Lees artikel →
Softwareontwikkeling

TypeScript-interface versus type: echte verschillen, getest met de compiler

TypeScript-interface versus type, gecontroleerd met de echte compiler: wat beide kunnen doen, wat slechts één kan doen, samenvoegen van declaraties,…

Lees artikel →
Softwareontwikkeling

Python *args en **kwargs uitgelegd: flexibele functies met duidelijke voorbeelden

Python *args en **kwargs uitgelegd met code die we hebben uitgevoerd: in- en uitpakken, parametervolgorde, argumenten die alleen trefwoorden en posi…

Lees artikel →
Softwareontwikkeling

Python Lambda-functies: syntaxis, echt gebruik en wanneer u ze niet moet gebruiken

Python lambda-functies uitgelegd met code die we hebben uitgevoerd: syntaxis, sorteren met sleutel, kaart en filter, sluitingen, de laat-bindende va…

Lees artikel →
Kunstmatige intelligentie

Wat zijn AI-agenten? Hoe ze werken, met een eenvoudige agentloop die u kunt uitvoeren

Wat zijn AI-agenten? Een duidelijke gids voor de agentenlus, tools, geheugen en vangrails, met een kleine Python-lus die we hebben uitgevoerd, echte…

Lees artikel →
DevOps

Monitoring versus waarneembaarheid: het echte verschil, met logboeken, statistieken en sporen

Monitoring versus waarneembaarheid uitgelegd: bekende en onbekende fouten, logboeken, statistieken en sporen, een walkthrough voor afrekenincidenten…

Lees artikel →
DevOps

Docker-volumes versus bindingsmounts: bewaar containergegevens op de juiste manier

Docker-volumes versus bind-mounts uitgelegd: waarom containergegevens verdwijnen, benoemde volumes, bind-mounts, tmpfs, Compose-voorbeelden, back-up…

Lees artikel →
Testautomatisering

TDD versus BDD: belangrijkste verschillen, één functie die op beide manieren is gebouwd en wanneer deze moet worden gebruikt

TDD versus BDD uitgelegd met één kortingsfunctie die in beide richtingen is gebouwd: rood-groen-refactor met code die we hebben uitgevoerd, gegeven-…

Lees artikel →
Softwaretesten

Gebruikersacceptatietesten (UAT): proces, checklist en echte voorbeelden

Gebruikersacceptatietesten uitgelegd: wie voert het uit, hoe het verschilt van QA, een proces in zeven stappen, een UAT-testcase-sjabloon, een check…

Lees artikel →
Databases & SQL

SQL NULL-waarden uitgelegd: IS NULL, COALESCE, NULLIF en de te vermijden vallen

SQL NULL-waarden uitgelegd met query's die we hebben uitgevoerd: logica met drie waarden, IS NULL, COALESCE, NULLIF, hoe aggregaten, joins en sorter…

Lees artikel →
Databases & SQL

SQL CASE WHEN-instructie: syntaxis, echte voorbeelden en veelvoorkomende fouten

SQL CASE WHEN uitgelegd met vragen die we hebben uitgevoerd: eenvoudige en doorzochte formulieren, volgorde van de voorwaarden, draaipunten met SUM,…

Lees artikel →
Softwareontwikkeling

Wat is JWT? JSON-webtokens uitgelegd met een werkend voorbeeld

Wat is JWT? JSON Web Tokens uitgelegd: de drie delen, een token gebouwd en waarmee is geknoeid in de code die we hebben uitgevoerd, JWT versus sessi…

Lees artikel →
Softwareontwikkeling

JavaScript-gebeurtenislus uitgelegd: call-stack, microtaken en timers met voorbeelden

De JavaScript-gebeurtenislus uitgelegd met code die we hebben uitgevoerd: call-stack, taak- en microtask-wachtrijen, waarom setTimeout 0 niet onmidd…

Lees artikel →
Softwareontwikkeling

Python-generatoren en opbrengst uitgelegd: bespaar geheugen met echte voorbeelden

Python-generatoren en opbrengst uitgelegd met code die we hebben uitgevoerd: hoe ze pauzeren en hervatten, gemeten geheugenbesparingen, pijplijnen, …

Lees artikel →
Kunstmatige intelligentie

Wat zijn inbeddingen? Vectoren en cosinusovereenkomst eenvoudig uitgelegd

Wat zijn insluitingen? Een gids in duidelijke taal over vectoren, cosinusovereenkomst en semantisch zoeken, met een klein voorbeeld dat we hebben ui…

Lees artikel →
DevOps

Implementatie van blauwgroen versus kanarie: verschillen, afwegingen en hoe te kiezen

Blauw-groen versus kanarie-implementatie uitgelegd: hoe elk werkt, kosten, risico's en terugdraaien, stabiele gebruikersbucket die we hebben getest,…

Lees artikel →
Testautomatisering

Schilferige tests: wat de oorzaak ervan is en hoe u ze voorgoed kunt oplossen

Zwakke tests uitgelegd met demo's die we hebben uitgevoerd: de belangrijkste oorzaken, hoe je er een kunt bevestigen en diagnosticeren, goede oploss…

Lees artikel →
Softwaretesten

Belastingtesten versus stresstesten: verschillen, statistieken en k6-voorbeelden

Belastingtesten versus stresstesten uitgelegd: wat elk bewijst, piek- en soak-tests, de statistieken die er toe doen, waarom gemiddelden misleiden, …

Lees artikel →
Softwaretesten

Testcase versus testscenario: belangrijkste verschillen, voorbeelden en wanneer deze te gebruiken

Testcase versus testscenario uitgelegd: duidelijke definities, een tabel naast elkaar, één functie voor het opnieuw instellen van wachtwoorden, over…

Lees artikel →
Databases & SQL

Optimalisatie van SQL-query's: lees uitvoeringsplannen en repareer langzame query's, met timing

Optimalisatie van SQL-query's getest op een miljoen rijen: lees uitvoeringsplannen, voeg de juiste indexen toe, repareer niet-sargeerbare filters, g…

Lees artikel →
Databases & SQL

SQL UNION versus UNION ALL: verschillen, voorbeelden en geteste prestaties

SQL UNION versus UNION ALL uitgelegd met de query's die we hebben uitgevoerd: duplicaten, de regels volgen beide, een echte databug, gemeten prestat…

Lees artikel →
Softwareontwikkeling

JavaScript Fetch API-tutorial: GET, POST, foutafhandeling en time-outs

Een JavaScript Fetch API-tutorial getest tegen een lokale server: GET en POST, waarom 404 niet gooit, een herbruikbare helper, queryreeksen, time-ou…

Lees artikel →
Softwareontwikkeling

Python-bestandsverwerking: lezen, schrijven, CSV, JSON en pathlib met voorbeelden

Het verwerken van Python-bestanden uitgelegd met code die we hebben uitgevoerd: open modi, met het lezen van grote bestanden, CSV, JSON, pathlib, bi…

Lees artikel →
Softwareontwikkeling

Python-klassen en -objecten: OOP-zelfstudie met echte voorbeelden

Python-klassen en -objecten uitgelegd met code die we hebben uitgevoerd: __init__, methoden, klasse versus instantie-attributen, overerving, eigensc…

Lees artikel →
Kunstmatige intelligentie

Wat is een groot taalmodel? Hoe LLM's werken, uitgelegd zonder de hype

Wat is een groot taalmodel? LLM's uitgelegd in duidelijke taal: tokens, inbedding, aandacht, training, temperatuur- en contextvensters, een kleine d…

Lees artikel →
DevOps

Linux-opdrachten voor beginners: de essentiële terminalgids met voorbeelden

Linux-opdrachten voor beginners, gegroepeerd op taak: navigatie, bestanden, logboeken bekijken, grep, pipelines, machtigingen, processen en archieve…

Lees artikel →
Testautomatisering

Selenium versus toneelschrijver: belangrijkste verschillen, code vergeleken en welke te kiezen

Selenium versus Playwright vergeleken: architectuur, wachten, browser- en taalondersteuning, debuggen, dezelfde test in beide tools, migratieadvies …

Lees artikel →
Softwaretesten

Equivalentiepartitionering: testontwerptechniek uitgelegd met uitgewerkte voorbeelden

Equivalentiepartitionering uitgelegd: hoe je geldige en ongeldige partities kunt vinden, uitgewerkte voorbeelden voor leeftijden, wachtwoorden en ko…

Lees artikel →
Softwaretesten

Ernst versus prioriteit bij het testen van software: verschillen, matrix en echte voorbeelden

Ernst versus prioriteit bij het testen van software uitgelegd: duidelijke definities, een vierwegmatrix met voorbeelden, niveauschalen, wie deze bep…

Lees artikel →
Databases & SQL

Tutorial voor SQL-subquery's: typen, gecorreleerde subquery's en BESTAAN met voorbeelden

Een SQL-subquery-tutorial met query's die we hebben uitgevoerd: scalaire, IN-, FROM- en SELECT-subquery's, gecorreleerde subquery's, EXISTS, de NOT …

Lees artikel →
Databases & SQL

SQL-transacties en ACID uitgelegd: COMMIT-, ROLLBACK- en isolatieniveaus

SQL-transacties en ACID uitgelegd met een bankoverschrijving die we hebben uitgevoerd: COMMIT, ROLLBACK, savepoints, locks, isolatieniveaus, dirty r…

Lees artikel →
Softwareontwikkeling

Git merge vs rebase: verschillen, voorbeelden en wanneer je wat gebruikt

Git merge vs rebase uitgelegd met echte logoutput, een vergelijkingstabel, de gouden regel van rebase en een veilige teamwerkwijze.

Lees artikel →
Softwareontwikkeling

Python list comprehension: syntaxis, voorbeelden en wanneer je het vermijdt

Python list comprehension uitgelegd: syntaxis, filteren, if-else, geneste lussen, gemeten tijden en wanneer een gewone for-lus beter is.

Lees artikel →
Databases & SQL

SQL JOIN uitgelegd met voorbeelden (Inner, Left, Right, Full)

Begrijp SQL joins stap voor stap met voorbeeldtabellen en queries: INNER, LEFT, RIGHT, FULL, CROSS en SELF, plus veelgemaakte fouten en prestatietips.

Lees artikel →