Ruby: de verrassende winnaar voor AI-agents
Ruby en AI-agents: waarom deze taal onverwacht goed scoort
Ruby als favoriete taal voor AI-gestuurde ontwikkeling? Dat klinkt voor veel mensen als een controversiële stelling. Toch laat een recent experiment zien dat Ruby verrassend sterk presteert als AI-agents code schrijven.
Een gestructureerde test met drie talen
Coolhand Labs wilde niet langer discussiëren over welke taal AI het liefst gebruikt. In plaats daarvan voerden ze een directe vergelijking uit. Ze lieten Claude Code met Sonnet 4.6 dezelfde functionaliteit implementeren in Ruby, TypeScript en Python.
Het proces was strak opgezet: een AI-agent maakte een plan, mensen keurden dat goed zonder wijzigingen, een tweede agent (Opus 4.7) deed de code review, en pas daarna volgde de PR. Het proces herhaalde zich tot alles door de CI heen kwam.
De resultaten: Ruby loopt voorop
Ruby bleek duidelijk sneller. De taken werden afgerond met minder tokens en het proces voelde soepeler. TypeScript presteerde redelijk, maar Python bleef achter. Niet per se omdat Python zelf inefficiënt is, maar door een belangrijke factor: de instructies die aan de AI-agent waren meegegeven.
De rol van instructies
In het Python-project stonden extra regels die de agent verplichtte om linting en tests uit te voeren voor elke taak afgerond was. Ruby en TypeScript hadden die extra laag niet. Daardoor moest de agent in Python meer stappen doorlopen, meer tokens gebruiken en meer tijd nemen.
Dit toont aan dat niet alleen de taal zelf invloed heeft. Ook de manier waarop je een AI-agent aanstuurt, bepaalt hoe efficiënt het proces verloopt.
Wat betekent dit voor jouw project
Als je werkt met AI-agents en nadenkt over een taal voor nieuwe projecten, dan is het belangrijk te begrijpen dat workflow belangrijker is dan taalkeuze. Desondanks heeft Ruby enkele kenmerken die het voor AI-agenten aantrekkelijk maken:
- Een compacte syntax die LLMs gemakkelijk begrijpen
- Sterke conventies die beslissingen eenvoudiger maken
- Volwassen frameworks zoals Rails, die AI-agents al kennen
- Weinig boilerplate-code
TypeScript scoort dichtbij Ruby,显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示显示