Fork: hoe techprojecten zich splitsen in nieuwe paden
Stel je een landweg voor die zich splitst in twee richtingen. Beide paden beginnen op dezelfde plek, maar leiden daarna ergens anders heen. In de wereld van software en digitale technologie heet zo'n splitsing een fork (Engels voor 'vork' of 'splitsing'). Een fork ontstaat wanneer iemand een kopie maakt van bestaande broncode, een blockchain-netwerk of een ander digitaal project, en daarmee vanaf dat moment een eigen, onafhankelijke koers vaart.
Een fork kan klein en tijdelijk zijn, bijvoorbeeld een ontwikkelaar die een kopie van een programma maakt om er zelf mee te experimenteren. Maar een fork kan ook uitgroeien tot een compleet nieuw project met eigen naam, eigen gebruikers en een eigen toekomst, los van het origineel. Bekende voorbeelden zijn het tekstverwerkingsprogramma LibreOffice, dat ontstond als afsplitsing van OpenOffice, en de cryptomunt Bitcoin Cash, die in 2017 uit Bitcoin voortkwam.
Wat is het precies?
Forken draait om broncode: de leesbare instructies waarmee software wordt gebouwd. Dankzij open source-licenties mag iedereen deze code inzien, kopiëren en aanpassen. Platforms zoals GitHub en GitLab maken dit letterlijk met één druk op de knop mogelijk: je klikt op 'Fork' en krijgt een volledige, eigen kopie van een project in je account.
Vanaf dat moment kun je die kopie naar eigen inzicht wijzigen. Soms sturen makers hun verbeteringen terug naar het originele project via een zogeheten 'pull request', een verzoek om de wijziging over te nemen. Als de oorspronkelijke beheerders dat weigeren, of als de fork een compleet andere richting kiest, blijven de twee projecten voor altijd los van elkaar bestaan.
Bij blockchains, de gedeelde digitale grootboeken achter cryptomunten zoals Bitcoin en Ethereum, werkt forken net iets anders. Daar betekent een fork dat de regels van het netwerk veranderen. Bij een soft fork blijven oude en nieuwe software met elkaar compatibel; bij een hard fork ontstaat een onherstelbare splitsing en lopen er vanaf dat moment twee aparte netwerken naast elkaar, elk met hun eigen munt en transactiegeschiedenis tot aan het splitsingsmoment.
Wat wil men ermee bereiken?
De kern van forken is vrijheid. Open source-licenties zijn juist zo ontworpen dat niemand een project kan 'gijzelen': als de makers van een programma een richting kiezen waar gebruikers het niet mee eens zijn, kunnen die gebruikers zelf verder met een eigen versie. Dat voorkomt afhankelijkheid van één bedrijf of persoon.
Forken lost ook meningsverschillen op. In gemeenschappen van vrijwilligers en bedrijven ontstaat soms onenigheid over de koers van een project: moet het gratis blijven, welke functies horen erbij, wie heeft de uiteindelijke controle? In plaats van eindeloos te ruziën, kan een groep besluiten hun eigen fork te starten en zo hun visie waar te maken.
Bij blockchains speelt daarnaast een technisch doel: netwerken verbeteren zonder dat gebruikers gedwongen worden mee te doen. Wie het niet eens is met een wijziging kan op de oude versie blijven, wat weliswaar tot verwarrende splitsingen leidt, maar ook past bij het decentrale ideaal dat niemand alleenheerser is over het systeem.
Voorbeelden uit de praktijk
Enkele bekende forks illustreren hoe verschillend dit proces kan uitpakken:
- LibreOffice (2010) — ontstond toen ontwikkelaars zich afsplitsten van OpenOffice.org nadat Oracle het bedrijf Sun Microsystems overnam en onduidelijkheid ontstond over de toekomst van het project. LibreOffice groeide uit tot de dominante versie.
- MariaDB (2009) — een fork van de populaire database MySQL, gestart door de oorspronkelijke oprichter van MySQL zelf nadat Oracle MySQL had overgenomen. MariaDB wordt tegenwoordig gebruikt door onder meer Wikipedia.
- Bitcoin Cash (2017) — een hard fork van Bitcoin, ontstaan uit onenigheid over hoeveel transacties het netwerk per blok mocht verwerken. Sindsdien bestaan Bitcoin en Bitcoin Cash als twee gescheiden munten.
- Ethereum Classic (2016) — ontstond na een grote hack van het project 'The DAO'. De meerderheid van de Ethereum-gemeenschap koos ervoor de hack ongedaan te maken via een fork; een kleinere groep weigerde dit uit principe en zette het oorspronkelijke, ongewijzigde netwerk voort als Ethereum Classic.
- X.Org Server (2004) — een fork van XFree86, de software die op Linux-systemen beelden op het scherm tekent, ontstaan na een licentiewijziging die de open source-gemeenschap onaanvaardbaar vond. X.Org werd de nieuwe standaard.
Hoe ver is de techniek?
Forken is geen opkomende technologie maar een sinds decennia gevestigde werkwijze binnen softwareontwikkeling. Wat wél voortdurend verandert, is de schaal en het gemak waarmee het gebeurt. Platforms als GitHub maken forken zo laagdrempelig dat er dagelijks miljoenen kopieën van projecten worden gemaakt, van kleine persoonlijke experimenten tot grote zakelijke afsplitsingen.
Een recentere ontwikkeling is het forken van kunstmatige-intelligentiemodellen. Op platforms zoals Hugging Face kopiëren en aanpassen ontwikkelaars open source AI-modellen op vergelijkbare manier als broncode, bijvoorbeeld door een taalmodel te 'finetunen' voor een specifieke taal of taak. Dit roept nieuwe vragen op over verantwoordelijkheid: wie is aansprakelijk als een aangepast model schadelijke output genereert?
Bij blockchains proberen ontwikkelaars hard forks juist te vermijden, omdat ze de gemeenschap verdelen en het vertrouwen in een munt kunnen schaden. Nieuwere netwerken experimenteren met 'on-chain governance', waarbij stemmingen onder gebruikers bepalen welke wijzigingen doorgaan, in de hoop conflicten op te lossen zonder dat het netwerk letterlijk in tweeën breekt. Dat werkt niet altijd: ook bij deze systemen zijn al pijnlijke splitsingen voorgekomen.
Wie werken eraan?
Forken is geen technologie die één partij ontwikkelt, maar een praktijk die door de hele techsector wordt gefaciliteerd en toegepast. Platforms als GitHub (onderdeel van Microsoft) en GitLab bouwen de technische infrastructuur die forken laagdrempelig maakt.
Stichtingen zoals de Apache Software Foundation, de Linux Foundation en de Free Software Foundation stellen de licenties op die forken juridisch mogelijk maken en beheren zelf grote open source-projecten waarbinnen forken regelmatig voorkomt. Bij blockchains speelt de Ethereum Foundation een leidende rol in het begeleiden van netwerkupdates, terwijl bij Bitcoin een los netwerk van onafhankelijke ontwikkelaars wereldwijd meebeslist.
Landen spelen vooral een indirecte rol via regelgeving: de Europese Unie heeft met de Cyber Resilience Act bijvoorbeeld regels opgesteld die ook gevolgen hebben voor makers van geforkte open source-software, wat binnen de gemeenschap tot discussie leidt over wie er straks verantwoordelijk is voor de veiligheid van afgeleide projecten.