Prima di addentrarmi nei meandri dell'interpretazione del codice html e dei suoi derivati, è necessario fare un confronto fra gli screen readers ed i braille viewers attualmente esistenti sul mercato.
Nella prima metà degli anni 90, quando la Microsoft rilasciò
la prima versione ad interfaccia grafica del sistema operativo DOS (windows
3.1), si rese necessario, da parte dei produttori di tecnologie assistive,
conformare i propri software alle nuove esigenze delle persone non vedenti.
La questione non era semplice da risolvere, poiché, a differenza
delle interface testuali, in cui non era necessario prevedere l'utilizzo
di un mouse o di sistemi di puntamento per oggetti ed icone, l'interfaccia
grafica richiedeva: non solo l'utilizzo del sopraccitato mouse, ma anche
una corretta interpretazione delle immagini e degli oggetti che venivano
puntati, selezionati ecc..
In quegli anni, al di fuori delle case produttrici di tecnologie assistive,
nessun altro si era interessato di accessibilità e fruibilità
dei propri applicativi da parte di persone con disabilità visiva;
per questo motivo non erano state fornite interfacce di sviluppo che le
case produttrici potessero utilizzare per adattare i propri programmi a
windows ed al suo sistema grafico.
Il primo passo verso l'accessibilità fu compiuto, inventando una
simulazione di mouse sulla tastiera e di alcuni dizionari grafici che, attraverso
l'attivazione di determinati pixel sullo schermo del PC, stabilissero di
quale icona o grafico dovesse trattarsi.
Il mouse da tastiera, tuttavia, fu la migliore invenzione e quella che è
tutt'ora mantenuta. Si tratta infatti, di dover utilizzare il tastierino
numerico, o le freccette del computer, per spostare il puntatore del mouse;
posizionarlo sugli oggetti, sulle voci di menu, sulle immagini e poi poter
cliccare su di essi, trascinarli, visualizzare dei menu contestuali ed altro
ancora.
Anche i dizionari grafici sono tutt'ora esistenti, ma sono diventati di
supporto alle librerie per l'accessibilità che vedremo più
avanti, piuttosto che di fondamentale importanza per un uso corretto delle
applicazioni. Questo è dovuto al fatto che le immagini e i simboli
sono in continuo aumento, quindi sarebbe difficile mantenerle tutte in database
grafici, che dovrebbero essere costantemente aggiornati; ma gli stessi,
diventerebbero di dimensioni tali da rallentare il funzionamento dei programmi
di lettura dello schermo, nonché del sistema operativo in generale.
Per quanto riguarda la messa in opera di questi programmi, quello che più
si adattava alle esigenze dei non vedenti era OutsSpoken, prodotto dalla
Alva Access Group. Questo software nasce come semplice programma di lettura
schermo; il suo utilizzo, infatti, non prevede, almeno nelle versioni iniziali
l'utilizzo di un display braille a supporto della sintesi vocale. Tra le
altre cose utilizzava sintesi vocali esterne che dovevano essere connesse
al PC a mezzo di un'interfaccia seriale o parallela. La sintesi software
veniva utilizzata solo in parte e solo in lingua inglese, non essendo disponibile
alcun modello sintetico in lingua italiana. Era un software estremamente
intuitivo da utilizzare, con pochi comandi ma molto efficaci. Il mouse da
tastiera si gestiva interamente con il tastierino numerico, così
come i comandi da impartire al programma. Purtroppo però, con l'aumentare
delle applicazioni, la scarsità di comandi per la lettura dello schermo
non lo rese in grado di essere applicato a molti programmi, quindi le funzioni
e i comandi da tastiera dovettero aumentare. Dopo qualche tempo si rese
necessario adattare il software anche all'utilizzo con i display braille;
ciò rendeva possibile, ai non vedenti, scrivere un documento e ricontrollarlo
con il display braille senza doverlo far rileggere alla sintesi vocale.
OutSpoken veniva anche realizzato per i sistemi della Apple, su omputer
Macintosh; questa sua predisposizione per i sistemi su Mac lo rende prestigioso
dal punto di vista dell'accessibilità degli applicativi, poiché
si può parlare di un sistema di lettura schermo multi piattaforma,
a differenza di altri programmi che invece non lo sono.
Un altro software degno di essere menzionato si chiama Hal ed è
prodotto dalla Dolphin systems. Questo software era stato già realizzato
per piattaforme MS-DOS. La particolarità di questo programma consisteva
in un sistema di configurazione per essere ambientato e personalizzato per
ogni applicazione. Per spiegare meglio, quando l'utente si trovava di fronte
ad una applicazione che con i normali comandi non riusciva a gestire, poteva,
attraverso delle macro, fare in modo che Hal si accorgesse di ciò
che era stato evidenziato; si potevano creare delle porzioni di schermo
che il programma leggeva al momento dell'attivazione di un particolare evento
ecc. Il programma risultava però molto complesso da imparare; i comandi
erano molti, così come le opzioni di configurazione; tuttavia lo
si può definire all'avanguardia in tutti i sensi, dal momento che
fu la prima applicazione di lettura schermo che prevedesse le ambientazioni
personalizzate per vari programmi. Ovviamente ne esiste anche una versione
per Windows e, a differenza di Outspoken che non è più prodotto
per questo sistema, Hal è ancora in commercio. Ultimamente è
stato attivato, come per Outspoken, il supporto ai display braille. Possiede
un emulatore di mouse, come Outspoken ed un cursore virtuale che permette
la navigazione in rete, di cui parleremo più avanti.
Gli screen readers ed i braille viewers sono ovviamente molto costosi; per
questo motivo, in rete vengono messe a disposizione delle demo per provarne
il funzionamento. In generale, queste demo hanno un tempo di utilizzo limitato
di circa 30 minuti e non consentono l'uso dei display braille; in questo
modo, una persona che ne voglia testare e valutare le capacità dovrebbe
prima acquistare il prodotto e poi valutarlo secondo le sue esigenze. Si
può chiaramente comprendere che ciò non è sempre possibile,
dato che il costo di questi software è generalmente molto elevato;
mediamente si aggira intorno ai1300-1600 euro. La limitazione all'utilizzo
dei display braille nelle demo, è dovuta al fatto che questi ultimi
sono considerati un bene di lusso per i non vedenti; essi infatti costano
quasi il triplo delle sintesi vocali. Fino alla prima metà degli
anni '90, un display braille a 40 caratteri si aggirava, come costo, intorno
ai 20 milioni. Benché le U.S.S.L. mettessero a disposizione un contributo
minimo, non era cosa di tutti acquistare un display braille. Chi era ospitato
in un istituto per ciechi poteva utilizzare quelli che l'istituto stesso
metteva a disposizione, ma comprarne uno per uso personale non era alla
portata di tutti.
Solo ultimamente i display braille sono diventati molto più accessibili
dal punto di vista economico, pur mantenendo costi molto elevati; un display
braille economico di buona fattura si aggira intorno ai 2000 euro.
Tuttavia, vi sono dei software che sono stati sviluppati per essere dedicati
al solo utilizzo dei display braille; soltanto in seguito è stato
aggiunto un supporto per sintesi vocali.
Windots, per esempio, nacque con Windows 95 e permetteva, attraverso il
solo utilizzo di display braille, di avere una descrizione abbastanza esauriente
della finestra su cui il cursore aveva il focus.
Virgo, anch'esso nato per essere utilizzato con display braille, era in
grado di dare una descrizione di quante finestre erano aperte sullo schermo
e permetteva di passare da una finestra all'altra. Quando si accedeva ad
una applicazione, era in grado di dare una descrizione dei controlli che
facevano parte della finestra.
Una particolare attenzione e descrizione più approfondita, derivante
da anni di esperienza ed anche alla versatilità di questo software,
va data a Jaws (Job Access With Speech), prodotto dalla Freedom Scientific.
Questo programma nasce già per sistema MS-DOS esclusivamente come
lettore di schermo; tutt'ora è possibile scaricarne una versione
gratuita dal sito della Freedom Scientific (), che però non supporta
la sintesi vocale software e supporta pochissime sintesi vocali hardware.
Questo software è, probabilmente il migliore per quantità
di funzionalità, ricco a dismisura di comandi per l'accesso ai programmi
e per la navigazione in rete.
La particolarità importante è che negli anni ha mantenuto
sempre la stessa modalità di comandi; per fare un esempio, già
dalla versione per MS-DOS, il comando insert+s, che seleziona la modalità
con la quale il testo che appare sullo schermo viene letto, è rimasta
negli anni ed è tutt'ora in vigore. Quelle persone che hanno cominciato
la loro carriera informatica utilizzando questo screen reader, hanno il
vantaggio di conoscere tutti i comandi che solitamente non cambiano nel
tempo; quindi è chiaro che non sono molto propensi a cambiare programma,
anche perché la versatilità con la quale si utilizza è
davvero singolare e molto rivoluzionaria. Bisogna considerare, cosa non
da poco, che nell'azienda che produce questo programma, lavorano delle persone
non vedenti. Quest'azienda, ha realizzato un linguaggio di programmazione
proprietario, che gira sotto jaws, chiamato "Scripting Language".
Questo linguaggio permette di scrivere dei programmi che interagiscono con
le applicazioni più disparate; attraverso una serie di funzioni,
messe a disposizione dal linguaggio, è possibile realizzare dei programmi
anche molto complessi che sono in grado di effettuare operazioni di vario
tipo: spostamento e trascinamento di oggetti ed immagini, puntamento ed
attivazione di pulsanti, attivazione di eventi, controllo del buffer di
tastiera, ecc..
Queste persone non vedenti hanno realizzato più di mille script per
altrettante applicazioni. Ciò fa sì che Jaws sia tutt'ora
lo screen reader più utilizzato e più all'avanguardia, almeno
per quanto riguarda Windows.
Ma come ciò sia stato reso possibile, è presto detto: con
il nascere di Microsoft Windows 95, sono state realizzate, dalla Microsoft
appunto, delle librerie di funzioni in grado di mettere a conoscenza i lettori
di schermo un vasto numero di proprietà per le applicazioni attive.
Le Microsoft Active Accessibility Application Program Interface (MSAA API),
infatti, sono delle librerie che creano, all'interno del sistema operativo,
delle classi di oggetti pubbliche; tali classi sono in grado di fornire
ai programmi per le tecnologie assistive, tutte le informazioni necessarie
sui controlli appartenenti ad una finestra, sugli elementi che fanno parte
di questi controlli, sui menu ed anche sul codice html che viene caricato
nei browser. In questo modo, i lettori di schermo possono accedere a queste
informazioni ed interfacciarsi con esse; modificarne le proprietà,
trasformare in testo i loro valori, permettendo così agli utenti
di fruire di tutte le funzionalità che gli applicativi mettono loro
a disposizione.
Per far ciò, ovviamente, vi sono delle regole da seguire per coloro
che sviluppano software: bisogna utilizzare i controlli standard messi a
disposizione dalla stessa microsoft; solo così infatti le MSAA riescono
a rilevare di quali controlli si tratta ed estrapolarne il testo. Oppure,
se non si vogliono utilizzare i controlli standard, bisognerebbe comunque
acquisire nozioni di programmazione delle MSAA, scaricabili gratuitamente
sul sito della Microsoft e fornite di una notevole documentazione per il
loro utilizzo; facendo in modo di informare le API, che l'esistenza di un
controllo non standard, può essere associata ad un controllo standard;
in questo modo, le MSAA informano i lettori di schermo di quali controlli
si tratta; quindi si ottiene lo stesso risultato che si otterrebbe usando
le finestre standard Microsoft. Occorre infine considerare che quando si
creano controlli non standard, solitamente gli sviluppatori non prevedono
quasi mai l'utilizzo della tastiera per spostarsi da un controllo ad un
altro; ciò rende impossibile ad un lettore di schermo utilizzare
quell'applicazione, benché essa sia stata correttamente veicolata
dalle MSAA. Ecco perché Jaws ha un linguaggio di scripting; proprio
per permettere l'utilizzo di quelle applicazioni che non hanno una standardizzazione
nei loro controlli; ed anche quelle che ce l'hanno, ma non hanno previsto
l'uso della tastiera per spostarsi tra un controllo ad un altro. Un esempio
fra tanti è il Microsoft Office; benché questo pacchetto di
applicativi sia stato progettato tenendo conto delle librerie per l'accessibilità,
in taluni programmi non prevede (e se lo fa lo fa poco), l'uso della tastiera.
Questa breve panoramica sull'accessibilità degli applicativi, vuole
essere propedeutica per affrontare approfonditamente il discorso delle applicazioni
basate sul web. Per tali applicativi, infatti, esiste un linguaggio di formattazione
del testo chiamato HTML (HyperText Markup Language); esso permette di creare
delle documenti, attraverso i quali è possibile accedere ad altri
documenti: si possono compilare moduli, vi sono applicativi per leggere
le email, si può chattare e molto altro ancora.
Sarebbe impossibile, da parte dei lettori di schermo interpretare correttamente
le pagine web basandosi solo su ciò che appare sullo schermo; questo
linguaggio infatti, non prevede quasi mai delle regole fisse di scrittura
dei documenti lasciando all'autore della pagina l'onere di strutturarla.
Le librerie per l'accessibilità si preoccupano dunque di rendere
visibili le informazioni messe a disposizione dal codice HTML ai lettori
di schermo i quali, attraverso una reinterpretazione, devono fornire un
output comprensibile all'utente che così sarà in grado di
accedere alle informazioni del documento.
E' di questo che parlerò la prossima settimana; cioè vedere
come i lettori di schermo interpretano il codice e, in base ai suoi elementi,
che tipo di output restituiscono all'utente.
In questo modo Jaws è riuscito a divenire nel tempo il software con
il più vasto numero di applicativi accessibili alle persone prive
della vista; introducendo, tra le altre cose, l'utilizzo dei display braille,
supportati da un ampio numero di funzioni per renderli molto ben combinati
con la sintesi vocale.
Un altro software che mette a disposizione un linguaggio di scripting è
il WindowEyes, ma soltanto ultimamente. Gli altri lettori di schermo (Hal,
Virgo), si stanno adeguando agli standard; navigano il web allo stesso modo
diJ ed utilizzano le librerie per l'accessibilità alla stessa maniera.
Per esaminarli tutti, bisognerebbe averli acquistati tutti; poiché,
come si diceva in precedenza, le copie dimostrative sono molto limitate
nel loro utilizzo; tendono soprattutto a dare all'utente una panoramica
generale delle funzioni che il lettore di schermo mette loro a disposizione,
ma non si riesce ad entrare nei particolari.
Analizzerò soprattutto il comportamento di Jaws nella lettura delle
pagine web: più correttamente si scrive il codice, più correttamente
lo screen reader lo interpreterà.
2. Approccio alla navigazione nel web
Webxtutti aderisce alla Campagna per l'Accessibilità delle Biblioteche in rete
Campagna AccessibilitàWebxtutti supporta l'iniziativa dell'anno europeo delle persone disabili
E' in linea Web accessibile il sito nato per la promozione, diffusione e applicazione delle guidelines WAI.