← Nieuwste papers
💻 computer science

Where Did the Variability Go? From Vibe Coding to Product Lines by Regeneration

Dit artikel stelt "Variability by Regeneration" (VbR) voor, een nieuwe aanpak voor softwareproductlijnen waarbij een LLM fungeert als een afleidingsmotor om op basis van declaratieve specificaties doelgerichte, dode-codevrije binaire bestanden te genereren tijdens de generatietijd, wat het beheer van variabiliteit effectief verschuift van de code zelf naar de specificatie in het tijdperk van AI-gestuurde "vibe coding".

Oorspronkelijke auteurs: Xhevahire Tërnava

Gepubliceerd 2026-06-19
📖 5 min leestijd🧠 Diepgaand

Oorspronkelijke auteurs: Xhevahire Tërnava

Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer

Het Grote Probleem: De "Magische" Code die Niet Kan Veranderen

Stel je voor dat je een supergetalenteerde chef (een AI) inhuurt om een maaltijd voor je te koken. Je zegt tegen hen: "Ik wil een pittige pasta." Ze koken direct een perfect, dampend bord pittige pasta voor je.

Stel je nu voor dat je van gedachten verandert en zegt: "Eigenlijk, maak hem mild." In de traditionele kookstijl zou je de chef gewoon vragen om de kruiden aan te passen. Maar in deze nieuwe stijl van koken (genoemd "Vibe Coding") past de chef niet alleen de kruiden aan; de chef gooit het hele bord weg en kookt een splinternieuw bord vanaf nul op basis van je nieuwe verzoek.

Het probleem is dat het eerste bord pittige pasta nu nutteloos voor je is. Je kunt het niet veranderen in milde pasta. Het is een "enkeldoel"-artefact. Als je een andere versie van de software wilt, moet je de AI elke keer vragen om een volledig nieuw bestand te genereren.

De Ontdekking: Waar zijn de "Opties" Gebleven?

De onderzoekers keken naar 10 verschillende softwareprojecten die op deze manier zijn gemaakt. Ze ontdekten iets verrassends: de "opties" zijn verdwenen.

In de ouderwetse software is de code als een Zwitsers zakmes. Het heeft een mesje, een schroevendraaier en een kurkentrekker ingebouwd. Je draait simpelweg aan de schakelaar (een instelling) om het gereedschap te gebruiken dat je nodig hebt. De code bevat alle gereedschappen, zelfs de gereedschappen die je op dit moment niet gebruikt.

Maar bij "Vibe Coding" bouwt de AI geen Zwitsers zakmes. De AI bouwt een gereedschap met één enkel doel.

  • Als je om een mes vroeg, bouwt de AI een mes.
  • Als je om een schroevendraaier vroeg, bouwt de AI een schroevendraaier.
  • De "mes"-versie heeft geen onderdelen van een schroevendraaier in zich, en de "schroevendraaier"-versie heeft geen onderdelen van een mes.

De onderzoekers noemen dit "near-zero variability" (bijna nul variabiliteit). Alle beslissingen over wat de software is, worden genomen op het exacte moment dat de AI de code schrijft. Zodra de code is geschreven, staat deze vast. Er zijn geen schakelaars meer om om te zetten.

De Oplossing: "Variability by Regeneration" (VbR)

In plaats van te proberen de AI te dwingen om een gigantisch, complex Zwitsers zakmes te bouwen (wat de code rommelig en moeilijk te begrijpen maakt), stellen de auteurs een nieuwe manier voor om dit aan te pakken, genaamd Variability by Regeneration (VbR).

Denk hierbij aan een Maatpakkenwinkel versus een Warenhuis.

  • De Ouderwetse Manier (Warenhuis): Je koopt een pak dat extra stof heeft ingenaaid, knopen die je niet nodig hebt en zakken die je nooit zult gebruiken, alleen maar zodat je het later kunt "configureren". Het is zwaar en vol met overtollig gewicht.
  • De VbR-Manier (Maatpakkenwinkel): Je hebt een Master Blueprint (een specificatie).
    1. Je zegt tegen de winkel: "Ik heb een pak nodig voor een bruiloft."
    2. De AI (de kleermaker) kijkt naar de blauwdruk en naait direct een perfect, lichtgewicht pak dat precies bij die bruiloft past. Het heeft geen extra stof.
    3. Later zeg je: "Ik heb een pak nodig voor een strandfeestje."
    4. De AI probeert niet de bruiloft-outfit aan te passen. De AI kijkt opnieuw naar de blauwdruk en naait een splinternieuw, perfect strandpak.

In dit systeem leeft de "variabiliteit" (het vermogen om verschillende pakken te hebben) niet in de kleding zelf. Het leeft in de Blauwdruk.

Hoe het in de Praktijk Werkt

Het artikel demonstreert dit met een klassiek computertool genaamd wc (die woorden in een bestand telt).

  1. De Blauwdruk: De ontwikkelaar schrijft één eenvoudig bestand (een YAML-bestand) waarin alle mogbare functies staan vermeld: "Lijnen tellen", "Woorden tellen", "Tekens tellen", enzovoort.
  2. De Generatie: Wanneer een gebruiker een specifieke versie wil (bijv. "Ik wil alleen lijnen tellen"), leest de AI de blauwdruk, ziet dat verzoek, en genereert een piepklein, supersnel programma dat alleen dat ene ding doet.
  3. De Dispatcher (De Ober): Omdat de AI drie verschillende programma's heeft gemaakt (één voor lijnen, één voor woorden, één voor alles), hoe weet de computer dan welk programma hij moet draaien?
    • De onderzoekers hebben een "Waiter" (een dispatcher) gebouwd.
    • Je typt een commando in. De Wacht houdt je commando in de gaten, controleert de menukaart (het manifest) en voert direct het specifieke programma uit dat bij je verzoek past.
    • Jij, de gebruiker, ziet de verschillende programma's nooit. Je ziet gewoon één tool die magisch van gedrag verandert.

Waarom Dit Belangrijk Is

De auteurs stellen dat we niet moeten proberen "Vibe Coding" te repareren door de AI te dwingen om "schakelaars" terug in de code te plaatsen. Dat werkt het doel van de nieuwe technologie tegen.

In plaats daarvan moeten we accepteren dat de code bedoeld is om wegwerpbaar en specifiek te zijn.

  • Oude Manier: Houd één groot, rommelig codebestand met alle opties erin verstopt.
  • Nieuwe Manier (VbR): Houd één schoon specificatiebestand (de regels) aan, en laat de AI elke keer een vers, perfect, "vrij van dode code"-programma genereren wanneer je een andere versie nodig hebt.

Samenvatting

Het artikel beweert dat we in het tijdperk van AI-codering het vermogen hebben verloren om een enkel programma aan te "passen". In plaats daarvan creëert de AI een nieuw programma voor elke behoefte. De auteurs stellen voor om dit te omarmen door de regels (specificatie) als de permanente meester te beschouwen, en de code als een tijdelijk, perfect product dat telkens opnieuw wordt gegenereerd wanneer de regels veranderen. Het gaat niet om het repareren van de code; het gaat om het regenereren van de juiste code voor de juiste klus.

Verdrinkt u in papers in uw vakgebied?

Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.

Probeer Digest →