#devbot   #dependabot

Wat is een dev bot, zoals Dependabot? (simpele uitleg)

Julia van Toor

Op ontdekkingsreis in Webtech Wonderland

 - 

5 min

In de wereld van software ontwikkeling blijf je bij door stap voor stap nieuwe dingen uit te proberen. Door het doen van vele experimenten. Geen drastische aanpak om later te beseffen dat het niet werkt. Zo heb je dev bots. Ze worden nu nog niet veel gebruikt. Terwijl het devs veel tijd, pijn en moeite kan besparen. Vandaag ga ik jou, technisch directeur of ondernemer, meer vertellen over dev bots, zoals Dependabot (Ă©Ă©n van de bekende). Aan het einde geef ik je advies voor een volgende stap. Kijk je mee?

dependabot betekenis, dev bot betekenis, software bot betekenis

Op zoek naar de definitie en kenmerken

Dev bots kun je zien als een onderdeel van software bots. Maar wat valt er onder dev bots? Dev bot is best een nieuw begrip. Uit een Zweeds onderzoek [1] is gebleken dat developers verschillende perspectieven & definities hebben van dev bots.

Iets wat dev bot-gebruikers wél gemeen hebben is dat ze een verbeterde productiviteit in hun werk verwachten dankzij een dev bot. Er zijn verder drie verschillende groepen developers met ieder een eigen kijk op dev bots. In het Zweedse onderzoek kregen de groepen een eigen persona. Een persona is een karakterisering van een bepaald gebruikerstype.

dev bot persona

1Charlie de “chatbot persona”

De “chatbot persona” genaamd Charlie ziet dev bots vooral als informatieve tools die communiceren met de ontwikkelaar via een taalinterface, zoals chat of spraak. Charlie verwacht van de dev bot vooral gemakkelijke toegang tot informatie of het kunnen triggeren van simpele onderhoudstaken. Het maakt hem niet uit voor welke taken de bot wordt gebruikt of hoe de bot taken uitvoert.

Elke gewone ontwikkeltool kan een dev bot voor Charlie worden zolang deze maar een chat of spraak interface heeft. Een dev bot voor Charlie is alleen de interface naar een systeem, dus niet het systeem zelf. Een typisch voorbeeld van dev bots voor Charlie zijn bots voor ChatOps, dus bots die team- of omgevingsbeheertaken uitvoeren op basis van opdrachten die zijn geschreven in chatplatformen zoals Slack.

dev bot persona

2Alex de “autonome bot persona”

Voor de “autonome bot persona” ook wel Alex is een dev bot een tool die zelfstandig taken voor ontwikkelaars afhandelt. Alex verwacht met een dev bot vooral simpele en repetitieve taken te kunnen automatiseren, zonder dat je de bot daarvoor expliciet hoeft te activeren. Niet elke geplande script uitvoering is een dev bot voor Alex, maar alleen een script dat een ontwikkelingstaak uitvoert. Denk maar aan het sluiten van bugs of het verwelkomen van nieuwe developers in een project.

Alex legt nadruk op de onafhankelijke aard van een bot. Eenmaal geïnstalleerd voor een project, kan een dev bot zelfstandig “voelen” wanneer hij nodig is. Bijvoorbeeld door open bugs in een issue tracker te volgen. Veel bekende GitHub-bots, zoals Dependabot, Snyk en Renovatebot zijn voorbeelden van hoe Alex denkt over dev bots.

dev bot persona

3Sam de “slimme bot persona”

Ten slotte, de “slimme bot persona” genaamd Sam. Voor Sam is het onderscheidende kenmerk van een bot een "slimheid" (technisch geavanceerdheid) die verder gaat dan andere tools. Sam verwacht dat dev bots niet-alledaagse taken uitvoeren of informatie genereren die niet gemakkelijk toegankelijk is voor mensen. Sam geeft minder om communicatie, maar meer om uitvoering van taken.

Een dev bot in Sam-stijl begrijpt de codesyntax en is daarom in staat om taken op een hoger niveau uit te voeren, zoals het oplossen van bugs. Zelfs met code die niet precies is opgebouwd volgens een voorgedefinieerd patroon. Sam associeert dev bots met machine learning.

Conclusie & volgende stap

Om de theorie te koppelen aan de praktijk, ben ik, Julia, nagegaan in welke persona de ervaren developers van Jool zich herkennen. En dat is Alex de “autonome bot persona”.

Waarschijnlijk vraag je je nu af: waarom niet Sam de “slimme bot persona”? Dat is toch veel cooler? Op dit moment staan bots in Sam-stijl nog erg in de kinderschoenen, wat zeg ik, babyschoentjes. Er zijn d'r simpelweg nog niet zoveel van. Bots in Sam-stijl zijn bovendien een stuk complexer & vereisen maatwerk.

Bots in Alex-stijl zijn kant-en-klare bots die je nu al kan inzetten met resultaat. De tool die de developers van Jool gebruiken om zelfstandig simpele en de vaak saaie taken voor hen afhandelt is Dependabot. Hierdoor houden zij zich nu veel meer bezig met taken die technisch uitdagender zijn.

Bas

"Dependabot zorgt dat de software ontwikkelaars bij Jool veel minder omkijken hebben naar dependency updates. Dit geeft ons meer tijd om te besteden aan taken die meer waarde bieden en technisch uitdagender zijn."

—Bas Mesman, Senior Software Ontwikkelaar bij Jool

Wat kun je nu doen, als technisch directeur of ondernemer? De eerste stap is: ga praten met je devs en deel dit blog. Zijn ze bekend met dev bots als Dependabot, Snyk of Renovatebot? Heel goed. Dan is het tijd om het in de praktijk te gaan brengen. Behoefte aan hulp bij de setup van een dev bot? Schakel een developer van Jool in.