Een spreadsheet is een wondermiddel. Je kunt er offertes mee bijhouden, voorraden in beheren, klantgegevens in parkeren en planningen mee samenstellen. Tot op zekere hoogte werkt dat prima, zeker in de beginfase van een bedrijf. Maar ergens kantelt het. Collega's overschrijven elkaars gegevens, de bestandsnaam eindigt op _v7_definitief_ECHT.xlsx, en iemand werkt al drie weken met een verouderde versie zonder dat iemand dat doorheeft. Dat moment is precies waar ik in mijn werk als developer het vaakst word ingeschakeld: niet omdat een ondernemer per se iets nieuws wil bouwen, maar omdat het bestaande systeem scheuren begint te vertonen die geld kosten.
Wat maakt een spreadsheet ongeschikt als bedrijfsproces groeit?
Een bestand dat lokaal staat opgeslagen is geen applicatie. Het heeft geen toegangsbeveiliging op rolniveau, geen auditlog die bijhoudt wie wat heeft gewijzigd, geen automatische koppelingen met andere systemen en geen validatielaag die onzinnige invoer tegenhoudt. Wanneer drie medewerkers tegelijk in hetzelfde document werken, ook al is het via Google Sheets of OneDrive, ontstaan er vroeg of laat conflicten, fouten of verlies van data.
Dat klinkt als een IT-probleem, maar het is eigenlijk een bedrijfsrisico. Stel je voor dat een verkoper een order bevestigt op basis van een voorraadcijfer dat al uren geleden door een collega is bijgewerkt. Of dat een factuur twee keer de deur uitgaat omdat twee mensen tegelijk een rij hebben toegevoegd. De fout is klein, de impact op klantrelaties of cash flow kan groot zijn. Een webapplicatie die dit proces ondersteunt, heeft één centrale databron, dwingt invoerregels af en laat precies zien wie wat heeft gedaan.
Toch is de drempel om die stap te zetten hoger dan hij hoeft te zijn. Dat heeft te maken met hoe een spreadsheet aanvoelt: vertrouwd, aanpasbaar, goedkoop. Een maatwerk applicatie voelt abstract en duur. De vraag die ik ondernemers dan ook het meest hoor is niet "wat kost het", maar "hoe weet ik of het de moeite waard is".
Drie signalen die zeggen dat je klaar bent voor maatwerk
Het eerste signaal is repetitie. Als medewerkers dagelijks dezelfde handelingen uitvoeren die makkelijk geautomatiseerd kunnen worden, verdampt er elke maand een hoeveelheid betaalde uren aan klikwerk dat niets toevoegt. Denk aan het handmatig kopiëren van gegevens van het ene sheet naar het andere, het sturen van vaste e-mails op basis van een statuswijziging of het handmatig berekenen van iets dat een systeem in milliseconden doet. Een webapplicatie neemt die herhaling over.
Het tweede signaal is fragmentatie. Wanneer dezelfde informatie op meerdere plekken staat, in een spreadsheet, een mailbox, een WhatsApp-gesprek en een boekhoudpakket, is het wachten op de eerste keer dat die bronnen elkaar tegenspreken. Een geïntegreerde applicatie heeft één kern waar alle gegevens samenkomen, en koppelt van daaruit met externe systemen via API's. Dat voorkomt niet alleen fouten, het maakt ook rapportage plotseling een stuk eenvoudiger.
Het derde signaal is schaalbaarheid. Een spreadsheet met vijftig rijen werkt anders dan eentje met vijftigduizend. Niet alleen technisch, want filters en draaitabellen worden traag, maar ook organisatorisch: hoe meer mensen erin werken, hoe kwetsbaarder het geheel. Het moment dat een medewerker vertelt "ik moet dit bestand altijd zelf opschonen voor ik het kan gebruiken" is het moment dat de spreadsheet zijn functie als betrouwbaar hulpmiddel heeft verloren.
Wat een webapplicatie in Laravel concreet verandert
Laravel is het PHP-framework waar ik zelf mee werk. Niet omdat het het enige goede framework is, maar omdat het na achttien jaar bouwen nog steeds de beste balans heeft tussen snelheid van ontwikkeling, structuur en onderhoudbaarheid op de lange termijn. Een applicatie die ik in Laravel bouw heeft een duidelijke architectuur, is te testen, en kan door een andere developer worden overgenomen als ik ooit niet beschikbaar ben. Dat laatste is geen detail als je een bedrijfskritisch systeem bouwt.
Neem een dienstverlener in de zakelijke markt die werkt met projectfases, tijdregistratie en maandelijkse facturatie aan vaste klanten. Die kan in theorie alles in Excel bijhouden, maar zodra er een koppeling nodig is met een boekhoudpakket als Exact of Moneybird, wordt het handmatig exporteren en importeren van gegevens een wekelijkse taak die fouten oplevert. In Laravel bouw ik een applicatie die via de API van het boekhoudpakket facturen aanmaakt op basis van de geregistreerde uren, zonder menselijke tussenkomst. De medewerker sluit de maand af in de applicatie, de facturen staan klaar in het boekhoudpakket. Dat is geen luxe, dat is gewoon logisch.
Daarnaast zijn zaken als toegangsbeheer, notificaties en audit trails in Laravel standaard goed te regelen. Elke gebruiker krijgt precies de rechten die bij zijn rol horen. Wijzigingen in gevoelige data worden gelogd. Wanneer een status verandert, gaat er vanzelf een notificatie naar de juiste persoon. Dat zijn geen features die ik apart moet uitvinden, dat is het fundament waarop de applicatie staat.
Wat het kost en hoe je dat afweegt
De investering in een maatwerk webapplicatie ligt doorgaans tussen de vijftienduizend en vijftigduizend euro, afhankelijk van de scope. Dat klinkt als veel, maar het is de verkeerde vergelijking als je die som afzet tegen de prijs van een spreadsheet. De juiste vergelijking is: wat kost het bedrijf per jaar aan verspilde uren, fouten en gemiste koppelingen door het huidige systeem te blijven draaien?
Stel dat drie medewerkers elk anderhalf uur per dag kwijt zijn aan handelingen die een applicatie overneemt. Bij een gemiddeld uurtarief van vijftig euro intern is dat ruim zeventienhonderd euro per week. Op jaarbasis overtreft die kostenpost de investering in een maatwerk applicatie ruimschoots, en dan zijn de kosten van fouten nog niet eens meegeteld. Een goed gebouwde applicatie heeft ook een levensduur van vijf tot tien jaar, zeker als de architectuur op orde is en er periodiek onderhoud plaatsvindt.
Wat ik daarnaast altijd bespreek is de total cost of ownership. Een applicatie is geen eenmalige investering. Er zijn hostingkosten, beveiligingsupdates, nieuwe wensen vanuit de organisatie en soms aanpassingen door wetgeving of koppelingen die veranderen. Die kosten zijn bij maatwerk goed te overzien en te plannen, in tegenstelling tot een plug-in-zwaar WordPress-systeem dat na drie jaar technische schuld heeft opgebouwd zonder dat iemand dat bewust heeft gekozen.
Hoe het traject eruitziet in de praktijk
Voordat ik een regel code schrijf, breng ik het proces in kaart. Welke stappen doorloopt een medewerker nu? Waar zit de pijn? Welke data is er al, en in welke vorm? Die inventarisatie duurt doorgaans een tot twee weken en levert een functioneel ontwerp op dat als fundament dient voor de bouw. Dat ontwerp wordt besproken, bijgesteld en pas daarna omgezet in een applicatie.
Bouwen doe ik iteratief. Dat houdt in dat er na een paar weken al een werkende versie is die je kunt testen met echte data, en dat aanpassingen vroeg in het traject nog relatief goedkoop zijn. Dat iteratieve proces verkleint het risico dat je aan het einde van een project een systeem oplevert dat niet aansluit op hoe het bedrijf écht werkt. In de praktijk merk ik dat ondernemers in die testfase alsnog wensen ontdekken die ze bij de intake niet hadden kunnen benoemen, juist omdat ze voor het eerst iets concreets zien werken.
Een goede developer is ook een sparringpartner die durft te zeggen wanneer iets technisch gezien geen goed idee is, of wanneer een wens beter op een andere manier opgepakt kan worden. Dat is de waarde van achttien jaar ervaring: niet alleen kunnen bouwen, maar ook weten wanneer je iets anders moet aanpakken dan de opdrachtgever in eerste instantie voor ogen had. De beste projecten zijn die waarbij opdrachtgever en developer samen aan een tafel denken, niet waarbij de een een lijst aflevert en de ander die klakkeloos uitvoert.
Wil je meer weten over wat een maatwerk webapplicatie voor jouw organisatie betekent, dan vind je een overzicht van hoe ik dat aanpak op https://pimvdmolen.nl/diensten/webapplicaties. Voor een vrijblijvend gesprek over jouw specifieke situatie kun je terecht via https://pimvdmolen.nl/contact.