Hoofdstuk 8. Toegankelijkheid op UNIX/Linux in detail

Inhoudsopgave

Een beetje geschiedenis
Eerste generatie: 1960-1980
Tweede generatie: 1980-2000
Derde generatie: 2000-heden
Toegankelijkheidsthema's in UNIX
Gnome Accessibility Architecture
Overzicht van de belangrijkste AT's voor UNIX en Linux
Orca
GOK
Screen Magnifier
Dasher
ODF-toegankelijkheid op UNIX en Linux
Specificatie vs. implementatie
OpenOffice.org
Samenvatting

Samenvatting

Momenteel zijn Linux- en UNIX-desktops het best uitgerust om mensen met een handicap te ondersteunen. We gaan in dit hoofdstuk gedetailleerder in op de onderliggende mechanismen die deze toegankelijkheid mogelijk maken.

Een beetje geschiedenis

Eerste generatie: 1960-1980

Op de eerste computers was ondersteuning voor blinden mogelijk via een handcamera, die onder de naam Optacon op de markt werd gebracht, en die beeld van papier of van het scherm omzette tot een uit punten opgebouwd beeld dat bestaat uit trillende staafjes. Voor slechtzienden was er toegang via speciale hardware. Er bestonden ook brailleprinters en sprekende rekenmachines. (N.B. de eerste brailleregel kwam er pas in 1987.)

De beperkingen zaten hem vooral in de kostprijs. Verder was er de fysieke beperking van de snelheid van computers toentertijd: het was niet mogelijk om meer te doen dan het hoogstnoodzakelijke. Zo was er geen webtoegang en waren er geen boeken online - zelfs voor zienden werden de handleidingen afgedrukt, omdat ze anders teveel opslagcapaciteit zouden innemen. Behalve voor blinden en slechtzienden was er verder nauwelijks ondersteuning: spraakherkenning bestond niet, er was zeer marginale ondersteuning voor mensen met fysieke handicaps en van ondersteuning bij cognitieve beperkingen was al helemaal geen sprake.

Tweede generatie: 1980-2000

Text-to-speech maakte opgang in de jaren '80, bijvoorbeeld met de uitvinding van OCR (Optical Character Recognition) en spraakherkenningssoftware. Men begon ook belang te hechten aan de toegankelijkheid van de GUI, met onder andere schermvergroters en ondersteuning voor fysieke handicaps.

Het nadeel van deze aanpassingen was dat ze meestal het patchen van stuurprogramma's vereisten, zoals de toetsenbord-driver en de display-driver. Bij elke nieuwe versie van een besturingssysteem, of voor alle nieuwe hardware moesten, de stuurprogramma's dus aangepast worden. Dit resulteerde vaak in erg kwetsbare toepassingen die niet erg stabiel waren. Bovendien werkten veel toepassingen niet op basis van die patchingmechanismen, maar via een omweg, zodat ze niet toegankelijk waren of veel bijkomend werk vereisten. Veel wetgeving in verband met toegankelijkheid is dan ook voortgekomen uit deze situatie.

Derde generatie: 2000-heden

Vanaf het einde van de '90er jaren begon men anders te denken over toegankelijkheid. Dit denken weerspiegelt zich in vier kenmerken:

  • Access by Contract”: toegankelijkheid wordt niet meer aangebouwd, maar ingebouwd.

  • Elke userinterface implementeert toegankelijkheid.

  • Alles wat nodig is voor wat voor AT dan ook, wordt door het besturingssysteem aangeboden.

  • De inhoud die aangeboden wordt door AT's via de toegankelijkheidslaag is rijk, uitbreidbaar, flexibel en krachtig.

Een eenvoudig voorbeeld in Java illustreert deze kenmerken. Elk object dat kan voorkomen in een GUI, zoals een venster of een voortgangsindicator, maakt gebruik van de Accessible interface. Alle componenten die toegankelijkheid ondersteunen, moeten deze interface implementeren. De interface bevat slechts 1 methode, getAccessibleContext(), die een instantie van de klasse AccessibleContext weergeeft.

Nemen we het voorbeeld van een schuifbalk, JSlider. De Accessible Context bestaat uit een naam (getAccessibleName) en een beschrijving (getAccessibleDescription). Verder implementeert de Accessible Context een AccessibleComponent en een AccessibleValue.

De AccessibleValue heeft een aantal methodes: getCurrentAccessibleValue(), getMaximumAccessibleValue() en getMinimumAccessibleValue. De AccessibleComponent bestaat uit verschillende methodes zoals getBackground() en getForeground om de kleur te bepalen. De AT zal bepalen welke van al deze waarden gebruikt zullen worden en welke niet nodig zijn. Het is dus belangrijk dat het besturingssysteem een framework biedt, en dat ontwikkelaars hiermee rekening houden wanneer ze een programma schrijven. Dit maakt het voor de fabrikanten van AT's vervolgens erg eenvoudig om hun technologie op een bepaald platform te ondersteunen.

Toegankelijkheidsthema's in UNIX

Ingebouwd vs. aangebouwd

Toegankelijkheid op UNIX is vandaag de dag ingebouwd. Omdat we te maken hebben met een oud, volwassen systeem, is de weg om tot dit doel te komen lang en pijnlijk geweest. Initieel werd er niet aan toegankelijkheid gedacht. Toen toegankelijkheid toch een belangrijk onderwerp werd, was het in eerste instantie dweilen met de kraan open: allerlei lapmiddelen werden bedacht in plaats van het probleem aan de wortel aan te pakken. Het was een meevaller dat er vanaf het begin zoveel met de tekstuele interface gewerkt werd.

Werken met een jong platform houdt in dat je een gokje waagt: zal dat platform belangrijk genoeg worden om de ontwikkeling van toegankelijkheidstechnologie te verantwoorden? Maar op een relatief jong platform is echter nog veel ruimte om nieuwe technologieën op een logische manier te implementeren en gaat het dus snel en eenvoudig.

Met de combinatie UNIX-Gnome combineren we het beste van twee werelden: een stabiel besturingssysteem waar zelfs banken en vliegtuigmaatschappijen op vertrouwen, en de frisse wind van een nieuw framework voor toegankelijkheid.

Schermtoegang

Schermtoegang door middel van schermvergroters is altijd een moeilijke zaak geweest, en tot op de dag van vandaag gebeurt de display door redirection van de video buffer.

Schermlezers kunnen al direct gebruik maken van de API, maar on-screen toetsenborden daartegen kunnen nog veel dynamischer. Toepassingen voor mensen met cognitieve handicaps zouden system-wide aangepakt moeten worden. Er is dus nog veel werk te verzetten op dit gebied.

Duidelijke opdeling van verantwoordelijkheid

In het begin moest de AT alles doen. Dat is op bijvoorbeeld MS Windows nog steeds grotendeels het geval. Het klimaat is echter veranderd: er is een groter bewustzijn van en bij mensen met handicaps, en wetgeving wereldwijd vereist inmiddels dat ICT infrastructuur toegankelijk is.

Op UNIX is het duidelijk wie wat moet doen:

  • Het besturingssysteem definieert en implementeert de architectuur voor toegankelijkheid.

  • De toepassingen maken gebruik van de door het systeem aangeboden infrastructuur.

  • De AT focust op de user experience. Met andere woorden, de AT hoeft er alleen maar voor te zorgen dat de gebruiker een zo aangenaam mogelijke ervaring heeft. Vooral het laatste decennium zijn het de gebruikers zelf die het heft in handen nemen en opkomen voor hun recht tot deelname aan de digitale maatschappij.

Open source toegankelijkheid

Het vrijgeven van de broncode heeft velerlei voordelen:

  • Alle broncode voor toegankelijkheid op UNIX is beschikbaar en iedereen kan die bekijken, analyseren en verbeteren. Zo kan veel input verzameld worden die rechtstreeks van de gebruikers afkomstig is.

  • AT ontwikkelaars kunnen zelf bugs fixen en patches uitbrengen.

  • AT's kunnen ook hun broncode vrijgeven en zo ook input van gebruikers verzamelen. Fabrikanten mogen niet onderschatten hoeveel een andersvalide ervoor over heeft om gelijkwaardig werk te kunnen doen met de computer. Andersvaliden willen vaak zelf in de code duiken om hun leven te verbeteren.

  • Fabrikanten en gebruikers kunnen hun eigen toekomst bepalen, zonder gedwongen afhankelijkheid van een bepaald systeem waaraan ze niets kunnen veranderen.