De AI tool van Mohammed

november 22, 2024

Er was eens een development student genaamd Mohammed. Mohammed had een brilant idee voor een AI tool, die developers veel tijd zou kunnen besparen. Omdat tijd geld is en geld nogal belangrijk voor een agency (en elk ander bedrijf, for that matter) stond Endeavour vooraan de rij van wannabe stagebedrijven voor Mohammed.

Lucky us, want Mohammed koos voor Endeavour en overtrof alle verwachtingen! We stelden hem een paar vragen:

Hoi Mohammed, vertel eens wat meer over je AI tool?

“Ik wist dat agencies zoals Endeavour vaak werken met een 4-ogenprincipe, om eventuele fouten in geschreven code op te sporen. Alle code wordt dus gecontroleerd door een mede-ontwikkelaar, wat best tijdrovend is. Ik wilde onderzoeken of ik een AI-tool kon maken die een deel van dit werk overneemt, zodat het dus eigenlijk een 6-ogenprincipe wordt. Al heeft AI natuurlijk niet echt ogen, haha!”

Klinkt goed, hoe werkt dat precies?

“Normaalgesproken tag je als developer een collega met het verzoek om je code te controleren. Mijn tool werkt een beetje als een robot-medewerker, die je precies op dezelfde manier kan taggen. De tool geeft dan feedback op wat je gemaakt hebt. De tool heeft bijna altijd gelijk en daarom heb ik ‘m IWAB genoemd, wat staat voor ‘Ik Weet Alles Beter’.”

Wat een wijsneus! Hoe heb je het aangepakt?

“In het begin wist ik er niet veel over en ben ik vooral veel onderzoek gaan doen. Ik wilde weten wat we zelf konden bouwen en of er al andere tools waren die we mogelijk konden gebruiken. Ik heb daarom eerst gekeken of we zelf iets konden maken, maar dat bleek te veel werk en geld te kosten. Dus moest ik kijken naar wie de meest betrouwbare bronnen van Large Language Modellen (LLM’s) waren. Na het beoordelen en testen van die bronnen heb ik een systeem ontwikkeld waarin ik tools van verschillende providers heb geïntegreerd in ons versiebeheersysteem Gitlab. Ik bouwde dus een toevoeging op onze bestaande tooling, die ervoor zorgt dat de code automatisch gecontroleerd wordt door een bot.”

Was het moeilijk om de tool te bouwen?

“Het was vooral lastig om context te behouden. Code heeft heel veel context en je hebt allemaal bestanden, die aan elkaar gerelateerd zijn. Het was een uitdaging om ervoor te zorgen dat AI ook echt wist waar het precies om ging.

 

Ook was de locatie lastig te bepalen. Je moet je voorstellen dat je een document hebt en op regel 40 is een probleem. Als ik alleen dat specifieke stukje code laat zien aan AI, weet hij niet op welke regel dat deel van de code staat. Terwijl dat wel heel belangrijk is, omdat de feedback nou juist precies op regel 40 gegeven moet worden. 

Een andere uitdaging was privacy. Het is essentieel dat onze broncode altijd goed beschermd blijft. We kunnen niet zomaar al onze broncode naar derde partijen sturen die AI-modellen draaien.”

Waarom wilde je juist deze tool maken?

“Ontwikkelaars en agencies zijn altijd op zoek naar manieren om betere code te kunnen maken en meer kwaliteit te kunnen leveren. Dat is de belangrijkste gedachte achter deze tool. Hij zorgt voor een hogere kwaliteit van code, want AI ziet in de regel meer dan een mens.

Verder scheelt het veel tijd, want alle feedback die AI al heeft gegeven hoeft een collega niet meer te geven. En je hoeft ook niet te wachten op een collega die misschien de volgende dag pas tijd heeft. Het inplannen van feedbackrondes wordt trouwens ook makkelijker, want er blijft gewoon veel minder controlewerk over.”

Kan de tool fouten in de code ook verbeteren?

“Vooralsnog geeft de tool alleen feedback. Verbeteren zou in potentie kunnen, maar ik denk niet dat dat handig is. Je wil natuurlijk niet dat iets foutief wordt verbeterd zonder dat iemand dit in de gaten heeft. Waar ik nog wel mee wil testen, is dat AI suggesties doet voor verbetering.”

Dus de tool werkt precies zoals je bedacht had?

“In principe wel, maar we zijn pas net de testfase voorbij. Ik moet alle feedback nog verwerken in de volgende versie en pas daarna gaan de ontwikkelaars bij Endeavour de tool gebruiken. Dan pas gaan we ontdekken wat we er allemaal nog meer mee kunnen. Misschien kunnen we de tool ook inzetten op andere afdelingen van Endeavour, of kunnen we ‘m zelfs commercieel inzetten. Heel spannend allemaal!”

Welke verbeteringen ga je doorvoeren in de volgende versie?

“Wat ik in elk geval wil aanpakken is het niveau van feedback dat de AI geeft. Die kan soms nog beter, dus ik ga nu werken aan een systeem waardoor de AI ook op zijn eigen werk kan reflecteren. Dan vindt hij dus zijn eigen foute antwoorden. Gelukkig heb ik daar ook de tijd voor, want Endeavour heeft mij een contract aangeboden!“

Gefeliciteerd! Wat ga je precies doen bij Endeavour?

“Ik ben sinds kort officieel AI ontwikkelaar en ga me naast IWAB ook storten op LLM-integratie en vector databases. Daarna ga ik machine learning inzetten om meer inzicht te krijgen in onze marketingdata, zodat we gerichtere strategieën kunnen ontwikkelen voor onze klanten.”

Foto van Myra Schaaf

Myra Schaaf

Copywriter

Related news

Je mag ons alles vragen

Of gewoon kennis komen maken. Wij vinden het geweldig om over jouw vraagstukken na te denken.

Contact us
+31 (0)23 727 1077 09:00 - 17:00 info@endeavour.nl
work@endeavour.nl
Gonnetstraat 32 2011 KA Haarlem

Let us contact you

We build

Platforms

We bouwen websites, apps of e-commerce platforms die ingericht zijn om jouw doelgroep te triggeren, je merk te vertegenwoordigen en je doelstellingen te behalen.
We create

Content

Content is de vertaling van jouw merk naar beeld en tekst. Blijf met je doelgroep in contact door middel van video, copy, social media en influencers.
We spark

Growth

Maak een plan voor meetbare groei en ontdek wat je daadwerkelijk verdient aan je marketinginspanningen als ads, data, e-mail en nog zo veel meer.
We provide

Inhousing

Laat je team ondersteunen door de nieuwe generatie marketeers, die matchen met je organisatie en je uitdagen met een frisse blik en hun persoonlijke expertises en skills.

We shape

Digital Strategy

Behaal doelstellingen door je merk slim in de markt te zetten.
Dit veld is bedoeld voor validatiedoeleinden en moet niet worden gewijzigd.