Each language version is independently generated for its own context, not a direct translation.
Stel je voor dat je een zeer slimme, maar soms wat ongeduldige assistent hebt die alles kan doen: van koken tot bouwen. Je noemt hem "AI". Maar als je hem alleen zegt: "Bak een taart", krijg je misschien een taart die eruitziet als een steen, of die gemaakt is van ingrediënten die je niet in huis hebt.
Om de AI echt goed te laten werken, moet je hem niet alleen vertellen wat hij moet doen, maar ook hoe jullie samenwerken. Je moet hem vertellen: "Gebruik mijn favoriete bloem, geen suiker, en bak hem in de blauwe vorm."
Dit artikel van Shaokang Jiang en Daye Nam onderzoekt precies dit: hoe programmeurs hun AI-assistenten leren hoe ze moeten werken.
Hier is de samenvatting in gewone taal, met een paar leuke vergelijkingen:
1. Het Probleem: De "Gouden Regel"
Vroeger schreven programmeurs hun instructies voor de AI in één korte zin (een "prompt"). Maar dat werkt niet goed voor complexe projecten. Het is alsof je een kok alleen vertelt "maak pasta" zonder te zeggen of je spaghetti of penne wilt, of dat je geen knoflook eet.
Daarom hebben tools zoals Cursor een nieuwe functie uitgevonden: Cursor Rules. Dit zijn kleine tekstbestanden (zoals een receptenboekje) die in het project zelf zitten. Ze vertellen de AI: "In dit project doen we het altijd zo."
2. Wat hebben de onderzoekers gedaan?
De onderzoekers hebben 401 open-source projecten (gratis programmeerprojecten op internet) onder de loep genomen. Ze keken naar deze "receptenboeken" (de Cursor Rules) om te zien wat programmeurs daarin schrijven. Het was alsof ze duizenden koks in de keuken observeerden om te zien welke regels ze aan hun nieuwe assistent geven.
3. De 5 Soorten "Recepten" (De Taxonomie)
Ze ontdekten dat programmeurs vijf soorten instructies geven. Je kunt dit zien als de verschillende hoofdstukken in een handleiding voor een nieuwe medewerker:
- 🏗️ Het Project (Project): "Hier is wie we zijn."
- Vergelijking: Dit is de introductie. "We zijn een pizzabakkerij in Italië, we gebruiken houtgestookte ovens en we werken met de software X." De AI moet weten welke gereedschappen en materialen er zijn.
- 📏 De Gewoonten (Convention): "Zo doen we het hier."
- Vergelijking: Dit zijn de huisregels. "We dragen altijd witte schorten," of "We noemen onze pizzabakken altijd met een 'P'." In code betekent dit: gebruik altijd deze manier van schrijven, deze namen voor bestanden, en deze stijl.
- 💡 De Grote Principes (Guideline): "Wat is goed en wat is slecht?"
- Vergelijking: Dit zijn de algemene adviezen. "Zorg dat de pizza niet verbrandt," of "Test altijd of de saus goed smaakt voordat je hem serveert." Dit gaat over veiligheid, snelheid en kwaliteit, niet over de specifieke letters die je typt.
- 🤖 De AI-instructies (LLM Directive): "Hoe moet jij, AI, denken?"
- Vergelijking: Dit is uniek voor de robot. "Als je twijfelt, vraag het eerst," of "Denk stap voor stap na voordat je begint." Het is alsof je de robot vertelt: "Wees niet te zelfverzekerd als je het niet weet."
- 📝 Voorbeelden (Example): "Kijk hoe het moet."
- Vergelijking: "Hier is een foto van een perfecte pizza." Programmeurs tonen vaak stukjes code om te laten zien hoe iets eruit moet zien, zodat de AI het niet hoeft te raden.
4. Wat hebben ze ontdekt? (De verrassingen)
- Taal maakt uit: Programmeurs die werken met strenge talen (zoals Java of C#) geven de AI minder uitleg over typen, omdat de taal dat al regelt. Maar programmeurs die werken met flexibele talen (zoals JavaScript of PHP) geven de AI veel meer regels, omdat die taal minder streng is en de AI anders snel de fout in gaat.
- Analogie: Als je een strenge chef hebt (strenge taal), hoef je niet te zeggen "gebruik geen zout". Als je een losse chef hebt (flexibele taal), moet je dat wel zeggen.
- Het is een mix: De beste projecten geven de AI een beetje van alles. Ze geven niet alleen de "gewoonten", maar ook de "principes" en "voorbeelden". Het is alsof je een nieuwe medewerker een complete map geeft met het handboek, de foto's van het team, en de regels voor de koffieautomaat.
- Veel kopiëren: Een groot deel van deze regels is gekopieerd! Programmeurs kopiëren vaak regels van andere projecten of van gemeenschappelijke sjablonen.
- Analogie: Het is alsof iedereen in de stad hetzelfde "Welkomstbriefje" voor nieuwe buren gebruikt. Dat is handig, maar soms vergeet je aan te passen dat jouw buurt net iets anders werkt.
- Oude vs. Nieuwe projecten: In oudere projecten zijn de regels vaak meer gericht op het project zelf (wat doen we?). In heel nieuwe projecten zijn de regels vaker gericht op de AI zelf (hoe moet jij denken?). Programmeurs leren dus langzaam hoe ze de AI het beste moeten aansturen.
5. Wat betekent dit voor de toekomst?
De onderzoekers zeggen dat we nu beter moeten leren hoe we deze "receptenboeken" schrijven.
- Niet te veel kopiëren: Als je regels kopieert die de AI al weet, is dat tijdverspilling.
- Specifiek zijn: De AI moet weten wat jouw project uniek maakt.
- Beter gereedschap: De tools die we nu hebben, moeten slimmer worden. Ze moeten bijvoorbeeld zeggen: "Hey, die regel heb je al in je project staan, waarom schrijf je hem opnieuw?" of "Je mist een belangrijke regel voor dit type code."
Kortom:
Programmeurs leren nu hoe ze hun AI-assistenten moeten "opvoeden" met een eigen boekje van regels. Dit onderzoek laat zien dat dit boekje nog vol staat met proefballonnetjes en gekopieerde teksten, maar dat we langzaam leren hoe we een AI kunnen laten werken als een perfecte, ingewerkte teamgenoot in plaats van als een verwarde robot die alles uit zijn duim zuigt.