SlideShare une entreprise Scribd logo
1  sur  36
Télécharger pour lire hors ligne
GNOME 3.0 Accessibility:
State of the Union
Alejandro Piñeiro (apinheiro@igalia.com)
Let's introduce it ...
Accessibility?
●

Means helping people with disabilities to

participate in any life activity

●

Like computer stuff. That involves
●

… programmatic access

●

… keyboard navigation

●

… themes
AT ?
●

AT == Assistive Technologie
●

Screen readers

●

On screen keyboards

●

Magnifiers

●

Ok
what needs an AT ?
●

Know which apps are running

●

Know the active app

●

Know the focus object

●

Be able to interact with the app
AT-SPI ?
●

“Assistive Technologie Service Provider Interface”
●

Daemon providing the functionality that
requires those ATs

●

“out of the process”

●

Using CORBA/bonobo on the old times
And the apps?
●

How they expose the data?

●

Direct CORBA calls to AT-SPI?

●

It would be doing stuff really similar …

●

But apps are heterogeneous ...
ATK
●

ATK = Accessibility ToolKit
●

Common interface

●

The atk-bridge uses ATK calls to know
that to expose to AT-SPI

●

Toolkits and apps implement ATK

●

“in process”
How this stuff was
implemented?
●

Not in time for GNOME 2.X
●

Isolated on runtime loadable modules
●

At-spi provided at-bridge

●

Gail provided an ATK implementation

●

Isolated since the beginning

●

Extension and access to private data
nightmares
That old GNOME 2.0
Stories from the past
Bill Haneman, March Mulhany,
GUADEC 2004: “Where we are today”

●
●

●
●

8 critical bugs, ~50 serious bugs
Assessment:
● 2.6 : Can be made to work, with some effort
● Need some HEAD components for better results
● 2.8 : Reasonable level of functionality “out of the box” :
(still at risk)
● GOAL: disabled users can do all key tasks
● Depends on regression control and attention by
packagers, community
GNOME 3.0 is coming!
(First introduced at Istanbul 2008)
Changes, changes!
●

CORBA is dead, long live DBUS
●

AT-SPI (major piece) CORBA based

●

Nokia fund initial move on 2008

●

Gsettings VS GConf

●

Desktops: GNOME Shell, Unity

●

Clutter, Gtk3

●

CSUN 2010 Accessibility Summit
Hey, why so serious?
●

We worked to get the a11y pieces on

GNOME 2.0
Why just keep sync with GNOME 3.0 is so

●

a big problem … ?

●

Lets talk about that later ...
GNOME 3.0 is here!
(April 2011)
GNOME 3.0.1 improved
●

A11y community started to use a testing

distro based on Frederic Crozat one

●

Major functionality issues were solved

●

GNOME “classic” is still the solution for

a11y users
So, what we have here?
●

Infrastructure: ATK, AT-SPI

Toolkit implementations: GAIL, Cally, Java

●

Apps: LibreOffice

●

Ats: Orca, Caribou, GNOME Voice Control,

●

VEDICS, Dasher, OpenGazer, MouseTrap

●

A lot of things, right?
Really?
●

At-spi just ported, no new features

●

ATK still 1.0 after 10 years.

●

Less than 5 commits in last two years for

GVC, Dasher, MouseTrap, etc
What we really have?
●

Infrastructure requires to be updated

●

Some first citizens: Orca, Caribou,

GNOME Shell built-in magnification

●

Several Ats on their own

●

Whats the difference?
difference
●

Orca has a real community behind
Some history – good times
●

16 Oct 2000,

“GNOME Accessibility Summit”

●

●

●

Sun, IBM and others joined the party
A11y had a really big push

A lot of new stuff between 2000-2005:
●

ATK, AT-SPI, GAIL, Gnopernicus, LSR,
Some history – bad times
●

1 Jun 2007, IBM “change strategies”
●

●

LSR dies, Orca survives

27 Jan 2010, Sun is acquired by Oracle
●

Sun decreasing workforce is mostly
removed

●

Willie Walker stops to be a11y leader
and Orca co-maintainer
First conclusion?
●

If GNOME a11y wants to survive requires

to maintain a healthy community

●

But a11y applies to all GNOME.

●

Why “GNOME a11y”?, why not “GNOME”?

●

And talking about that ….
That mail …
●

2011-06-01
<snip>
>From my perspective, the a11y team is far too happy to be inits own
little corner, working on its 'testing distro' and its own little
tools that need to work on every OS and thus end up working properly
on none of them. Yet, when I try to run accerciser in a jhbuild tree
on my system, it locks up solid after a few minutes every single
Time...

<snip>
A11y had opposite feeling
●

Some IRC examples:

Jan 22 21:31:37 <anonymous> API: aha...yeah. We need support for users who don't use the
mouse at all.
Jan 22 21:32:14 <anonymous> Seems as though that would just be a fundamental thing to build
in
Jan 22 21:35:08 <anonymous> As we all know, designing for a11y helps *everyone*, not just
stupid disabled chumps that nobody cares about.
Jan 22 21:38:35 <anonymous> API - heh - just joshing. I wasn't poking at you. I was poking at
mainstream developers who haven't embraced accessible design yet.
Jan 22 21:39:33 <API>
yeah, I supposed that, but sometimes there are some strange
situations
Jan 22 21:40:06 <API>
for example, at Boston, there are some presentations, and then the
time of the "complainers from ally"
Communication breakdown
●

A11y “folks” thing that the others prefer them to be

isolated, and the others thinks that they are happy
with that …

●

Other extract from “that mail”:
“I think that we have to be honest about the fact that a11y is not a
first-class feature of GNOME until it is fully integrated” .
Current work and future
ATK/AT-SPI2 Hackfest
●

Analysis of current status and future

●

A lot of things to do now on ATK2

●

A lot of things would require an API

breakage
ATK/AT-SPI2 Hackfest (2)
●

A lot of ATK implementors to be updated
●

●

Clutter

●

LibreOffice

●

Unity

●

●

GTK

Etc.

AT-SPI2 would also require some changes
GailEctomy
●

Benjamin Otte and Matthias Clasen are

merging GAIL and GTK

●

First Benjamin conclusions about ATK

were really more radical ;)
Performance and stability
●

Target: being able to have a11y running

by default without affecting performance
and stability

●

Mike Gorse working on that, made some

changes

●

Require to measure the changes
GNOME Shell
●

Awesome built-in Magnifier
●

●

by Joseph Scheuhammer

On screen keyboard based on Caribou
●

by Nohemi Fernandez

GNOME 3.0 included some ATK patches

●

●

Still not really usable with Orca

●

Work in progress
A summary?
Current status
Current status
●

An accessibility framework

●

Bad: Not enough ATs or people
●

●

Bus factor of one in several cases

Good: GTK+ developers are taking care

of GAIL

●

What we need: improve the base, more

ATs, more people
Questions?

Contenu connexe

Similaire à GNOME 3.0 Accessibility: State of the Union (Desktop Summit 2011)

GNOME 3.4 accessible: Status, news, future (FOSDEM 2012)
GNOME 3.4 accessible: Status, news, future (FOSDEM 2012)GNOME 3.4 accessible: Status, news, future (FOSDEM 2012)
GNOME 3.4 accessible: Status, news, future (FOSDEM 2012)Igalia
 
Unity: la shell di ubuntu
Unity: la shell di ubuntuUnity: la shell di ubuntu
Unity: la shell di ubuntuMarco Trevisan
 
New generation Linux distributions that companion with Geeko : opencocon and...
New generation Linux distributions that companion with Geeko :  opencocon and...New generation Linux distributions that companion with Geeko :  opencocon and...
New generation Linux distributions that companion with Geeko : opencocon and...shimadah
 
Campkde 2010: KDE Plasma netbook
Campkde 2010: KDE Plasma netbookCampkde 2010: KDE Plasma netbook
Campkde 2010: KDE Plasma netbookMarco Martin
 
Large-scale OpenOffice.org Migrations in Thailand
Large-scale OpenOffice.org Migrations in Thailand Large-scale OpenOffice.org Migrations in Thailand
Large-scale OpenOffice.org Migrations in Thailand Osdev
 
Linaro and Android Kernel
Linaro and Android KernelLinaro and Android Kernel
Linaro and Android KernelJohn Lee
 
Troubleshooting Memory-Related Issues with the Memory Profiler
Troubleshooting Memory-Related Issues with the Memory Profiler Troubleshooting Memory-Related Issues with the Memory Profiler
Troubleshooting Memory-Related Issues with the Memory Profiler Unity Technologies
 
Introduction to Gnu/Linux
Introduction to Gnu/LinuxIntroduction to Gnu/Linux
Introduction to Gnu/LinuxRanjith Siji
 
How GNOME Obsoleted its "Enable Accessibility" Setting (FOSDEM 2013)
How GNOME Obsoleted its "Enable Accessibility" Setting (FOSDEM 2013)How GNOME Obsoleted its "Enable Accessibility" Setting (FOSDEM 2013)
How GNOME Obsoleted its "Enable Accessibility" Setting (FOSDEM 2013)Igalia
 
Linux Accessibility Workshop, Sun Accessibility
Linux Accessibility Workshop, Sun AccessibilityLinux Accessibility Workshop, Sun Accessibility
Linux Accessibility Workshop, Sun AccessibilityMalte Timmermann
 
Ubuntu presentation
Ubuntu presentationUbuntu presentation
Ubuntu presentationFadwa Gmiden
 
Advanced Video Production with FOSS
Advanced Video Production with FOSSAdvanced Video Production with FOSS
Advanced Video Production with FOSSKirk Kimmel
 
Guide to the Open Source Desktop
Guide to the Open Source DesktopGuide to the Open Source Desktop
Guide to the Open Source DesktopPOSSCON
 
Intoduction to Linux
Intoduction to LinuxIntoduction to Linux
Intoduction to LinuxAnshul Sharma
 

Similaire à GNOME 3.0 Accessibility: State of the Union (Desktop Summit 2011) (20)

GNOME 3.4 accessible: Status, news, future (FOSDEM 2012)
GNOME 3.4 accessible: Status, news, future (FOSDEM 2012)GNOME 3.4 accessible: Status, news, future (FOSDEM 2012)
GNOME 3.4 accessible: Status, news, future (FOSDEM 2012)
 
Linux Sucks
Linux SucksLinux Sucks
Linux Sucks
 
Linux Sucks
Linux SucksLinux Sucks
Linux Sucks
 
Ubuntu 17.10
Ubuntu 17.10Ubuntu 17.10
Ubuntu 17.10
 
Unity: la shell di ubuntu
Unity: la shell di ubuntuUnity: la shell di ubuntu
Unity: la shell di ubuntu
 
New generation Linux distributions that companion with Geeko : opencocon and...
New generation Linux distributions that companion with Geeko :  opencocon and...New generation Linux distributions that companion with Geeko :  opencocon and...
New generation Linux distributions that companion with Geeko : opencocon and...
 
Campkde 2010: KDE Plasma netbook
Campkde 2010: KDE Plasma netbookCampkde 2010: KDE Plasma netbook
Campkde 2010: KDE Plasma netbook
 
Opensource Software usability
Opensource Software usabilityOpensource Software usability
Opensource Software usability
 
Large-scale OpenOffice.org Migrations in Thailand
Large-scale OpenOffice.org Migrations in Thailand Large-scale OpenOffice.org Migrations in Thailand
Large-scale OpenOffice.org Migrations in Thailand
 
Linaro and Android Kernel
Linaro and Android KernelLinaro and Android Kernel
Linaro and Android Kernel
 
Troubleshooting Memory-Related Issues with the Memory Profiler
Troubleshooting Memory-Related Issues with the Memory Profiler Troubleshooting Memory-Related Issues with the Memory Profiler
Troubleshooting Memory-Related Issues with the Memory Profiler
 
Introduction to Gnu/Linux
Introduction to Gnu/LinuxIntroduction to Gnu/Linux
Introduction to Gnu/Linux
 
How GNOME Obsoleted its "Enable Accessibility" Setting (FOSDEM 2013)
How GNOME Obsoleted its "Enable Accessibility" Setting (FOSDEM 2013)How GNOME Obsoleted its "Enable Accessibility" Setting (FOSDEM 2013)
How GNOME Obsoleted its "Enable Accessibility" Setting (FOSDEM 2013)
 
Linux Accessibility Workshop, Sun Accessibility
Linux Accessibility Workshop, Sun AccessibilityLinux Accessibility Workshop, Sun Accessibility
Linux Accessibility Workshop, Sun Accessibility
 
Ubuntu presentation
Ubuntu presentationUbuntu presentation
Ubuntu presentation
 
Advanced Video Production with FOSS
Advanced Video Production with FOSSAdvanced Video Production with FOSS
Advanced Video Production with FOSS
 
Guide to the Open Source Desktop
Guide to the Open Source DesktopGuide to the Open Source Desktop
Guide to the Open Source Desktop
 
Intoduction to Linux
Intoduction to LinuxIntoduction to Linux
Intoduction to Linux
 
Ubuntu Quick Guide
Ubuntu Quick GuideUbuntu Quick Guide
Ubuntu Quick Guide
 
Windows -> Linux
Windows -> LinuxWindows -> Linux
Windows -> Linux
 

Plus de Igalia

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Building End-user Applications on Embedded Devices with WPE
Building End-user Applications on Embedded Devices with WPEBuilding End-user Applications on Embedded Devices with WPE
Building End-user Applications on Embedded Devices with WPEIgalia
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Automated Testing for Web-based Systems on Embedded Devices
Automated Testing for Web-based Systems on Embedded DevicesAutomated Testing for Web-based Systems on Embedded Devices
Automated Testing for Web-based Systems on Embedded DevicesIgalia
 
Embedding WPE WebKit - from Bring-up to Maintenance
Embedding WPE WebKit - from Bring-up to MaintenanceEmbedding WPE WebKit - from Bring-up to Maintenance
Embedding WPE WebKit - from Bring-up to MaintenanceIgalia
 
Optimizing Scheduler for Linux Gaming.pdf
Optimizing Scheduler for Linux Gaming.pdfOptimizing Scheduler for Linux Gaming.pdf
Optimizing Scheduler for Linux Gaming.pdfIgalia
 
Running JS via WASM faster with JIT
Running JS via WASM      faster with JITRunning JS via WASM      faster with JIT
Running JS via WASM faster with JITIgalia
 
To crash or not to crash: if you do, at least recover fast!
To crash or not to crash: if you do, at least recover fast!To crash or not to crash: if you do, at least recover fast!
To crash or not to crash: if you do, at least recover fast!Igalia
 
Implementing a Vulkan Video Encoder From Mesa to GStreamer
Implementing a Vulkan Video Encoder From Mesa to GStreamerImplementing a Vulkan Video Encoder From Mesa to GStreamer
Implementing a Vulkan Video Encoder From Mesa to GStreamerIgalia
 
8 Years of Open Drivers, including the State of Vulkan in Mesa
8 Years of Open Drivers, including the State of Vulkan in Mesa8 Years of Open Drivers, including the State of Vulkan in Mesa
8 Years of Open Drivers, including the State of Vulkan in MesaIgalia
 
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por Igalia
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por IgaliaIntroducción a Mesa. Caso específico dos dispositivos Raspberry Pi por Igalia
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por IgaliaIgalia
 
2023 in Chimera Linux
2023 in Chimera                    Linux2023 in Chimera                    Linux
2023 in Chimera LinuxIgalia
 
Building a Linux distro with LLVM
Building a Linux distro        with LLVMBuilding a Linux distro        with LLVM
Building a Linux distro with LLVMIgalia
 
turnip: Update on Open Source Vulkan Driver for Adreno GPUs
turnip: Update on Open Source Vulkan Driver for Adreno GPUsturnip: Update on Open Source Vulkan Driver for Adreno GPUs
turnip: Update on Open Source Vulkan Driver for Adreno GPUsIgalia
 
Graphics stack updates for Raspberry Pi devices
Graphics stack updates for Raspberry Pi devicesGraphics stack updates for Raspberry Pi devices
Graphics stack updates for Raspberry Pi devicesIgalia
 
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOS
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOSDelegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOS
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOSIgalia
 
MessageFormat: The future of i18n on the web
MessageFormat: The future of i18n on the webMessageFormat: The future of i18n on the web
MessageFormat: The future of i18n on the webIgalia
 
Replacing the geometry pipeline with mesh shaders
Replacing the geometry pipeline with mesh shadersReplacing the geometry pipeline with mesh shaders
Replacing the geometry pipeline with mesh shadersIgalia
 
I'm not an AMD expert, but...
I'm not an AMD expert, but...I'm not an AMD expert, but...
I'm not an AMD expert, but...Igalia
 
Status of Vulkan on Raspberry
Status of Vulkan on RaspberryStatus of Vulkan on Raspberry
Status of Vulkan on RaspberryIgalia
 

Plus de Igalia (20)

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Building End-user Applications on Embedded Devices with WPE
Building End-user Applications on Embedded Devices with WPEBuilding End-user Applications on Embedded Devices with WPE
Building End-user Applications on Embedded Devices with WPE
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Automated Testing for Web-based Systems on Embedded Devices
Automated Testing for Web-based Systems on Embedded DevicesAutomated Testing for Web-based Systems on Embedded Devices
Automated Testing for Web-based Systems on Embedded Devices
 
Embedding WPE WebKit - from Bring-up to Maintenance
Embedding WPE WebKit - from Bring-up to MaintenanceEmbedding WPE WebKit - from Bring-up to Maintenance
Embedding WPE WebKit - from Bring-up to Maintenance
 
Optimizing Scheduler for Linux Gaming.pdf
Optimizing Scheduler for Linux Gaming.pdfOptimizing Scheduler for Linux Gaming.pdf
Optimizing Scheduler for Linux Gaming.pdf
 
Running JS via WASM faster with JIT
Running JS via WASM      faster with JITRunning JS via WASM      faster with JIT
Running JS via WASM faster with JIT
 
To crash or not to crash: if you do, at least recover fast!
To crash or not to crash: if you do, at least recover fast!To crash or not to crash: if you do, at least recover fast!
To crash or not to crash: if you do, at least recover fast!
 
Implementing a Vulkan Video Encoder From Mesa to GStreamer
Implementing a Vulkan Video Encoder From Mesa to GStreamerImplementing a Vulkan Video Encoder From Mesa to GStreamer
Implementing a Vulkan Video Encoder From Mesa to GStreamer
 
8 Years of Open Drivers, including the State of Vulkan in Mesa
8 Years of Open Drivers, including the State of Vulkan in Mesa8 Years of Open Drivers, including the State of Vulkan in Mesa
8 Years of Open Drivers, including the State of Vulkan in Mesa
 
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por Igalia
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por IgaliaIntroducción a Mesa. Caso específico dos dispositivos Raspberry Pi por Igalia
Introducción a Mesa. Caso específico dos dispositivos Raspberry Pi por Igalia
 
2023 in Chimera Linux
2023 in Chimera                    Linux2023 in Chimera                    Linux
2023 in Chimera Linux
 
Building a Linux distro with LLVM
Building a Linux distro        with LLVMBuilding a Linux distro        with LLVM
Building a Linux distro with LLVM
 
turnip: Update on Open Source Vulkan Driver for Adreno GPUs
turnip: Update on Open Source Vulkan Driver for Adreno GPUsturnip: Update on Open Source Vulkan Driver for Adreno GPUs
turnip: Update on Open Source Vulkan Driver for Adreno GPUs
 
Graphics stack updates for Raspberry Pi devices
Graphics stack updates for Raspberry Pi devicesGraphics stack updates for Raspberry Pi devices
Graphics stack updates for Raspberry Pi devices
 
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOS
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOSDelegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOS
Delegated Compositing - Utilizing Wayland Protocols for Chromium on ChromeOS
 
MessageFormat: The future of i18n on the web
MessageFormat: The future of i18n on the webMessageFormat: The future of i18n on the web
MessageFormat: The future of i18n on the web
 
Replacing the geometry pipeline with mesh shaders
Replacing the geometry pipeline with mesh shadersReplacing the geometry pipeline with mesh shaders
Replacing the geometry pipeline with mesh shaders
 
I'm not an AMD expert, but...
I'm not an AMD expert, but...I'm not an AMD expert, but...
I'm not an AMD expert, but...
 
Status of Vulkan on Raspberry
Status of Vulkan on RaspberryStatus of Vulkan on Raspberry
Status of Vulkan on Raspberry
 

Dernier

Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 

Dernier (20)

Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 

GNOME 3.0 Accessibility: State of the Union (Desktop Summit 2011)

  • 1. GNOME 3.0 Accessibility: State of the Union Alejandro Piñeiro (apinheiro@igalia.com)
  • 3. Accessibility? ● Means helping people with disabilities to participate in any life activity ● Like computer stuff. That involves ● … programmatic access ● … keyboard navigation ● … themes
  • 4. AT ? ● AT == Assistive Technologie ● Screen readers ● On screen keyboards ● Magnifiers ● Ok
  • 5. what needs an AT ? ● Know which apps are running ● Know the active app ● Know the focus object ● Be able to interact with the app
  • 6. AT-SPI ? ● “Assistive Technologie Service Provider Interface” ● Daemon providing the functionality that requires those ATs ● “out of the process” ● Using CORBA/bonobo on the old times
  • 7. And the apps? ● How they expose the data? ● Direct CORBA calls to AT-SPI? ● It would be doing stuff really similar … ● But apps are heterogeneous ...
  • 8. ATK ● ATK = Accessibility ToolKit ● Common interface ● The atk-bridge uses ATK calls to know that to expose to AT-SPI ● Toolkits and apps implement ATK ● “in process”
  • 9. How this stuff was implemented? ● Not in time for GNOME 2.X ● Isolated on runtime loadable modules ● At-spi provided at-bridge ● Gail provided an ATK implementation ● Isolated since the beginning ● Extension and access to private data nightmares
  • 11. Stories from the past Bill Haneman, March Mulhany, GUADEC 2004: “Where we are today” ● ● ● ● 8 critical bugs, ~50 serious bugs Assessment: ● 2.6 : Can be made to work, with some effort ● Need some HEAD components for better results ● 2.8 : Reasonable level of functionality “out of the box” : (still at risk) ● GOAL: disabled users can do all key tasks ● Depends on regression control and attention by packagers, community
  • 12. GNOME 3.0 is coming! (First introduced at Istanbul 2008)
  • 13. Changes, changes! ● CORBA is dead, long live DBUS ● AT-SPI (major piece) CORBA based ● Nokia fund initial move on 2008 ● Gsettings VS GConf ● Desktops: GNOME Shell, Unity ● Clutter, Gtk3 ● CSUN 2010 Accessibility Summit
  • 14. Hey, why so serious? ● We worked to get the a11y pieces on GNOME 2.0 Why just keep sync with GNOME 3.0 is so ● a big problem … ? ● Lets talk about that later ...
  • 15. GNOME 3.0 is here! (April 2011)
  • 16.
  • 17. GNOME 3.0.1 improved ● A11y community started to use a testing distro based on Frederic Crozat one ● Major functionality issues were solved ● GNOME “classic” is still the solution for a11y users
  • 18. So, what we have here? ● Infrastructure: ATK, AT-SPI Toolkit implementations: GAIL, Cally, Java ● Apps: LibreOffice ● Ats: Orca, Caribou, GNOME Voice Control, ● VEDICS, Dasher, OpenGazer, MouseTrap ● A lot of things, right?
  • 19. Really? ● At-spi just ported, no new features ● ATK still 1.0 after 10 years. ● Less than 5 commits in last two years for GVC, Dasher, MouseTrap, etc
  • 20. What we really have? ● Infrastructure requires to be updated ● Some first citizens: Orca, Caribou, GNOME Shell built-in magnification ● Several Ats on their own ● Whats the difference? difference ● Orca has a real community behind
  • 21. Some history – good times ● 16 Oct 2000, “GNOME Accessibility Summit” ● ● ● Sun, IBM and others joined the party A11y had a really big push A lot of new stuff between 2000-2005: ● ATK, AT-SPI, GAIL, Gnopernicus, LSR,
  • 22. Some history – bad times ● 1 Jun 2007, IBM “change strategies” ● ● LSR dies, Orca survives 27 Jan 2010, Sun is acquired by Oracle ● Sun decreasing workforce is mostly removed ● Willie Walker stops to be a11y leader and Orca co-maintainer
  • 23. First conclusion? ● If GNOME a11y wants to survive requires to maintain a healthy community ● But a11y applies to all GNOME. ● Why “GNOME a11y”?, why not “GNOME”? ● And talking about that ….
  • 24. That mail … ● 2011-06-01 <snip> >From my perspective, the a11y team is far too happy to be inits own little corner, working on its 'testing distro' and its own little tools that need to work on every OS and thus end up working properly on none of them. Yet, when I try to run accerciser in a jhbuild tree on my system, it locks up solid after a few minutes every single Time... <snip>
  • 25. A11y had opposite feeling ● Some IRC examples: Jan 22 21:31:37 <anonymous> API: aha...yeah. We need support for users who don't use the mouse at all. Jan 22 21:32:14 <anonymous> Seems as though that would just be a fundamental thing to build in Jan 22 21:35:08 <anonymous> As we all know, designing for a11y helps *everyone*, not just stupid disabled chumps that nobody cares about. Jan 22 21:38:35 <anonymous> API - heh - just joshing. I wasn't poking at you. I was poking at mainstream developers who haven't embraced accessible design yet. Jan 22 21:39:33 <API> yeah, I supposed that, but sometimes there are some strange situations Jan 22 21:40:06 <API> for example, at Boston, there are some presentations, and then the time of the "complainers from ally"
  • 26. Communication breakdown ● A11y “folks” thing that the others prefer them to be isolated, and the others thinks that they are happy with that … ● Other extract from “that mail”: “I think that we have to be honest about the fact that a11y is not a first-class feature of GNOME until it is fully integrated” .
  • 28. ATK/AT-SPI2 Hackfest ● Analysis of current status and future ● A lot of things to do now on ATK2 ● A lot of things would require an API breakage
  • 29. ATK/AT-SPI2 Hackfest (2) ● A lot of ATK implementors to be updated ● ● Clutter ● LibreOffice ● Unity ● ● GTK Etc. AT-SPI2 would also require some changes
  • 30. GailEctomy ● Benjamin Otte and Matthias Clasen are merging GAIL and GTK ● First Benjamin conclusions about ATK were really more radical ;)
  • 31. Performance and stability ● Target: being able to have a11y running by default without affecting performance and stability ● Mike Gorse working on that, made some changes ● Require to measure the changes
  • 32. GNOME Shell ● Awesome built-in Magnifier ● ● by Joseph Scheuhammer On screen keyboard based on Caribou ● by Nohemi Fernandez GNOME 3.0 included some ATK patches ● ● Still not really usable with Orca ● Work in progress
  • 35. Current status ● An accessibility framework ● Bad: Not enough ATs or people ● ● Bus factor of one in several cases Good: GTK+ developers are taking care of GAIL ● What we need: improve the base, more ATs, more people