Een eindwerk genaamd Hoja

project afbeelding terug naar portfolio

Van september 2017 tot juni 2018 werkten drie studenten van Interactive Multimedia Design aan de Thomas More Hogeschool in Mechelen aan een eindwerk genaamd “Hoja”. Ik was één van die studenten. Tezamen werkten we een jaar lang aan een systeem dat accuraat het woon-werkverkeer binnen een bedrijf kon vastleggen. Voor mij bleek het één van de leerrijkste ervaringen uit de opleiding te zijn en uiteindelijk leverde het ons een bescheiden 15 op 20 op.

Team

Ons team bestond uit drie leden. Thierry Van Craen, Jens Gillis en ik. De samenwerking verliep vlot, en dat was misschien te danken aan het feit dat we allemaal bewust waren van onze eigen individuele sterktes. Zo konden we er zorgen dat we alle drie in ons element waren en dat we de beste resultaten konden voortbrengen.

Thierry was het brein. Hij bedacht het originele concept, regelde al de paparassen, deed grondig marktonderzoek en maakte steeds optimaal gebruik van zijn connecties. Bovenal kon hij het goed uitleggen en zo sloeg hij erin om ons project altijd over te brengen met genoeg passie en visie om iedereen mee te krijgen.

Jens was de designer, in samenspraak met Thierry en ik heeft hij eigenhandig de volledige applicatie visueel ontworpen. Ook tijdens presentaties en pitches sloegen we erin om ons eindwerk telkens goed te presenteren dankzij zijn geweldige tekeningen en leuke animaties.

Ik was de developer. Ik ging na welke technologieën we het best zouden gebruiken, afhankelijk van onze ambities versus onze skillset, en uiteindelijk bracht ik onze ideeën tot uitwerking. Ik bouwde een web app compleet met een android app ontwikkeld in java, een uitdaging die niet veel andere groepen aangingen.

Tezamen werkten we een jaar lang aan het project en het leverde ons een bescheiden 15 op 20 op.

het Hoja team

Het probleem

Het eindwerk ging van start ergens in september 2017. Thierry kwam eerst op het idee. Hij had al heel lang iets willen ontwikkelen dat goed voor het milieu was en had al eerder op deze probleemstelling gewerkt voor andere projecten. Toen het idee een concretere vorm begon aan te nemen, kwam hij Jens en ik optrommelen en begonnen we samen met dit idee aan ons eindwerk. We sleutelden tesamen verder aan het idee tot we er een gezamenlijke visie over hadden.

We focusten ons op verkeer. We wilden mensen aanzetten om zich milieuvriendelijker te verplaatsen. Dat zou niet alleen beter zijn voor het milieu, maar het zou ook kunnen helpen bij het verminderen van files. Files zijn een groot probleem in België en het zijn dure problemen. Files veroorzaken indirect miljoenen euro’s verlies omdat ze alles vertragen. Talloze mensen geraken niet op tijd op hun werk en verliezen kostbare tijd. Ook de hele transport sector wordt er regelmatig dwars gelegd dankzij files. Wij wilden iets maken dat dit probleem kon verhelpen, voor het goed van zowel milieu als samenleving.

We besloten dit probleem eerst bij bedrijven aan te pakken. Bedrijven zouden een echt verschil kunnen maken aan de hand van een milieuvriendelijker beleid. Daarbij waren bedrijven een partij waaraan we ons uiteindelijke product zouden kunnen verkopen. We wisten al dat de Belgische regering pogingen deed om bedrijven aan te zetten tot maatschappelijk verantwoord ondernemen. Veel bedrijven zien er voordeel in om een MVO te zijn en ze worden verder aangemoedigd door premies voor woon-werkverkeer. Zo worden werknemers bijvoorbeeld vergoed voor de kilometers die ze afleggen en met welke voertuigen dat doen. Daarop werkten we verder.

Wij waren sceptisch over de bestaande systemen voor de kilometervergoedingen. Want hoe kan een groot bedrijf nu eigenlijk weten hoeveel kilometers een werknemer nu écht dagelijks aflegt. Hoe kan men weten met welke voertuigen die werknemer dat doet? Gewoonlijk rekenen bedrijven op het woord van hun werknemers. Het is geen exacte wetenschap we weten nooit echt hoeveel kilometers er zijn afgelegd, we kunnen enkel schatten. Met de technologie van vandaag zou dit beter kunnen.

Ons concept

Er bestaan vandaag de dag al veel mobiele applicaties die zonder problemen de locatie van de gebruiker vast leggen. Vaak doen die applicaties dat zelfs onopgemerkt. Ze draaien in de achtergrond en halen de locatie op zonder de gebruikers te storen. Wij beseften dat we makkelijk een mobiele applicatie konden maken die op een gelijkaardige manier kon vastleggen hoe een werknemer zich verplaatst.

Als de werknemers van een bedrijf zo’n applicatie op hun smartphones zouden hebben, zouden we gemakkelijk al die data kunnen verzamelen en op een bruikbare manier aan een bedrijf tonen. Dan zouden de werkgevers snel en efficiënt kunnen zien welke premies er allemaal moeten uitgeschreven worden.

Met middel van dat systeem zouden we ook kunnen zowel werknemers als werkgevers aanmoedigen om zich beter in te zetten voor het klimaat. Scores en wat vriendelijke competitie zouden werknemers kunnen motiveren, en door te tonen hoe veel voortgang of achteruitgang er is geweest sinds vorige maand kunnen werkgevers direct zien wanneer er actie ondernomen moet worden.

Dit was wat we uiteindelijk bouwden. Een tool waarmee werkgevers konden in het oog houden hoeveel kilometers er werden afgelegd door het bedrijf, per voertuig. En ook een manier om de werknemers te motiveren om zich milieubewuster te verplaatsen. Onze uiteindelijke oplossing bestond uit twee delen:

  • 1) Een applicatie voor de werknemers die hun woon-werkverkeer kan vastleggen en de nodige data opslaat en doorstuurt naar het dashboard.

  • 2) Het dashboard, een web app waarop de werkgever een volledig overzicht kan vinden van zijn werknemers en al hun afstanden.

Uitwerking - De app

De app werd een android applicatie. Het werd geschreven in java en gebruikte firebase als een realtime online database. Om offline data op te slaan gebruikten we SQLite.

Als de app geactiveerd is tijdens een reis, kan hij meten hoeveel afstand de gebruiker aflegt en met welk voertuig hij dat doet. De afstand berekent hij door regelmatig de gps van de gsm aan te roepen en te berekenen hoeveel de gebruiker verplaatst is. Enkel de afstanden worden opgeslagen, maar de locatie van de gebruiker wordt niet gebruikt.

De app kan het voertuig detecteren met google’s Activity Recognition API. Deze API kan heel goed afleiden welk voertuig de gebruiker aan het gebruiken is. Hij doet dat dankzij machine learning, aan de hand van allerlei informatie die van allerlei sensoren van de gsm komen. De app roept deze API om de vijf seconden aan. De API bepaalt dan in welk voertuig de gebruiker kan zitten, en het laat de app ook weten hoe zeker het is van het resultaat. Bijvoorbeeld, als de API 90% zeker is, dan zal dat wel kloppen en dan zal de voertuigsmeting worden opgeslagen. Als de API nog niet eens 50% zeker is, dan wordt die meting genegeerd en gaat de app er van uit dat de gebruiker nog steeds in hetzelfde voertuig zit als bij de vorige meting.

Op die manier kunnen we per werknemer goed berekenen hoeveel kilometers ze per voertuig in een maand hebben afgelegd.

Een screenshot van het dashboard

Uitwerking - Het dashboard

Het dashboard voor de werkgever was een web app gemaakt met vanilla php. De gegevens van de werkgever werden opgeslagen in MySQL en de gegevens van zijn werknemers haalden we uit firebase met behulp van javascript.

Het dashboard toont een overzicht van de hele maand. Het toont hoe veel milieuvriendelijker het bedrijf is geweest sinds vorige maand (compleet met boom), welke werknemers deze maand de hoogste scores hebben behaald en hoeveel kilometers het bedrijf in totaal per voertuig heeft afgelegd. De werkgever kan hier ook tussen de verschillende maanden bladeren en een jaaroverzicht bekijken. Hij heeft ook toegang tot een lijst van de werknemers waartussen hij kan zoeken op basis van naam of email adres. Zo kan hij van elke werknemer een overzicht vinden, met daarop ook de relevante gegevens en statistieken.

Daarbuiten heeft het dashboard ook de nodige technische features, zoals het toevoegen en beheren van users en het delen of wijzigen van de connectie code waarmee werknemers hun applicatie activeren.

Conclusie

Kortom, Hoja was een succes. Het was uiteraard maar een simpel eindwerk en naar mijn mening was het best nog een jaartje langer in ontwikkeling geweest om echt een kans op de markt te kunnen maken. Maar toch is Hoja zeker één van de weinige schoolopdrachten waar ik achteraf nog steeds trots op ben. Reacties van docenten en externen waren ook verbazend positief. We kregen er vijftien van de twintig punten voor. Waar we het meeste punten op verloren hadden was het ontbreken van nuttige enterprise features zoals bijvoorbeeld een feature waarmee de werkgever de data zou kunnen exporteren als pdf of spreadsheet. Ook het gebrek aan een goede offerte heeft ons wat punten gekost. Maar het hele team was uiteindelijk tevreden over het eindwerk dat we gemaakt hadden en het mooie resultaat mocht er zijn.

Bovenal was Hoja een grote leerervaring voor ons. Ik kan niet voor het hele team spreken, maar ik had na het project toch zeker het gevoel dat ik nu veel beter kon programmeren. Daarmee bedoel ik niet zo zeer dat ik veel heb bijgeleerd over php, css of zelfs java en android. In plaats daarvan zijn de dingen die ik geleerd heb veel subtieler en moeilijker om uit te leggen.

Ik had nog nooit eerder in mijn opleiding zo’n groot project als dit gemaakt. Toen ik plots grotendeels verantwoordelijk was voor de ontwikkeling van een volledig product, begon ik al snel te struikelen over mijn eigen tekortkomingen. Ik werd geconfronteerd met mijn eigen slordigheid, mijn traagheid en met mijn angst voor nieuwe en ingewikkelde dingen. Zeker dat laatste was iets waarvan ik dacht dat ik er als derdejaars geen last meer van zou hebben, maar dat bleek helemaal anders te zijn. Om Hoja te verwerkelijken moest ik mij over die dingen heen zetten. En dat deed ik. Uiteindelijk leerde ik veel netter en toekomstgerichter denken terwijl ik code schreef. Ik leerde ook sneller werken en ik leerde meer vertrouwen op mijn eigen vermogen om mezelf nieuwe dingen aan te leren.

Maak geen vergissing, de code van hoja is op veel plaatsen nog steeds enorm slordig, ik heb nog steeds veel te lang aan bepaalde features gewerkt en een aantal features werden uiteindelijk zelfs geschrapt omdat ze te complex bleken te zijn. Eigenlijk zie ik sommige delen van dit project als een rampenverhaal. Maar de conclusie is dat het resultaat goed genoeg was, en in latere projecten merkte ik dat ik nu stukken beter kan coderen dankzij de vele fouten die ik heb gemaakt tijdens de ontwikkeling van Hoja. De misstappen die ik toen maakte, kan ik nooit meer opnieuw maken want dankzij Hoja denk ik nu anders.

Het eindwerk is hét project van de opleiding. Het is hét project waarmee een IMD’er bewijst wat hij allemaal kan. Wat ik toen vooral bewezen heb – aan mezelf dan – is dat ik zelfs tijdens hét grote project nog heel veel te leren had.

En dat was misschien te verwachten, want wij IMD’ers stoppen nooit met leren.

Ga terug naar

het portfolio