Mijn werkveld is Security & Compliance. Ik heb een achtergrond in Management, Economie en Recht en heb jarenlang technische rollen in de IT vervuld. Programmeren was voor mij altijd een hobby; ik ben er niet uitzonderlijk goed in, maar ik heb wel eens een succesvolle web‑game gebouwd. Toen moest ik alles zelf leren en schrijven. Inmiddels zijn we in een tijd beland waarin AI een groot deel van het programmeerwerk kan overnemen. Betekent dat dat je helemaal geen kennis meer nodig hebt? Zeker niet. Maar de drempel ligt wel veel lager, vooral bij minder complexe projecten.

In dit artikel laat ik je twee tools zien die ik onlangs met grote hulp van AI heb gebouwd. Ik bespreek wat goed ging, waar de uitdagingen lagen en welke middelen ik gebruikte.

De basis

Ik schrijf mijn tools tegenwoordig in Python. Wanneer er een web‑interface nodig is, gebruik ik Flask. Voor databases kies ik meestal MySQL; als het simpel mag, volstaat SQLite.

Als editor gebruik ik Visual Studio Code. Er zijn genoeg alternatieven, maar ik ben eraan gewend en de functionaliteit is voor mij ruim voldoende. Per project installeer ik de extensies die ik nodig heb.

Voor AI‑ondersteuning gebruik ik GitHub Copilot. Het makkelijk wisselen van modellen is handig, vooral omdat niet elk model goed omgaat met grote contexten—een probleem waar je bij grotere projecten gegarandeerd tegenaan loopt.

Momenteel werk ik met een mix van Claude 3.7 Sonnet en GPT‑4.1. Beide hebben sterke kanten, maar voor het opzetten van nieuwe projecten vind ik Claude op dit moment prettiger. Elk model heeft ook nadelen, daarop kom ik later terug.

Tool 1 – Budget tool

Waarom?

Het leven wordt niet goedkoper. Als je je afvraagt waar je geld blijft, is het nuttig om dat te visualiseren. Er zijn talloze oplossingen, maar ik geef mijn financiën liever niet aan een derde partij met onduidelijk datagebruik. Bovendien is het een mooie kans om weer iets zelf te maken.

Voorbereiding

Een sessie begint meestal in ChatGPT. Ik leg het idee, de randvoorwaarden en de minimale eisen uit. In dialoogvorm denk ik vooruit over knelpunten, de benodigde data en de onderlinge samenhang van die data.

Als de contouren helder zijn, vraag ik ChatGPT om een start‑prompt voor—ironisch genoeg—Claude 3.7 Sonnet in VS Code. Die prompt pas ik aan tot de nadruk precies ligt op de functies die ik belangrijk vind.

Aan de slag!

Met de definitieve prompt start ik Copilot‑Edit in VS Code. Ik vraag expliciet om het project in fasen op te bouwen, want de AI kan maar een beperkte hoeveelheid code per keer genereren. Overschrijd je die limiet, dan stopt de output en raakt de AI soms in de war als je vraagt om verder te gaan.

Gefaseerd bouwen helpt niet alleen de AI, maar ook mij: elke stap kan ik direct testen en bijschaven. Dat de AI fouten maakt, staat vast; het is vooral de vraag waar en wanneer.

Fouten corrigeren

Mijn eerste commit bevatte zo’n 3000 regels code—geschreven in een halfuur. De kans dat de app dan al volledig werkt is vrijwel nul. AI gaat standaard de mist in bij bijvoorbeeld CSRF‑tokens en url_for‑verwijzingen.

Dit soort issues los je vaak sneller zelf op dan door de AI erom te vragen. Een verkeerd ingeladen formulier of een typfout in een route zie je direct; die paar regels fix je handmatig.

Uiteindelijk kwam ik na 22 iteraties tot een volledig werkende tool met:

  • gebruikersbeheer (registratie & inlog),
  • data‑import en ‑export (dataportabiliteit), en
  • een nette interface (Claude levert hier mijns inziens de prettigste UI).

Aandachtspunten

  • Houd het simpel bij de eerste versie, maar bespreek toekomstige uitbreidingen al in de voorbereiding.
  • Laat de AI vroeg een robuust datamodel ontwerpen; halverwege migreren is foutgevoelig.
  • AI’s zijn sterk in data en worden beter in visualisatie, maar zijn niet foutloos. Controleer grafieken en berekeningen.

Screenshots

Tool 2 – Reverse‑Proxy‑Manager

Aanleiding

Ik gebruik al jaren Nginx Proxy Manager voor SSL‑terminatie en als reverse proxy. Regelmatig weigert het echter nieuwe certificaten aan te vragen of oude te verlengen. Toen de frustratie hoog opliep én ik een dag vrij had, besloot ik een eigen alternatief te bouwen.

Benadering

De aanpak leek op die van de budgettool, maar vergde meer context. Deze applicatie genereert configuratiebestanden en beheert certificaten op een server, dus ze moet direct samenwerken met het onderliggende OS (Ubuntu 24.04).

Belangrijke eisen:

  1. Extra veiligheid vanwege directe OS‑interactie.
  2. De proxy moet blijven werken als mijn interface uitvalt.
  3. De serversituatie kan wijzigen; de tool moet daarop kunnen reageren.

Chat vs Edit

GitHub Copilot kent twee standen:

  • Chat – je bespreekt code, krijgt suggesties, maar er wordt niets aangepast.
  • Edit – je verzoek wordt direct omgezet in code.

Chat gebruik ik om serverconfiguratie af te stemmen en beslissingen over het datamodel te toetsen. Edit is de échte tijdwinst, maar hier loop je tegen de contextlimiet aan. Grote bestanden worden soms half herschreven, met corrupte files als gevolg.

Tip: vraag vroeg om een modulaire opzet. Splits functies en logica over meerdere bestanden voordat ze te groot worden.

Uitdagingen

De grootste hobbel was het veilig autoriseren van de Linux‑gebruiker die het script draait en de Nginx‑ en Certbot‑acties uitvoert. Dat doe ik niet dagelijks, dus hier ging de meeste tijd in dialoog met de AI zitten.

Functionaliteiten

  • Reverse proxy’s aanmaken
  • SSL op endpoints valideren of overslaan
  • Certificaten aanvragen
  • Whitelists per domein én globaal
  • Domein‑forwarding

Screenshots

Conclusie

Dit is een lang verhaal geworden, en tegen de tijd dat ik op Publish druk, is de helft misschien alweer achterhaald—zó snel gaat de ontwikkeling. Toch heb ik enorm veel plezier in het snel bouwen van kleine applicaties met AI en in het zoeken naar een workflow die voor míj werkt.

Heb je vragen of ben je benieuwd naar details? Laat het me weten; ik deel mijn ervaringen graag.


Geef een reactie

Je e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *