Weken Werk Klaar in 20 Minuten: Redis-Maker Zegt dat het Tijdperk van Handgeschreven Code Voorbij Is

De auteur van dit artikel, antirez, is de maker van de beroemde in-memory database Redis. Zijn software drijft de operaties van tientallen miljoenen bedrijven wereldwijd aan. antirez was ooit een AI-scepticus -- hij schreef zelfs een roman over zijn angsten dat AI-automatisering mensen zou vervangen. Maar zijn recente ervaring heeft bewezen dat de realiteit van programmeren voorgoed is veranderd. In de tests van antirez toonde Claude Code een tijdperk-bepalende efficiëntie. Het kan 700 regels strenge, high-performance C-code schrijven in 5 minuten. Het kan autonoom itereren om extreem lastige deadlocks en timingbugs in Redis te reproduceren en te verhelpen. Zelfs complexe interne herstructurering van Redis Streams kostte slechts 20 minuten. antirez gelooft dat programmeurs vandaag de dag moeten stoppen met het fixeren op het regel voor regel intypen van code, omdat het in de meeste gevallen niet meer de rationele keuze is. Hij stelt voor dat iedereen leert een geweldige samenwerker met AI te worden, en energie richt op het definiëren van problemen en het ontwerpen van oplossingen. Hij moedigt elke ontwikkelaar aan om Claude Code te gaan leren en diepgaand te gebruiken. Zoals antirez het zegt: mis je kans niet om de toekomst vorm te geven door de realiteit te weigeren. Besteed een paar weken aan het testen van deze nieuwe tools en vind manieren om je productiviteit te vermenigvuldigen. Het zuiverste programmeringsplezier is bouwen, en AI laat je meer bouwen, beter bouwen, en met meer plezier bouwen.
Ik hou van het schrijven van software, regel voor regel. Je zou kunnen zeggen dat mijn hele carrière een zoektocht is geweest naar het schrijven van schone, elegante, smaakvolle code. Eerlijk gezegd wilde ik niet dat AI economisch zou winnen. Het maakt me niet uit of het huidige economische systeem door AI wordt ontwricht -- als het leidt tot massale herverdeling van rijkdom, zou ik er zelfs blij mee zijn. Maar willens en wetens doen alsof de realiteit niet bestaat vanwege mijn opvattingen over software en samenleving zou een verraad zijn aan mijn eigen rede. Feiten zijn feiten. AI verandert, en zal blijvend veranderen, computprogrammering.
In 2020 nam ik ontslag om een roman te schrijven. Het ging over AI, universeel basisinkomen en een samenleving die zich aanpast aan arbeidsautomatisering onder diverse uitdagingen. Eind 2024 begon ik een kanaal gewijd aan het bespreken van AI, hoe het wordt gebruikt bij programmeertaken, en de mogelijke gevolgen die het kan brengen. Hoewel ik vroeg inzag dat deze veranderingen zouden plaatsvinden, ging ik er altijd van uit dat we nog minstens een paar jaar hadden voordat programmeren werkelijk zou worden hervormd. Dat geloof ik niet meer. Tegenwoordig kun je met de modernste grote taalmodellen een duidelijke set doelstellingen geven en het model grote deeltaken -- of zelfs middelgrote projecten -- vrijwel geheel zelfstandig laten afronden, met minimale menselijke ondersteuning. Hoe goed het werkt, hangt af van het soort programmering dat je doet (hoe zelfstandiger en tekstueel beschrijfbaar de taak, hoe beter -- systeemprogrammering is een uitstekende match), en van je vermogen om het probleem helder doordacht te formuleren en nauwkeurig aan het model te communiceren. Maar over het algemeen is het nu duidelijk: behalve puur voor het plezier, is het handmatig schrijven van code in de meeste projecten niet meer de rationeelste keuze.
De afgelopen week heb ik voornamelijk prompts geschreven, en af en toe code beoordeeld en begeleiding gegeven. In slechts een paar uur heb ik de volgende vier dingen afgerond -- werk dat mij voorheen weken zou hebben gekost.
Ik heb mijn linenoise-bibliotheek aangepast om UTF-8 te ondersteunen. Ik heb ook een testframework voor regelbewerking gebouwd met een gesimuleerde terminal die de inhoud van elke tekencel rapporteert. Dit was iets dat ik altijd al had willen doen. Maar het was moeilijk te rechtvaardigen om zoveel moeite te investeren in een klein deelproject puur voor testdoeleinden. Nu beschrijf je gewoon wat je wilt, en het wordt code. De situatie is totaal anders.
Ik heb intermitterende fouten in de testsuite van Redis verholpen. Dit soort werk is uiterst tijdrovend, met tijdscoördinatie, TCP-deadlocks en dergelijke. Claude Code bleef continu itereren, besteedde voldoende tijd aan het reproduceren van het probleem, inspecteerde de status van elk proces, achterhaalde wat er aan de hand was en loste de bug op.
Gisteren wilde ik een pure C-bibliotheek die in staat is om inferentie uit te voeren met BERT-achtige embeddingmodellen. Claude Code schreef het in 5 minuten. De inferentie-efficiëntie van de bibliotheek is ongeveer vergelijkbaar met PyTorch, slechts ongeveer 15% langzamer. De hele bibliotheek is slechts 700 regels C-code. Het genereerde zelfs een Python-hulpprogramma voor het converteren van het GTE-small-model.
De afgelopen weken heb ik de interne structuur van Redis Streams gewijzigd. Ik schreef een ontwerpdocument voor dit werk. Ik gaf het document aan Claude Code, en het heeft al mijn werk in ongeveer 20 minuten in feite opnieuw gedaan. De delen die langer duurden waren mijn eigen controle- en bevestigingsopdrachten.
Wat er nu gebeurt is onmogelijk te negeren. In de meeste gevallen hoeven mensen niet meer zelf code te schrijven. Het interessantere deel is geworden het bedenken wat er moet gebeuren en hoe het moet gebeuren. Op het gebied van "hoe het moet gebeuren" zijn grote modellen uitstekende samenwerkers. Of AI-bedrijven hun investering kunnen terugverdienen, of de beurs crasht, doet er op de lange termijn niet toe. Wat de CEO van een willekeurig unicorn-bedrijf ook voor schandalige of absurde dingen zegt, doet er ook niet toe. Hoe dan ook, programmeren is voorgoed veranderd.
Voor mij is het feit dat code die ik heb geschreven is gebruikt om grote modellen te trainen een prachtig iets. Ik beschouw het als een voortzetting van een levenslange zoektocht: democratisering van code, systemen en kennis. Grote taalmodellen zullen ons helpen betere software te schrijven, sneller. Ze zullen kleine teams ook de mogelijkheid geven om met grote bedrijven te concurreren. Net zoals opensourcesoftware dat in de jaren 90 deed.
Als programmeur wil ik nu meer dan ooit opensource schrijven. Ik wil een aantal repos die ik wegens tijdgebrek had opgepakt weer oppakken en verbeteren. Ik wil all-in gaan met AI binnen mijn eigen Redis-workflow. Eerst de Vector Sets-implementatie verbeteren, dan doorgaan naar andere datastructuren, net zoals ik nu met Streams doe.
Maar ik maak me zorgen over degenen die hun baan zullen verliezen. Het is nog onduidelijk welke veranderingen zich precies zullen ontvouwen. Bedrijven willen misschien meer mensen om meer dingen te doen. Of het tegenovergestelde gebeurt: minder maar AI-vaardiger programmeurs, om loonkosten te drukken. Ik maak me ook zorgen dat in veel andere sectoren mensen bijna volledig vervangbaar worden.
Wat betreft hoe te programmeren. Ik heb slechts één advies voor je, vriend. Wat je ook gelooft dat "het juiste ding" is, kan niet worden beïnvloed door de realiteit te ontkennen. Ervoor kiezen om AI niet te gebruiken, helpt noch jou noch je carrière. Denk er goed over na. Probeer deze nieuwe tools serieus. Besteed er een paar weken aan, niet vijf losse minuten puur om te bevestigen wat je al gelooft. Vind manieren om jezelf te vermenigvuldigen. Als je niet meteen de juiste aanpak vindt, probeer het dan over een paar maanden opnieuw.
Je denkt misschien aan hoe hard je hebt gewerkt om programmeren te leren, en nu schrijven machines code voor je. Maar het vuur dat je 's nachts wakker hield, alleen maar om te zien hoe je project tot leven kwam -- dat was het plezier van creatie. Als je de juiste manier vindt om AI effectief in te zetten, zul je meer creëren en beter creëren. Het plezier is er nog steeds, volledig intact.