Zelf een app of platform bouwen zonder programmeerervaring
Met Claude Code kun je zonder programmeerervaring een klein platform laten bouwen, zoals een boekingssysteem of een ledenomgeving voor tientallen tot honderden mensen. Het gaat zelden mis op de code zelf, maar op keuzes die niemand heeft gemaakt en op beveiliging die niemand heeft gecontroleerd. Jij blijft de opdrachtgever, en de verantwoordelijkheid voor wat het platform met gegevens doet, ligt bij jou.
Met Claude Code kun je een klein platform laten bouwen zonder zelf te programmeren. Jij beschrijft in gewone taal wat het moet doen; Claude maakt het en installeert het op je eigen server. Toch is het ander werk dan een website maken, met andere risico’s. De code is zelden het probleem. Het gaat mis op keuzes die niemand heeft gemaakt en op beveiliging die niemand heeft gecontroleerd. Wie dat vooraf weet, kan er rekening mee houden. Hieronder lees je wat haalbaar is en waar het meestal misgaat.
Het verschil met een website
Een website is voor iedere bezoeker hetzelfde. Op een platform logt iemand in, en daarna ziet hij bijvoorbeeld zijn eigen afspraken of zijn strippenkaart. Daarvoor is een programma nodig dat continu draait en reageert op wat gebruikers doen, met een database waarin het alles bijhoudt. In vaktaal heet zoiets een webapplicatie; ik noem het hier een platform.
Daardoor verandert ook wat er mis kan gaan. Een kapotte website is vervelend, maar een bezoeker komt later gewoon terug. Een kapot platform kan een afspraak kwijtraken of iemand de gegevens van een ander laten zien. Een platform vraagt ook onderhoud. Zo heeft de database een eigen back-up nodig, en moet het programma na een herstart van de server vanzelf weer opstarten. Ook de onderdelen waarop het draait, krijgen af en toe een nieuwe versie. Een platform is dus nooit helemaal af, en dat hoort bij de afweging.
Wat haalbaar is
Een voorbeeld. Sanne geeft yogales aan zo’n zestig vaste leerlingen, die met een strippenkaart van tien lessen werken. Nu houdt ze alles bij in een schrift. Ze wil dat leerlingen online hun resterende lessen kunnen bekijken en zich zelf voor een les opgeven. Als een les vol is, komen nieuwe aanmeldingen op een wachtlijst.
Voor Claude Code is dat een goed te overzien project, met een beperkt aantal gebruikers en maar een paar soorten gegevens. Een database die uit één bestand op je server bestaat, kan dat makkelijk aan; in Een database voor beginners lees je hoe dat werkt. Een eerste versie die al iets oplost, kan er na een paar avonden werk staan. Een boekingssysteem voor een praktijk of een plek waar klanten van een fotograaf hun foto’s kiezen, zijn van dezelfde orde van grootte.
Houd die eerste versie wel klein. Elk onderdeel dat je toevoegt, moet je testen en later onderhouden, en wie alles tegelijk wil, heeft na een maand nog niets wat werkt. Sanne laat betalen daarom voorlopig buiten het platform. De strippenkaart rekent ze af zoals ze altijd deed, en het platform houdt alleen bij hoeveel lessen er nog op staan. Online betalen komt pas als de rest een maand zonder problemen draait.
Wat je beter niet zelf bouwt
Bouw niet wat al bestaat, tenzij je een reden hebt. Voor afspraken en webwinkels zijn er kant-en-klare diensten die al jaren worden verfijnd. Zelf bouwen is de moeite waard als je iets wilt wat zo’n dienst niet biedt, of als je klantgegevens liever op je eigen server houdt dan bij een ander bedrijf. Vraag Claude eerlijk of er al iets bestaat dat jouw probleem oplost, en wat je wint en verliest door het zelf te maken. Het antwoord kan ook zijn dat je beter niet kunt beginnen.
Ook binnen je eigen platform zijn er onderdelen die je niet zelf uitvindt. Betalingen laat je afhandelen door een betaaldienst zoals Mollie, zodat je platform nooit een rekeningnummer of kaartnummer ziet. Voor inloggen gebruik je bestaande standaarden, zoals passkeys of een inloglink per mail, in plaats van een eigen systeem met wachtwoorden; daarover gaat Inloggen voor je eigen platform. En werk je met gevoelige gegevens, zoals medische dossiers, dan gelden er strengere regels dan voor een yogaschool. Dan is een pakket dat speciaal voor zulke gegevens is gemaakt de betere keuze.
Waar het misgaat
Het eerste probleem ontstaat voordat er code is. Wat jij niet vastlegt, beslist Claude voor je, en hij kiest dan wat in de meeste systemen gebruikelijk is. Mag een leerling op de dag zelf nog afzeggen? Wat gebeurt er als twee mensen tegelijk op de laatste plek klikken? Laat je zulke vragen liggen, dan kom je ze later tegen als iets wat net anders werkt dan je bedoelde. Je voorkomt dat door Claude vooraf vragen te laten stellen en de antwoorden vast te leggen in een specificatie. Hoe dat gaat, laat Van idee naar specificatie zien.
Het tweede probleem is de melding dat iets werkt. Vaak betekent dat alleen dat de verwachte route één keer zonder fout is doorlopen. Echte gebruikers doen onverwachte dingen. Ze drukken twee keer op dezelfde knop, of zetten hun naam waar hun mailadres moet. De adviezen van Anthropic voor Claude Code beginnen met precies dit punt: geef Claude een controle die hij zelf kan uitvoeren, zoals een reeks tests. Volgens Anthropic stopt Claude namelijk zodra het werk af lijkt. Laat dus voor elke regel uit je specificatie een test schrijven, en probeer daarnaast zelf de vreemde gevallen.
Het derde probleem is het ernstigste: beveiliging. Een bekende fout gaat zo. Een klant opent zijn boeking via een adres dat eindigt op /boeking/14, past het getal aan naar 15 en krijgt de boeking van iemand anders te zien. Het platform keek alleen of er iemand was ingelogd, niet of die boeking bij hem hoorde. In Waarom apps die met AI gebouwd zijn zo vaak lekken lees je waarom zulke fouten zo vaak voorkomen en wat je eraan doet.
Wat het van jou vraagt
Je hoeft niet te programmeren, maar je bent wel de opdrachtgever. Jij bepaalt wat er gebouwd wordt en kijkt of het werkt. Verantwoordelijk voor wat het platform doet, ben je ook, en dat kun je niet uitbesteden. Zodra je platform namen of mailadressen opslaat, valt het onder de AVG, de Europese privacywet. Gaat er iets mis, dan spreken je klanten jou aan en niet Claude. Wat er van je verwacht wordt, legt de Autoriteit Persoonsgegevens uit op autoriteitpersoonsgegevens.nl.
Je moet de bouwstenen genoeg begrijpen om goede vragen te stellen, zoals wat een database is en waarom een betaling pas telt als de betaaldienst hem bevestigt. Claude legt het uit als je erom vraagt. Bouw met verzonnen gegevens, want wat Claude onder ogen krijgt, wordt verwerkt op de servers van Anthropic. En reken op onderhoud: een vast moment per week om te kijken of alles draait en of de kopie van je database er staat. In de leerlijn Platformen van het online programma bouw je zo’n platform stap voor stap, met een uitgewerkt voorbeeld ernaast.
Wil je weten of jouw idee haalbaar is, schrijf dan in één zin op wie het gaat gebruiken en waarvoor. Schrijf eronder welke gegevens het moet bewaren, en schrap alles wat kan wachten. Vraag Claude daarna welke versie het kleinst is en toch al iets oplost, en of een bestaande dienst dit al kan. Dat gesprek laat je snel zien of dit een project voor jou is.
Foto bovenaan: Sóc Năng Động via Pexels