Een app om de toekomst te voorspellen

software design open source

24 januari 2021

Een tijd geleden kreeg ik het verzoek om een Tarot app te schrijven. In eerste instantie moest ik even nadenken; ik geloof namelijk niet in dit soort zaken. [discussie: moest ik deze klus daarom afwijzen?] Uiteindelijk heb ik het appje gemaakt, en daarbij kwam er een interessante afweging voorbij.

Implementatie

De functionele specificatie was als volgt: de gebruiker krijgt een geschudde pak Tarot kaarten als rij voorgeschoteld — met de rug omhoog. Vervolgens kiest de gebruiker drie kaarten. Deze worden in volgorde van selectie getoond, met per kaart wat uitleg erbij, en een telefoonnummer dat gebeld kan worden voor meer duiding door een medium.

“Modern Tarot Cards” by Neil V Fernando is licensed under CC BY-NC-ND 4.0

Ik heb dit geïmplementeerd als een array van alle kaart objecten, die ik vervolgens randomiseer. Daar loop ik doorheen en maak voor ieder object een html element aan. Als je klikt op dat element, dan wordt die kaart in de selectie opgenomen, en uiteindelijk getoond.

Op die manier probeer ik zo dicht mogelijk bij de werkelijkheid te blijven: de keuze van de gebruiker vindt plaats na het husselen van de kaarten, als de volgorde al vast ligt.

Een eenvoudiger manier zou zijn geweest: toon een rij “ruggen”, selecteer er drie (zonder dat dit iets betekent), en toon gewoon 3 willekeurige kaarten bij het “omdraaien”. Op die manier zou de keuze van de gebruiker echter geen invloed hebben op de selectie. De gebruikerservaring zou identiek zijn geweest, maar toch heb ik daar niet voor gekozen, omdat ik in mijn optiek daarmee de gebruiker voor de gek had gehouden…

Ik ben benieuwd hoe anderen daarover denken? Heeft iemand vergelijkbare ervaringen?

Andere aantekenignen

Een algoritmeregister vullen

16 februari 2023

algoritmeregister software design

Gisteren was er een bijeenkomst van de provincies in het kader van algoritmeregister, deze keer met een focus op het vullen van het algoritmeregister: wat moet erin (en wat niet).

Lees Een algoritmeregister vullen

De waanzin van standaardapplicaties

19 januari 2021

public tech software design common ground

"De definitie van waanzin is telkens hetzelfde doen, maar een andere uitkomst verwachten." Schijnbaar een uitspraak van Albert Einstein, al wordt dat tegenwoordig van elke diepzinnige uitspraak beweerd. Maar goed, in ieder geval lijkt mij hier een diepe waarheid achter schuilgaan.

Lees De waanzin van standaardapplicaties

Open Source voor Open Samenwerken

2 september 2019

open samenwerking code for nl open source

In de praktijk blijkt de mentaliteit in overheids ICT-projecten vaak nog best wel ‘closed source’ te zijn: pas als het project is afgerond, wordt de code openbaar gemaakt. Vaak duurt het zelfs nóg een paar maanden, omdat de code geschikt moet worden gemaakt voor publicatie.

Lees Open Source voor Open Samenwerken

Bekijk alle aantekeningen