Klant
Script (script.nl)
Een planningapp voor mensen die structuur in hun dag nodig hebben. Deze app was oorspronkelijk gebouwd door een ander bedrijf en is daarna overgenomen door Script. Tijdens mijn stage van zes maanden heb ik hem vanaf nul herbouwd in Flutter, een codebase voor iOS en Android. Vijf jaar later nog steeds live en dagelijks in gebruik.
01 · Activiteit-timer
02 · Dagweergave
03 · Activiteit-detailScript (script.nl) is een Nederlandse zorgorganisatie in Groningen die ICT-leer- en werktrajecten draait voor kinderen en volwassenen met autisme of hoogbegaafdheid. Ongeveer 150 actieve cliënten, verdeeld over dagbesteding, maatwerk en re-integratie. Hun motto: "geen aangepast werk, gewoon echt werk." Cliënten leren programmeren, pakken projecten op, en werken toe naar banen in de reguliere ICT.
Daymate is gemaakt voor diezelfde doelgroep: mensen die hun dag graag in vaste blokken indelen. Ochtendroutine, werk, pauzes, einde dag, met meldingen op de tijden die ze zelf kiezen. Voorspelbare structuur is hier geen extraatje, maar de kern van het product.
Script heeft Daymate overgenomen van een ander bedrijf. Het idee klopte, maar de uitvoering nog niet: een MVP die niet werkte zoals bedoeld en op belangrijke onderdelen miste wat hij moest doen. Mijn stageopdracht had drie stappen: onderzoeken of de bestaande codebase reparabel was, en zo niet, een alternatief kiezen en de front- en backend opnieuw opbouwen.
De eerste weken heb ik de bestaande app op beide platforms werkend gekregen om te kunnen zien waar het probleem precies zat. De codebase was opgesplitst in een aparte versie voor iOS en een aparte versie voor Android, die op meerdere plekken uit elkaar waren gegroeid. Daardoor moest iedere fix in feite twee keer gemaakt worden, en bleek het lastig om de app structureel werkend te krijgen.
Op basis van de diagnose kwam ik tot de conclusie dat alleen een herbouw zou werken. Voor de techniek koos ik Flutter: één codebase voor beide platforms, prestaties die dicht bij native lagen, en een eigen manier van renderen in plaats van het vertalen naar losse iOS- en Android-componenten zoals andere cross-platform frameworks doen. Dat maakte het op dat moment een veelbelovende keuze, en achteraf bleek het ook de juiste.
Voor de backend en het inloggen heb ik Laravel en MySQL gebruikt. Meldingen lopen via Firebase, en die zijn cruciaal — zonder meldingen werkt de app niet. Mixpanel hield bij wat gebruikt werd en wat niet, zodat keuzes op data konden leunen. Ik schreef de code en maakte de architectuurkeuzes; de lead developer reviewde waar dat hielp, en de projectmanager bewaakte de scope met dagelijkse standups.
Voordat Daymate in de stores belandde, heb ik hem eerst intern getest met cliënten die interesse hadden. Daarna ging hij publiek, en stond na zes maanden in zowel de App Store als de Play Store. Vijf jaar later wordt hij nog dagelijks gebruikt in de zorgsettings waarvoor hij bedoeld was. Inmiddels is een andere engineer bij Script erop gaan doorbouwen, en pakt hij bugs aan en bouwt nieuwe verbeteringen toe.
04 · Activiteit-bewerkflow
05 · Instellingen
06 · Informatiemenu"Geweldige app, zo fijn!"— Play Store-review
Daymate ging in 2021 live en wordt sindsdien dagelijks gebruikt in de zorgsettings waarvoor hij gemaakt is. Een andere engineer bij Script werkt er nu verder aan.
Een kleine, vaste groep mensen in een specifieke zorgcontext. Geen massaproduct, maar een app die doet wat hij moet doen voor de mensen die hem nodig hebben.
Twee aparte native versies vervangen door één Flutter-codebase. Daardoor kon een collega vijf jaar later het project weer oppakken zonder eerst twee aparte codebases te hoeven leren.