Hoe een artikel hier gemaakt wordt
Negen geautomatiseerde rollen maken hier de artikelen, en publiceren doet er tot nu toe geen. Dit is de hele route, en de grens die ik stap voor stap verleg.
Dit artikel is geschreven door AI.

Een artikel op Nieuwslab passeert negen rollen voordat het bestaat, en geen ervan kan het publiceren. Signaleren, onderzoeken, schrijven, bronnen controleren, redigeren, beeld erbij zoeken: allemaal geautomatiseerd. De laatste handeling nog niet. Een tekst komt op dit moment pas op de site als ik hem er zelf op zet, het liefst zonder er iets aan te veranderen, want het idee is juist te laten zien wat AI kan. Die laatste handeling is de grens die ik stap voor stap verleg.
Op de over-pagina staat dat in een paar zinnen. Dit is het lange “hoe”. De rollen en de route beschrijf ik hier volledig.
De route van signaal naar bestand
De signaleerder kijkt wat er speelt in het vakgebied en stelt onderwerpen voor, met een invalshoek erbij. Geen kaal thema als “AI en auteursrecht”, maar de vraag die het de moeite waard maakt. Wat overblijft wordt een dossier: een onderwerp, een invalshoek en een set bronnen.
De onderzoeker leest die bronnen helemaal uit en haalt er feiten en citaten uit, tot een plafond van vijfentwintig feiten en tien citaten. Daarna velt hij twee oordelen. Is het onderwerp schrijfbaar (ja, dun of nee), en klopt de invalshoek nog met wat er werkelijk in de bronnen staat (ja, deels of nee). Het oordeel gaat bij het dossier, en aan een “nee” begint de schrijver niet. Dat is de eerste plek waar de keten zichzelf tegenhoudt.
De schrijver maakt het artikel op basis van het dossier en de stijlgids. Hij mag niet putten uit wat het model verder nog denkt te weten: elke bewering in de tekst moet herleidbaar zijn naar een bron uit het dossier, en die bron wordt in de lopende tekst genoemd. Dat is geen vormvereiste. Het is de enige manier waarop de stap erna kan controleren of er iets verzonnen is.
Want dan komt de bronnenchecker. Die legt het concept naast de volledige bronteksten, niet naast een samenvatting ervan, en meldt uitsluitend afwijkingen: getallen, citaten, links en beweringen die niet terugkomen in de bron of er anders in staan. Wat klopt levert geen bevinding op, alleen een telling. Het rapport dat eruit komt is dus per definitie een lijst met problemen.
Hoe zwaar die problemen wegen, bepaalt de bronnenchecker niet. Dat doet een aparte stap, die elke bevinding los beoordeelt en er blokkerend, twijfel of opmerking op plakt. Die scheiding is er met opzet: wie een fout vindt, is geneigd hem belangrijk te vinden. Bij blokkerend gaat het artikel niet door zoals het is. Dat is de tweede plek waar de keten zichzelf tegenhoudt.
De eindredacteur repareert daarna op die bevindingen en toetst de tekst aan de stijlgids. Zijn hoofdregel is minimale ingreep: hij verandert wat een bevinding of een stijlregel afdwingt en laat de rest letterlijk staan, ook waar hij het zelf anders zou hebben geschreven. De kop raakt hij niet aan. Vindt hij die niet meer kloppen, dan levert hij een alternatief in als voorstel en laat de keuze aan mij.
Dan is er nog een producent, en die schrijft niets. Hij zet de tekst om in het bestandsformaat van de site, met de gegevens die erbij horen (datum, categorie, leestijd, een samenvatting in punten), zet dat bestand op een aparte tak van de code en opent een pull request. Daar houdt de automatisering op.
Halverwege augustus kwam er een achtste rol bij, en die komt rechtstreeks uit de reacties. Toen ik dit project op LinkedIn liet zien, kwam er naast belangstelling ook kritiek: de artikelen kloppen, maar ze lezen stroef. Die kritiek was raak. Elke rol in de keten wordt beloond voor controleerbaarheid, en niemand had de lezer als klant. Zo krijg je proza waarin elk voorbehoud netjes staat en geen zin je vasthoudt.
Daarom zit er nu een leesredacteur tussen de schrijver en de bronnenchecker. Die herschrijft voor ritme: lange en korte zinnen afwisselen, één mededeling per zin, elk “dus” waarmaken of schrappen. Aan getallen, citaten en bronvermeldingen mag hij niet komen. Bronnen krijgt hij ook niet, en dat is opzet: wat hij niet heeft, kan hij niet toevoegen. En verschuift zijn herformulering toch ergens een betekenis, dan botst die een stap later tegen de volledige bronteksten.
Dit artikel was zijn eerste tekst, nog buiten de pijplijn, om te zien of hij herschrijft zonder bij te verzinnen. Sindsdien draait hij gewoon mee.
De negende rol is de beeldredacteur, en die komt pas ná de producent, want pas dan bestaat er een bestand om beeld aan toe te voegen. Hij kiest een hero, laat die maken en zet hem erbij. Een grafiek maakt hij alleen als een alinea drie of meer vergelijkbare getallen bevat, en elk getal in die grafiek moet woordelijk in de tekst staan. Anders gaat de grafiek niet mee. Zo kan hij geen cijfer de site op smokkelen dat nooit tegen een bron is gelegd.
Waar de mens in de keten zit
Zo’n pull request is een voorstel tot wijziging, geen wijziging. De site bouwt er wel een voorvertoning van op een eigen webadres, zodat ik het artikel kan lezen zoals het eruit zou zien. Live gaat het pas op het moment dat ik het voorstel samenvoeg met de echte site. Dat is één handeling, die ik doe, en er is geen route die eromheen loopt: geen van de rollen heeft schrijfrechten op de site zelf.
Het aardige is dat die opzet meteen een archief oplevert. Van het artikel over algoritmische abonnementsprijzen kun je in de geschiedenis van de site precies teruglezen wat de machine maakte en wat ik erna heb gedaan. Er staat één opslagmoment met de tekst zoals de pijplijn hem afleverde, en daarna een handvol van mij: een nieuwe kop, drie geherformuleerde zinnen, een gecorrigeerde prijsvergelijking en een aangepast webadres. Bijna acht uur na het voorstel heb ik het geheel samengevoegd en stond het online. Beide versies blijven bestaan, naast elkaar.
Daar zit ook de reden dat ik dit werk vertrouw genoeg om het te publiceren, en niet meer dan dat. Ik kan het verschil zien.
Waar de grens heen gaat
Die ene handeling van mij is de stand van nu, niet het ontwerp voor altijd. Ik wil weten wat er gebeurt als de keten het hele proces doet, tot en met het publiceren. Daarom verleg ik de grens stap voor stap, en niet in één keer: elke stap moet eerst laten zien wat er misgaat voordat de volgende komt.
Wat er per artikel wel en niet door mijn handen ging, staat boven het artikel zelf. Daar meldt de site of een mens de tekst vóór publicatie heeft gezien, of niet. Twee dingen veranderen niet, hoe ver de grens ook opschuift. De geschiedenis van de site bewaart wat de machine maakte en wat ik eraan deed. En de eindverantwoordelijkheid blijft bij mij, ook voor een stuk dat ik pas na publicatie lees.
Wat dit niet is
Dit is nog geen redactie die zichzelf runt. De keten levert een voorstel af en verder niets. Ze heeft sinds eind juli tien artikelen geleverd, en bij de meeste daarvan heb ik na het lezen iets veranderd. Bij het eerste, dat over algoritmische abonnementsprijzen, verving ik de kop, paste ik drie formuleringen aan en corrigeerde ik de prijsvergelijking; er gingen daarna nog twee correctierondes overheen. De twee oudste stukken op deze site zijn ook met AI geschreven, maar van vóór deze route. Zakt het aantal ingrepen ooit naar nul, dan is dat geen bewijs dat het systeem klaar is, maar een reden om beter te kijken. Dat geldt des te meer naarmate ik de keten meer uit handen geef.
Dit stuk zelf is trouwens de uitzondering. Het is niet door de pijplijn gegaan, want er is geen dossier met bronnen over mijn eigen werkwijze. Het is geschreven met AI op basis van de code, de geschiedenis van deze site en mijn eigen aantekeningen, door mij nagelopen en aangepast, en het is precies zo min door AI gepubliceerd als de rest.
De opzet die hierboven staat, is die van begin september 2026. Er gaat elke week wel iets aan veranderen. Wat er verandert, en wat er weer stukgaat, schrijf ik op.


