Hoe maak je een puzzel toegankelijk?

Mijn onderzoek naar een puzzelprototype voor blinden en slechtzienden

Scherm met een kruiswoordpuzzel links en antwoorden plus aanwijzingen rechts

Ongeveer 2,5 jaar geleden maakten fabrikanten van legpuzzels een onverwachte financiële opleving door. Waar een deel van de geïsoleerde bevolking zich verdiepte in de wetenschap van het brood bakken en een ander deel ontsnapte aan de realiteit door een nieuw leven te beginnen in Animal Crossing, was er ook een groep mensen die volledig in de ban raakte van legpuzzels.

Legpuzzels, je weet wel, die rammelende dozen die oververtegenwoordigd zijn in de spelletjesafdeling van je lokale kringloopwinkel. Misschien waren we collectief even afgeleid door het groeiende aanbod videogames en lieten we puzzels daarom wat vaker in de spelletjeskast staan. Hoe dan ook, de eerste coronalockdown heeft bewezen dat puzzels nog altijd relevant, amusant en dus ook tijdloos zijn. Bij digital product studio Q42 wisten we dat natuurlijk al veel langer. Al bijna een decennium lang worden hier puzzels geproduceerd en die fascinatie voor puzzels resulteerde in de venture 42 Puzzles.

Daarnaast staat toegankelijkheid hoog in het vaandel bij Q42. De combinatie van puzzels en toegankelijkheid was echter nieuw. Dit leidde tot de vraag “Wat maakt een puzzel eigenlijk toegankelijk?”. Die vraag staat centraal in het onderzoek dat ik heb gedaan in het kader van mijn masterscriptie. Om de materie een beetje te verkennen, heb ik eerst bestaande puzzels getest met blinde en slechtziende gebruikers. Hun feedback heb ik meegenomen in het ontwerp van een toegankelijk puzzelprototype dat vervolgens is getest door dezelfde groep. Bevindingen uit deze testsessies heb ik vervolgens vertaald naar een lijst met richtlijnen voor toegankelijke puzzels.

Wat is een puzzel eigenlijk?

Puzzels hebben wellicht een stoffig imago. Je eerste ingeving is misschien een fysieke legpuzzel. Misschien denk je aan een sudokuboekje dat je ooit hebt aangeschaft voor je vakantie. Dat ligt nu ergens te verstoffen, omdat je heel koppig toch een niveautje te hoog had gekozen. Dat zijn inderdaad puzzels. Mocht je dat niet spannend of interactief genoeg vinden, kun je kiezen uit een enorm aanbod aan zogeheten puzzle games. Wacht, hebben we het nou over puzzels of over games?

Een korte definitie: een puzzel moet je oplossen en een spel moet je winnen – of verliezen. Een puzzel kun je eigenlijk niet verliezen; je kunt hem hooguit niet (volledig) oplossen. Je stelt je eigen vindingrijkheid, kennis en geduld op de proef door op zoek te gaan naar de óplossing van de puzzel. Een puzzel doe je maar één keer. Na die ene keer is er niet een andere manier om de oplossing te vinden, want die weet je al.

Nou zijn er ook puzzle games. In het kort zijn dat puzzels met competitieve elementen. Boggle is een voorbeeld van een puzzle game. Er zijn X aantal woorden te vinden in een 4x4 grid en bij elkaar vormen die als het ware de eindoplossing. Nou win je niet per se als je al die woorden hebt gevonden, maar wel als je er meer vindt dan je tegenstander, of als je er meer vindt dan de vorige keer en zo je eigen score verbetert. Een tijdslimiet van drie minuten maakt Boggle niet alleen spannender, maar zorgt ook voor een duidelijk eind van het potje.

Toegankelijke puzzels: puzzelen zonder zicht

Waarom is het verschil tussen puzzels en games nou zo belangrijk? Ze dienen toch hetzelfde doel, namelijk vermaak? Toch pak je een puzzel anders aan dan een spel. Bij een puzzel hoeft er niet zoveel op het scherm of op het papier te gebeuren, maar je hersenen draaien wel op volle toeren. Bij een game is er zowel visueel als auditief veel om waar te nemen. Je hersenen zijn vooral bezig met het verwerken daarvan en tegelijkertijd een passende reactie te verzinnen.

Aan de hand van eerder onderzoek naar de vereisten voor toegankelijke games zijn daar algemene richtlijnen voor ontwikkeld, namelijk the Game Accessibility Guidelines (GAG). Deze categorie met richtlijnen voor mensen met een visuele beperking richt zich vooral op toegankelijke navigatie en oriëntatie in het speelveld. Enkele voorbeelden daarvan zijn: “Provide a voiced GPS”, “Use distinct sound / music design for all objects and events” en “Simulate binaural recording”.

Deze richtlijnen zorgen er ongetwijfeld voor dat veel soorten games toegankelijker worden, maar hoe toepasbaar zijn ze op digitale puzzels? “Voiced GPS” bij een cryptogram zou kunnen inhouden dat je met je pijltjestoetsen hokje voor hokje door het veld beweegt en dat de huidige letter of de omliggende letters worden voorgelezen. Is dit nou de efficiëntste manier om door een rasterpuzzel te navigeren? Daarnaast, puzzelen houdt in dat je in een chaos van aanwijzingen een logische oplossing probeert te vinden. Hoe maak je een puzzel overzichtelijker – maar niet meteen makkelijker – voor een puzzelaar die niet een snelle blik kan werpen op reeds ingevulde antwoorden?

Toegankelijke digitale puzzels: huidig aanbod

Waar fysieke puzzels toegankelijk kunnen zijn voor blinden en slechtzienden door tastbare oppervlakken op bijvoorbeeld het speelbord en de pionnen, moeten digitale puzzels het doen met audio. Daarnaast zijn een hoop driedimensionale puzzels niet geschikt voor een digitale implementatie.

Mijn onderzoek begon met een gesprek met Koninklijke Visio, een kennis- en expertisecentrum voor visuele beperkingen, tevens klant van Q42. Daar kwam uit dat het huidige aanbod toegankelijke puzzels beperkt was. Ja, kinderpuzzels zijn nog wel te doen, maar daar zit je als volwassene niet op te wachten.

Blindheid zit je logische redeneervermogen niet in de weg, maar een tweedimensionale puzzel in een raster is wellicht lastig om naar een audio-implementatie te vertalen. Kun je een rasterpuzzel makkelijk voor je zien als je hem alleen maar hebt gehoord? En hoe zit dat met puzzels waarvan het speelveld constant verandert, zoals bij een schuifpuzzel?

Er is maar één manier om daarachter te komen: dit soort puzzels testen met echte eindgebruikers. Daarom heb ik vier digitale puzzels laten testen door in totaal vijf blinde en slechtziende vrijwilligers. Drie puzzels waren iOS-apps geproduceerd door Marty Schultz, het brein achter Blindfold Games, een serie toegankelijke audiogames. De vierde puzzel die werd getest was Wordle, in combinatie met een toegankelijke Chrome-extensie.

Eerste testsessies

Een jaar of tien geleden was de digitale schuifpuzzel 2048 razend populair voor een korte periode. Het doel van deze puzzle game is het maken van een blokje met de waarde 2048 door blokjes met dezelfde waarden over elkaar te schuiven. Omdat het al snel abstract wordt als je het alleen met woorden uitlegt, hierbij een korte animatie die het spel demonstreert:

Schermopname van een potje 2048, een digitale schuifpuzzel.

Dat blijkt ook het lastige voor deelnemers die het bord niet kunnen zien. De instructies zijn te lang en de informatiedichtheid is te hoog. Het is moeilijk om je er iets bij voor te stellen aan de hand van slechts de instructies. Gebruikers kunnen navigeren door rijen en kolommen en de schermlezer leest voor of die leeg zijn en, zo niet, wat de waarden van de vakjes in de betreffende rij of kolom zijn. Als je twee blokjes met dezelfde waarde tegen elkaar schuift, kondigt de schermlezer de positie van het blokje en de nieuwe waarde aan.

Eén tester met veel puzzelervaring had minder moeite met het visualiseren van het bord, maar andere testers zeiden dat de zetten die ze deden en de gevolgen daarvan nogal willekeurig voelden. Het leek meer gedachteloos swipen dan actief zoeken naar een oplossing.

De Blindfold-woordpuzzels vielen meer in de smaak bij de testers. De eerste puzzel was Word Ladder, waarbij je een woord moet veranderen in een ander woord door steeds één letter te veranderen. Elke zet moet een geldig Engels woord vormen. De tweede woordpuzzel was Word Flick, een toegankelijke versie van Boggle. Daarbij is het doel om zoveel mogelijk woorden (verticaal, horizontaal en diagonaal) te vinden in een 4x4 raster gevuld met letters.

Word Flick. In de derde rij kun je horizontaal het woord "red" vinden.
Word Flick
 Word Ladder. De eerste rij geeft het beginwoord aan. De tweede rij is het woord dat je op dit moment aan het veranderen bent. De onderste rij geeft het eindwoord aan.
Word Ladder 

Bij Word Ladder vonden testers het makkelijker om een heel woord met hun native toetsenbord te typen dan letter voor letter door een woord te navigeren, een letter te selecteren en die vervolgens met een in-app keyboard te veranderen. Bij Word Flick was het vooral lastig om te navigeren door het raster en tegelijkertijd letters selecteren voor het woord dat je wilt maken. Ook hierbij was het moeilijk om een goede voorstelling te maken van het spelbord. Stond er toevallig een klinker naast een medeklinker, dan was dat misschien wel een goed begin van een woord. Vanaf daar kijk je steeds verder of je er wat aan kunt plakken. Zowel Word Flick als 2048 helpt gebruikers met navigeren door middel van feedbackgeluiden. Het was echter niet direct duidelijk wat die betekenden: doe je nu een ongeldige zet (en wat maakt deze ongeldig) of bevind je je aan het rand van het bord?

Wat betreft gebruiksvriendelijkheid, was Wordle redelijk succesvol. Je werkt met één woord per keer en je hoeft geen overzicht te hebben van een heel spelbord. Waar je wel aan moet denken, zijn de letters die mogelijk in het woord voorkomen. De toegankelijke Chrome-extensie vertaalde de kleuren van vakjes naar geel wordt ‘present’, grijs wordt ‘absent’ en groen wordt ‘correct’. Voor een goed mentaal overzicht van de status van alle 26 letters in het alfabet, zul je je moeten beroepen op je goede geheugen. Hoewel je de status van alle letters kunt laten oplezen, is het tijdrovend om dat voor elke zet of zelfs meerdere keren per zet te doen. Dit werkt beter als een soort geheugensteuntje.

Wordle maakte als enige puzzel geen gebruik van pre-recorded audio. In de Blindfold woordpuzzels werden er verschillende stemmen gebruikt om onderscheid te maken tussen het toetsenbord en het woord waar je mee bezig bent. Deze audio werkte niet altijd even goed in combinatie met de native schermlezer, VoiceOver. Ze lieten elkaar niet altijd uitpraten.

Wordle
Wordle

De sessies met testers leverden de volgende puzzelrichtlijnen op:

  • Puzzels moeten zo statisch mogelijk zijn. Veranderende spelborden zijn verwarrend en kosten veel moeite om in te beelden.
  • Rasterpuzzels lijken niet zo geschikt voor audio-implementaties.
  • Het is prettig om je native keyboard te gebruiken, vooral bij puzzels op tekstbasis.
  • Feedback is altijd fijn, maar wanneer je kiest voor geluiden in plaats van woorden, zorg dan dat de betekenis ervan duidelijk is.
  • Zorg ervoor dat puzzels op tekstbasis de tekst zoveel mogelijk laten voorlezen door schermlezersoftware. Of zorg ervoor dat verschillende audiobronnen niet door elkaar worden afgespeeld.
  • Beperk de snelheid van een puzzle game en vermijd tijdslimieten (of maak ze optioneel).

Veel opmerkingen van testers sloten aan bij berichten over puzzels gevonden op AppleVis, een forum voor blinde en slechtziende gebruikers van Apple-producten. AppleVis-gebruikers benadrukten vaak het gebrek aan toegankelijke games die leuk zijn voor zowel goedziende als blinde en slechtziende gebruikers. Audiogames bevatten vaak geen visuals, wat ervoor zorgt dat goedziende vrienden en familieleden vaak niet geïnteresseerd zijn in deze spellen.

Ook gaven gebruikers aan dat spellen waarvoor je snel moet handelen of waarbij tijdslimieten gelden vaak niet zo in de smaak vallen. Vooral bij multiplayer games hebben ze het gevoel dat ze in het nadeel zijn ten opzichte van goedziende spelers. Testers beaamden dit. Bij reguliere puzzels speelt tijd meestal geen rol, maar vaak wel wanneer er sprake is van een puzzle game of überhaupt enige mate van competitie in een puzzel.

De ontwerp- en prototypefase

De testsessies waren verrassend leuk en interessant. De wanhopige zoektocht naar testers en het transcriberen van de sessies waren wat minder leuk, maar ik verheugde me het allermeest op het programmeren. Nu ik wist waar blinde puzzelliefhebbers behoefte aan hadden, wist ik ook eindelijk een beetje wát ik moest gaan programmeren.

Alle testers gaven aan dat ze een voorkeur hadden voor woordpuzzels. Hoewel dat niet zoveel te maken had met het vinden van de vereisten voor een goede toegankelijke puzzel, vond ik het wel zo leuk om een puzzel te maken die in de smaak zou vallen. Ook gaven de Nederlandstalige testers aan dat ze moeite hadden met de Engelse woordpuzzels en dat het jammer was dat er zo weinig toegankelijke Nederlandse woordpuzzels waren.

Dus het werd een Nederlandse puzzel die iets met taal te maken had. Dan ligt een kruiswoordpuzzel voor de hand, maar zo’n tweedimensionaal raster leek niet zo goed te werken. Bovendien bestaan er ook al wat toegankelijke (Engelstalige) versies van kruiswoordpuzzels. Conclusie: ik zou een kruiswoordpuzzel maken die zich niet baseert op een tweedimensionale representatie en kijk wat wel en juist niet overgenomen kan worden van andere kruiswoordpuzzels.

Andere toegankelijke kruiswoordpuzzels

Tijdens de zoektocht naar andere bestaande toegankelijke kruiswoordpuzzels viel het op dat de meeste de volgende eigenschappen delen:

  • In de lijst met aanwijzingen wordt er onderscheid gemaakt tussen horizontale en verticale woorden. Als je gebruikers niet laat navigeren door een tweedimensionale kruiswoordpuzzel, maar de aanwijzingen en de reeds ingevulde letters als een lijst presenteert, is de richting van de woorden in het raster ook niet relevant.
  • Gebruikers krijgen direct te horen of een woord goed is of niet.

Een eerder onderzoek waarin het ontwerp van een audiokruiswoordpuzzel centraal staat, had de puzzel ingericht met het doel om hem zo gebruiksvriendelijk mogelijk te maken. Ik had er zo mijn twijfels bij. Over één van deze kruiswoordpuzzels was duidelijk wel goed nagedacht, maar toch had ik mijn twijfels. Zo stonden de aanwijzingen niet in een vaste volgorde. Het programma presenteert steeds één aanwijzing aan de gebruiker. Deze aanwijzing wordt gekozen door een algoritme dat zoekt naar het woord waarvan de meeste letters al zijn ingevuld als gevolg van eerdere (correcte) zetten, bij voorkeur een woord dat nog niet eerder aan bod is geweest. Als we onze testers mogen geloven, is een statisch bord prettiger dan een almaar veranderend puzzelbord. Los van dit algoritme verandert de lijst ook door de verwijdering van opgeloste woorden. Als je een woord goed hebt, wordt de corresponderende aanwijzing direct uit de lijst verwijderd.

Het is ongetwijfeld vermoeiend om constant te scrollen door een lijst met aanwijzingen waarvan je van een aantal al zeker weet dat je ze goed hebt. Het goed rekenen en verwijderen van juiste woorden maakt het misschien wel overzichtelijker, maar naar mijn mening vormen alle woorden in een kruiswoordpuzzel één geheel en één oplossing en moet je ze dus niet los van elkaar goed rekenen. De onzekerheid over je eerdere antwoorden is juist wat het spannend en uitdagend maakt. Maar hoe maak je het dan overzichtelijk voor iemand die geen snelle blik kan werpen op wat er wel en niet is ingevuld?

Deze overwegingen resulteerden in de volgende ontwerpkeuzes:

  • Het is niet nodig om de puzzel te zien. Hij wordt omgevormd tot een lijst met aanwijzingen (incl. het aantal letters) met daaronder een invoerveld voor het juiste antwoord.
  • Je antwoorden worden pas nagekeken als je aangeeft dat je klaar bent en niet na elke zet.
  • Om overzicht te creëren kunnen gebruikers aanwijzingen verplaatsen naar een andere kolom. Dit is handig als ze het antwoord écht niet weten of het antwoord juist zeker weten.
  • De aanwijzingen staan in numerieke volgorde. Er kunnen echter nummers worden overgeslagen als de corresponderende aanwijzing naar de andere kolom is verplaatst.
  • Gebruikers kunnen op hun eigen tempo browsen door de lijst met aanwijzingen. Ze worden niet beperkt tot het zien van één aanwijzing per keer.
  • Je kunt de puzzel in je browser doen en navigeren zoals je dat gewend bent op elke andere webpagina.
Demo van het puzzelprototype. Hier kun je het prototype zelf uitproberen.

Het belang van user feedback

De vrijwilligers die de eerdere puzzels hadden getest, waren gelukkig ook bereid om het prototype te testen. Hoewel ze positief waren over het resultaat, bleek de puzzel toch wat gebreken te hebben. De feedback die ik kreeg van de testers, was ontzettend logisch en voor de hand liggend. Natuurlijk heb ik het prototype zelf getest met een schermlezer, maar mede omdat ik inmiddels de puzzel uit mijn hoofd kende en toch stiekem naar het scherm keek, was dit niet voldoende.

Testers werd gevraagd om de puzzel op te lossen zoals ze dat normaal ook zouden doen en zoveel mogelijk hardop te denken. Eén van die gedachten was: “Huh? Waar komt deze letter vandaan?” Ik had daar niet bij stilgestaan. In andere toegankelijke kruiswoordpuzzels die ik had bestudeerd, werkte dat anders. Als twee woorden elkaar kruisen en woord 1 is al goedgekeurd, verschijnt de letter die ze delen in woord 2. Dan is er geen twijfel mogelijk: deze letter hoort op deze plaats. In dit prototype wordt er tussentijds dus niks gecorrigeerd, waardoor je soms kunt gaan twijfelen aan je eerdere antwoorden. Zo ook deze tester. Er stond een N op de derde plaats (--N), maar ze wist zeker dat het woord DAM moest zijn. Nadat je een woord hebt ingevuld, wordt er wel steeds voorgelezen wat de veranderingen zijn in kruisende woorden, maar ze kon zich even niet voor de geest halen welk eerder antwoord deze onjuiste N op zijn geweten had.

Over die veranderingen: hoe relevant zijn die eigenlijk? Als je woord 2 invult, en je krijgt een melding dat woord 13, waar je nog niet eens langs bent geweest, een nieuwe letter bevat, wat heb je daar dan aan?

Dit onderzoek richtte zich op puzzels die toegankelijk zijn voor mensen met een visuele beperking en daarom werd er gekeken naar puzzeltypes die zich goed lenen voor een audio-implementatie, omdat een schermlezer nou eenmaal een pagina voorleest. Schermlezers kunnen echter ook braille-output hebben in plaats van audio. Hoewel ik me bewust was van het bestaan van brailleleesregels, heb ik daar geen rekening mee gehouden toen ik aan de slag ging met aria-labels.

Die gebruikte ik om de streepjes (‘- - N’) die leegtes in een woord weergeven voor te laten lezen als piepjes (‘piep piep N’). Veel symbolen worden door schermlezers genegeerd. ‘- - N’ zíét er logisch uit, maar streepjes worden genegeerd door schermlezers. ‘@ @ N’ ziet er minder logisch uit, maar het idee is duidelijk. Het probleem is dat de schermlezer dit voorleest als ‘apenstaartje apenstaartje N’. Dat wordt snel vervelend bij langere woorden. In dit puzzelprototype staan er streepjes op het scherm en voor elk streepje leest de schermlezer het woord ‘piep’ voor. Waar ik geen rekening mee had gehouden, was dat dat er dus ook ‘piep’ zou staan op een brailleleesregel. Een grappige ontdekking, maar één symbool per lege plek was wat overzichtelijker geweest. Daarnaast stond er door een programmeerfoutje ook niet eens ‘piep O piep E’, maar ‘piepo piepe’... 🤡

Waar de puzzel ook nog wat te wensen overliet, was de onhandige constructie van de lijst met aanwijzingen. Stiekem was dit niet een echte genummerde lijst. Er stond gewoon ‘12.’ voor het woord. Op deze manier verandert de nummering niet als je een aanwijzing verplaatst naar een andere kolom. Schermleessoftware beschikt vaak over een speciale zoekfunctie voor genummerde lijsten en die werkte zo niet, dus je was afhankelijk van cmd/ctrl + F.

Er was dus ruimte voor verbetering. Hierbij enkele suggesties van testers:

  • Voeg een knop toe die de herkomst van een letter in een woord vertelt.
  • De veranderingen die steeds worden aangekondigd zijn wel handig, maar het zou prettiger zijn als die alleen werden voorgelezen op verzoek van de gebruiker.
  • De vaste volgorde van aanwijzingen is fijn, maar misschien zou het wel handig zijn om een aparte kolom toe te voegen waarin de aanwijzingen zijn gesorteerd op volgorde van het aantal letters dat reeds is ingevuld in een woord.

Tenslotte verschilden de meningen over de mate van feedback over de juistheid van een woord. Dit zou je kunnen oplossen door gebruikers te laten kiezen tussen een moeilijke en een makkelijke modus. Ook vonden de testers dat puzzelen wel iets sociaals had. Zo zou de ene het leuk vinden om zijn score te delen met een ander en de ander zou graag de staat van zijn puzzel delen met iemand die hem misschien verder kon helpen door er nog een antwoord aan toe te voegen. De toevoeging van een toegankelijke chatfunctie kwam ook aan bod. Zo kun je samen discussiëren over mogelijke antwoorden, wat je verder helpt met de puzzel en tegelijkertijd ook een leuke manier is om mensen te leren kennen.

Eindgebruikers centraal

Smaken verschillen. Dit heeft niet alleen te maken met de soort visuele beperking die je hebt, maar ook simpelweg met je persoonlijke voorkeur.

Wat ik na mijn onderzoek hoe dan ook met zekerheid kan zeggen, is dat je iets toegankelijk kunt maken voor een breed publiek door gebruikers zoveel mogelijk te laten customizen. Of het nou de moeilijkheidsgraad of het kleurenschema is. Dat geldt voor apps, webpagina’s, games, en dus ook voor puzzels. Een puzzel moet zo uitdagend zijn als je zelf wilt, zolang het maar niet een uitdaging is op het gebied van gebruiksvriendelijkheid.

Het is vooral belangrijk dat je blinde puzzelaars een plekje biedt waar ze even al hun aantekeningen, gedachten en half afgemaakte oplossingen kwijt kunnen. Een manier om overzicht te creëren. Laat ze alle relevante informatie zelf indelen op een logische manier, zoals de kolom met tijdelijk verborgen woorden. Dat is een manier om onduidelijkheid te beperken zonder dat er te veel informatie wordt weggegeven die de puzzelervaring verandert.

In mijn onderzoek heb ik maar een paar soorten puzzels getest. Zo kan ik moeilijk uitspraken doen waarvan ik zeker weet dat ze ook gelden voor andere puzzels. Dat maakt dat de puzzelrichtlijnen soms nogal algemeen zijn. Soms klinken ze vanzelfsprekend, maar dat waren ze niet. Enkel door voldoende te testen met echte gebruikers kom je erachter of je product zo gebruiksvriendelijk is als je aanvankelijk dacht. Je kunt je product geblinddoekt testen, maar dat maakt je nog geen echte eindgebruiker. Uiteindelijk gaat het natuurlijk om de mening van eindgebruikers waarvoor je een product ontwerpt.


Wil je net als Layla een stage doen bij Q42? Check werkenbij.q42.nl/stage!