Skip to content
ICT Fusion Knowledgebase

AI assisted development

Bijna alle studenten hebben wel eens ChatGPT gebruikt om meen vraag te stellen of een stukje code te genereren. AI zal een steeds grotere rol gaan spelen in het leven van een software developer. AI tools zijn inmiddels veel verder ontwikkeld dan alleen ChatGPT die het leven van developers echt veel makkelijker kunnen maken.

Niveau 1: Handmatige Prompts (Het “Snippet”-tijdperk)

Dit is waar de meesten beginnen. De AI heeft geen directe verbinding met je bestanden; het is puur een “brein in een doosje”.

  • Workflow: Je kopieert een specifieke foutmelding of een functie-eis, plakt deze in een webchat (ChatGPT, Gemini, Claude) en kopieert het resultaat weer terug naar je editor.
  • De Ervaring: Jij bent de “lijm”. Je moet handmatig alle context aanleveren (bibliotheekversies, variabelenamen, etc.) voor elke individuele prompt.
  • Complexiteit: Taakgericht op één specifiek punt, zonder geheugen van de rest van het project.

Niveau 2: Inline Voltooiing (Het “Ghost Text”-tijdperk)

In deze fase kwam AI de editor binnen via tools zoals de originele GitHub Copilot of Tabnine.

  • Workflow: Terwijl je typt, stelt de AI de volgende regel of het volgende codeblok voor in lichtgrijze “geesttekst”. Je drukt op Tab om dit te accepteren.
  • De Ervaring: Het voelt als een geavanceerde “IntelliSense”. Het begrijpt het bestand waarin je op dat moment werkt, maar weet zelden wat er drie mappen verderop gebeurt.
  • Complexiteit: Voorspelling op regelniveau, context beperkt tot het huidige bestand.

Niveau 3: Contextbewuste Chat (Het “Edit Mode”-tijdperk)

Dit is momenteel de standaard voor professionele ontwikkelaars die tools gebruiken zoals Cursor, Windsurf of Copilot Chat.

  • Workflow: Je selecteert een blok code en zegt: “Herschrijf dit naar een custom hook” of “Voeg foutafhandeling toe”.
  • De Ervaring: De AI kan nu je hele repository “zien”. Het gebruikt RAG (Retrieval-Augmented Generation) om relevante bestanden te vinden. Het stelt niet alleen tekst voor, maar past wijzigingen (diffs) direct toe op je bestanden.
  • Complexiteit: Context van de volledige repository, bewustzijn van meerdere bestanden tegelijk.

Niveau 4: Taakgerichte Agents (Het “Agentic”-tijdperk)

Dit is de grote verschuiving van ondersteunen naar handelen. Tools zoals GitHub Copilot Agent mode, Claude Code of Cline vallen hieronder.

  • Workflow: Je geeft een doel op hoog niveau: “Vind de bug waardoor de login faalt in Safari en los het op.”
  • De Ervaring: De agent schrijft niet alleen code; hij gaat op onderzoek uit. Hij voert terminal-commando’s uit, leest logs, maakt een plan, bewerkt meerdere bestanden en draait daarna de tests om te zien of de fix werkt. Als een test faalt, begint hij opnieuw met een andere aanpak.
  • Complexiteit: Doelgericht, zelfcorrigerend, gebruik van tools (Terminal, Browser, Bestandssysteem).

Niveau 5: Autonome Teamgenoten (Het “Orchestrator”-tijdperk)

Het hoogste niveau dat momenteel in productie is (te zien in systemen zoals Devin, OpenAI Software Engineer of enterprise-versies van Copilot Workspace).

  • Workflow: Je wijst een GitHub Issue of een Jira-ticket toe aan de AI.
  • De Ervaring: De AI werkt op de achtergrond. Het maakt een eigen branch aan, schrijft de feature, documenteert deze en opent een Pull Request die jij kunt beoordelen. Je bent niet met de AI aan het programmeren; je stuurt de AI aan als manager.
  • Complexiteit: Volledige workflow-autonomie, langlopende taken (minuten of uren), orchestratie op hoog niveau.

Autonome systemen zijn experimenteel

Hoewel deze systemen indrukwekkend zijn, bevinden ze zich nog in een experimenteel stadium. Ze kunnen onvoorspelbaar zijn en vereisen nog steeds menselijke supervisie, vooral bij kritieke taken. Ze zijn echter een voorbode van de toekomst van softwareontwikkeling, waar AI een volwaardige teamgenoot zal zijn. Gebruik ze niet als je niet precies weet waar je mee bezig bent.

Overzicht van de niveaus

Stadium Rol van de AI Primaire Gebruikerservaring Belangrijkste Waarde
Niveau 1 Bibliotheek Webbrowser “Hoe moet dit?” beantwoorden
Niveau 2 Autocorrectie Ghost Text (++Tab++) Typsnelheid
Niveau 3 Pair Programmer Chat / Inline bewerkingen Refactoring & logica
Niveau 4 Gespecialiseerde Agent Terminal / Planner Oplossen van bugs/features
Niveau 5 Junior Developer PR / Issue Tracker Volledige taken afhandelen

De Verschuiving in Mindset: Naarmate je van Niveau 1 naar Niveau 5 gaat, verandert je werk van Code Schrijven \(\rightarrow\) Code Controleren \(\rightarrow\) Intentie Definiëren. De bottleneck is niet langer je typsnelheid, maar je vermogen om de gewenste systeemwerking helder uit te leggen.

Tips bij het gebruik van AI in ontwikkeling

  1. Wees Specifiek in je Prompts: Hoe duidelijker je bent, hoe beter de AI kan helpen. In plaats van “Maak een functie die data verwerkt”, zeg “Maak een functie die een JSON-object neemt en de waarden optelt.”
  2. Controleer Altijd de Output: AI kan fouten maken of verouderde informatie gebruiken. Behandel het als een assistent, niet als een expert.
  3. Gebruik AI voor Refactoring: Laat de AI je code herschrijven voor betere leesbaarheid of prestaties. Dit kan je codebase gezonder houden.
  4. Experimenteer met Verschillende Tools: Niet elke AI is hetzelfde. Probeer verschillende tools uit om te zien welke het beste past bij jouw workflow en behoeften.
  5. Sluit de loop: Laat de AI niet alleen code genereren, maar ook testen schrijven en uitvoeren. Dit helpt om de kwaliteit van de output te waarborgen.