La visione corretta di questa presentazione richiedere l'installazione del font “Tiresias PCFont”
Disponibile in Ubuntu con il pacchetto ttf-tiresias
Oppure scaricabili dal web presso http://www.tiresias.org/fonts/
Parte introduttiva... In alcuni ambienti Ubuntu e in generale Linux è visto come non adatto perché “non professionale”
Però negli ultimi anni c'è stato un forte riscontro di pubblico e pareri positivi, sia generici che specializzati
Tale discrepanza di giudizio può lasciare basiti
Lo scopo di questo seminario è proprio quello di fornire un punto di vista oggettivo e completo su quello che è lo stato attuale di Ubuntu, in particolare per quanto concerne le varie soluzioni e tecnologie disponibili per l'accesso universale
Per coloro che dovessero sentire per la prima volta la parola Ubuntu, una rapida introduzione
http://www.flickr.com/photos/valmirez/
Ubuntu è molte cose.
Essenzialmente è un sistema operativo e un insieme di applicazioni opensource
Ma le sue modalità di sviluppo ne allargano i confini. Ubuntu è chi partecipa al suo sviluppo, esperto, professionale, volontario, amatoriale che sia.
La promessa Ubuntu:
Sarà sempre gratis, nessuna versione enterprise e aggiornamenti di sicurezza
Disponibile supporto commerciale
Include il meglio offerto dalla comunità Free Soft per quanto concerne l10n e a11y
La base di Ubuntu sarà sempre costituita da applicazioni free e open source
Quali i motivi che potrebbero o dovrebbero spingere una persona a usare Ubuntu? Quali poi nell'ambito dell'accesso universale?
Ne elenchiamo alcuni...
Esistono diversi sistemi operativi liberi e molte distribuzioni Linux.
Scegliere Ubuntu vuol dire avere un sistema operativo che tenta di evitare all'utente ogni possibile problema, particolarmente per quanto concerne il supporto hardware.
A differenza di altri ambienti, con Ubuntu si è operativi fin da subito (come mostreremo poi con Orca).
La modalità di distribuzione di software aggiuntivo rende poi semplicissima l'installazione di software aggiuntivo
Ovviamente per chi proviene da altri ambienti è necessario un periodo di “apprendimento” per apprezzarlo al meglio
L'idea stessa di un sistema operativo sviluppato grazie ai contributi di persone provenienti da tutto il modo e destinato a tutti pone particolari e importanti premesse allo sviluppo stesso
Quando ha avuto inizio l'interesse per l'accessibilità nel software libero?
Per essere precisi nel 2001, lo stesso anno in cui Microsoft lanciava Windows XP e la Apple Mac OS X)
La Sun ha bisogno di un nuovo ambiente grafico per il suo Solaris e sceglie GNOME
Ma per poter vendere alle istituzioni è necessario che il sw sia accessibile (sezione 508 del Rehabilitation Act)
Per la prima volta si parla in modo serio di a11y nel software libero, per la prima volta diventa una valida alternativa per tutti.
Le motivazioni dietro la spinta a supportare la a11y sono pratiche.
Il fatto però che la a11y sia richiesta non è solo un prendersi cura di chi è diverso. Dell'infrastruttura per l'accessibilità ne traggono tutti (per esempio la navigazione da tastiera)
Lo scopo di ATK è quello di definire un set di interfacce che verranno poi implementate nei componenti GUI al fine di renderli accessibili.
Informazioni semantiche
Tali interfacce sono indipendenti dal toolkit (GTK+, Qt, Firefox, OpenOffice.org...); i singoli toolkit poi forniscono i componenti necessari per “far aderire” le interfacce ATK agli oggetti grafici.
Esempio: un pulsante nella UI lo si fa aderire all'interfaccia AtkAction (azioni “press”, “release”, “clic”) e all'interfaccia AtkState (stati “invalid”, “active”, “pressed”)
ATK in pratica permette di definire gli oggetti grafici in base a proprietà, non aspetto o forma.
SPI è il modo per ottenere le “informazioni ATK” dalle singole applicazioni in esecuzione in modo coerente e univoco.
Non è visibile all'utente, ma funge da collante tra chi fornisce le “Informazioni ATK” e chi poi le dovrà usare
Al momento è in corso una riscrittura di AT-SPI per ammodernarne la modalità di funzionamento base (IPC da CORBA a Dbus) in modo da estendere la sua penetrazione (Qt, Mobile)
Verde – applicazioni finali dedicate all'accessibilità
Rosso – AT-SPI, il BUS che collega i vari elementi
Arancione – ATK (vedi slide precedente)
Viola – Implementazione a livello di GUI delle interfacce definite da ATK
BLU – Applicazioni varie di GNOME, ma ovviamente in blu ci dovrebbe essere anche FF e OO.o
Funzionamento del bus AT-SPI, parte 1.
Attraverso di esso le applicazioni “finali” dette provider inviano notifica di eventi alle applicazioni “dedicate” dette client.
Esempio: il focus viene spostato su un pulsante, il provider rende noto allo screen reader il nome/testo del pulsante
Funzionamento del bus AT-SPI, parte 2.
Attraverso di esso le applicazioni “dedicate” dette client inviano richieste alle applicazioni “finali” dette provider.
Esempio: la tastiera a schermo GOK chiede all'applicazione l'elenco dei menù per generare una tastiera virtuale.
Notare che attraverso questa infrastruttura non solo è possibile creare applicazioni utili a verificare se tutti i componenti di una applicazione sono accessibili, ma anche per creare test d'uso automatizzati
“Inserito da dentro, non avvitato da sopra”
Non sono necessari complessi sistemi basati su “off-screen” necessari alle applicazioni AT-relati di altri sistemi operativi.
La metodologia (ATK, AT-SPI) è unica e standardizzata, senza necessità di ricorrere a metodi non canonici, non documentati o strettamente legati alla singola applicazione o versione.
Esempio di “built in” nel mondo reale. Una rampa ben progettata. Può essere usata anche da chi non è necessariamente sulla sedia a rotelle.
Immagine da http://picasaweb.google.com/ecosense
Esempio per confronto di una rampa “bolted on”, dell'asfalto gettato sopra al bordo di un marciapiede. Ben poco funzionale
Immagine da http://www.flickr.com/photos/wilsonh
Elenco delle esigenze per le quali è necessario avere un software accessibile.
Apprendimento richiede interfacce/programmi dedicate
Uditivo al momento ci sono solo:
* sottotitoli integrati in Totem (scaricabili da internet)
* iniziato da poco a lavorare su resa visiva di segnalazioni audio, ma è un progetto giovane.
Inizia qui la parte in cui si esaminano i vari strumenti per problemi di mobilità
Due tipi di intervento. Il primo è intervenire (modificandolo) sul comportamento di mouse e tastiera
Interventi applicati al comportamento della tastiera
Cfr anche http://a11y.org/a11yspecs/kbd/kafs.html
Sticky → pressioni sequenziali invece che temporaree. Tasti modificatori latched o locked
Repeat → controllo sui parametri di ripetiz. autom. Utile per persone che non riescono a rilasciare i tasti
Slow → controlla il tempo che è necessario tenere premuto un tasto prima di accettarlo. Utile per persone che accidentalmente premono più di un tasto
Bounce → introduce un ritardo prima di accettare una successiva pressione di un tasto. Utile per persone con tremori
Esempio d'uso pratico delle funzioni indicate alla precedente slide.
Gli utenti che non possono usare la tastiera non è detto siano in grado di usare pienamente il mouse.
MT offre:
Simulazione del clic destro (tenendo primuto il sinistro)
Clic indugiato (con preselezione o con gesto per selezionare)
È in corso di sviluppo MouseTrap: tracciamento movimenti della testa via webcam.
Esempio d'uso pratico di Mousetweaks
Secondo tipo di intervento per disabilità motorie. Permettere l'accesso completo anche a chi non può usare la tastiera o il mouse
La funzione “Mouse keys” permette di pilotare il puntatore del mouse attraverso il tastierino numerico presente sulla tastiera
Grafico che riporta il funzionamento dei mouse keys
Per informazioni dettagliate su come funzionano i singoli tasti consultare http://live.gnome.org/MouseKeys (in inglese)
Onboard è la tastiera a schermo predefinita di Ubuntu. Offre modalità a clic, a indugio e a scansione.
Semplice e leggera, non richiede particolari risorse.
Si sposta il puntatore e si clicca o si indugia
Esempio d'uso di onboard, modalità semplice e a scansione
Una tastiera a schermo più completa di onBoard.
Offre non solo la possibilità di usarla come tastiera, ma anche quella di gestire l'intera interfaccia grafica tramite AT-SPI.
GOK in pratica crea tastiere virtuali, che siano esse la rappresentazione di una tastiera reale, una tastiera a scansione, i menù di una applicazione, le finestre aperte...
Terribilmente estensibile, può essere configurata opportunamente per essere usata al meglio anche con ausili particolari come switch
Esempio d'uso di GOK, in particolare di come viene gestita l'intera interfaccia grafica.
Inserimento di testo predittivo. Utilizzabile non solo da chi non è in grado di usare un mouse, ma anche laddove non sia disponibile un mouse (touchscreen, palmari)
La velocità di digitazione può essere di 35+ parole al minuto
Esempio d'uso di dasher. Anche perché dasher lo si capisce solo se lo si usa.
Stiamo entrando nell'ultima parte della presentazione, quella relativa ai problemi visivi
Temi ad alto contrasto (sia controlli che icone)
Con possibilità di usare con semplicità lettere grandi
Con tema inverso (pacchetto gnome-accessibility-themes-extras)
Anteprima del tema disponibile in modo predefinito.
Perché orca? Il primo screen reader per DOS si chiamava Flipper. Lo screen reader più famoso è JAWS. La compagnia inglese che produceva un proprio screen reader si chiamava Dolphin.
Per cui, anche se non c'è alcuna attinenza, di certo c'è una grande tradizione nell'uso di nomi di creature marine
E orca era più altisonante di Nemo, Ariel, Willy, or Mr. Limpet :)
GNOME-mag è un componente che fornisce i vari servizi necessari
NOTA: su unbuntu in realtà non è compilato il supporto per il color blind. Per usarlo è necessario installare i pacchetti -dev e compilare a mano gnome-mag da sorgente
Cfr http://live.gnome.org/GnomeMag
Offerti diverse combinazioni. In particolare GNOME Speech e Speech dispatcher sono dei layer che si interfacciano tra il programma Orca (o altri)) e il reale motore di TTS (text-to-speech), in pratica offrono dei servizi
Tutti e due possono usare Via Voice, Festival, eSpeak, FreeTTS, DecTalk and Cepstral
La scelta di usare dispatcher e espeak in ubuntu è legata al fatto che sono due prodotti più leggeri e performanti, con una archiettura più moderna e ingrado di fornire con poche risorse supporto a molte lingue
Refreshable braille monitor
BRLTTY è un processo di sistema che permette l'accesso alla console (terminale) ai non vedenti usando un display braille. È in grado di pilotare il display braille, quanto meno quelli compresi in un nutrito elenco
BRLTTY è la soluzione storica in ambienti UNIX e Linux per accedere a display braille.
Non ne abbiamo una esperienza diretta, per cui non lo tratteremo
Firefox, OpenOffice.org, Pidgin, Evolution possono essere utilizzati con una serie di facilitazioni.
Per esempio Pidgin legge automaticamente i nuovi messaggi di chat.
OpenOffice invece ha delle semplificazioni per la revisione del testo (correttore automatico) e la gestione di strutture complesse per tabelle
Esempio d'uso di Orca...
Verranno mostrate la configurazione iniziale, funzionalità di ingrandimento dello schermo, l'uso come screen reader, la configurazione di Festival e altro.
In conclusione
A11y in Ubuntu/GNOME copre un ampio spettro di disabilità; l'accessibilità di base è praticamente identica a quella degli altri sistemi operativi/ambienti grafici; Orca rivaleggia con soluzione proprietarie; GOK e Dasher superiori a soluzioni di Win & Mac