WEBVTT
00:00:01.501 --> 00:00:02.260
So... Good morning!
00:00:02.660 --> 00:00:05.121
So, I will talk about accessibility today.
00:00:05.621 --> 00:00:10.321
We have a lot of desktops in Debian
and we would like to talk
00:00:10.481 --> 00:00:12.400
about the accessibility of these desktops.
00:00:13.363 --> 00:00:18.620
There are all the slides and various stuff
on the wiki of debian.org
00:00:18.921 --> 00:00:26.000
in the accessibility-maint wiki page,
so you can get stuff from there.
00:00:27.621 --> 00:00:31.741
So, just to give an outline,
I will introduce to accessibility,
00:00:32.101 --> 00:00:34.501
then explain how the accessibility stack
works,
00:00:34.821 --> 00:00:39.021
how you will interact with this,
with your desktop,
00:00:39.962 --> 00:00:44.801
and provide you with a list of things
that you could check by yourself,
00:00:45.560 --> 00:00:49.922
to make our life easier,
I mean the accessibility team life.
00:00:51.001 --> 00:00:54.281
To start with,
this is the output of gnuplot.
00:00:55.521 --> 00:01:00.642
Can somebody tell me what the
accessibility issue is there?
00:01:04.961 --> 00:01:08.441
Yeah, you have green and red bars.
00:01:08.701 --> 00:01:10.942
Why is it a problem?
00:01:11.141 --> 00:01:14.130
Well, basically color blind people can not
distinguish between both.
00:01:15.242 --> 00:01:18.921
Just to give you an idea. How many
people here are colorblind,
00:01:19.422 --> 00:01:21.620
can not distinguish at least some colors?
00:01:22.000 --> 00:01:25.921
So we have one, two people,
out of a couple of dozen.
00:01:26.661 --> 00:01:30.582
Indeed, it's 8% of the male people
who can not distinguish colors.
00:01:30.841 --> 00:01:35.520
More or less, it depends: some people can
distinguish a bit, others really not.
00:01:36.702 --> 00:01:39.861
I had a student who really could not
distinguish them at all,
00:01:40.101 --> 00:01:43.282
so in the practice room, he would have
to ask his neighbour
00:01:43.621 --> 00:01:45.801
"but which one is the red curve?"
00:01:47.261 --> 00:01:50.881
Gnuplot 5, yeah!
They changed the color set.
00:01:51.721 --> 00:01:56.520
This was actually a research paper
which said
00:01:56.721 --> 00:02:00.361
"OK, this is the proper color set that
you can use and really
00:02:00.361 --> 00:02:02.821
almost everybody on earth
can distinguish them,
00:02:02.821 --> 00:02:06.141
except those who can not really
distinguish colors at all,
00:02:06.141 --> 00:02:12.861
and still with the intensity of the color,
you can still distinguish."
00:02:13.281 --> 00:02:15.722
So, yes, things get improved.
00:02:16.600 --> 00:02:19.961
It's not so difficult, it's just a matter
of changing the colors,
00:02:19.961 --> 00:02:23.100
but the most difficult part was knowing
about the problem.
00:02:25.361 --> 00:02:27.001
What is accessibility?
00:02:27.221 --> 00:02:32.241
It is contracted into a11y.
It means being usable by
00:02:32.241 --> 00:02:38.181
people with specific needs or specific
conditions or anybody actually.
00:02:39.721 --> 00:02:46.401
So of course the obvious is blind people,
but also people with a low vision,
00:02:46.401 --> 00:02:48.981
so they can actually see the screen,
but not that good.
00:02:49.661 --> 00:02:54.000
Deaf people is not much a concern with
a lot of things, but still
00:02:54.000 --> 00:02:58.821
if you only signal something through
noise, then they can not get it.
00:02:59.641 --> 00:03:01.161
Color blind, as I said.
00:03:01.522 --> 00:03:04.961
People may have just one hand, and
to type control-alt-backspace,
00:03:04.961 --> 00:03:07.181
with just one hand, it's really horrible.
00:03:08.520 --> 00:03:13.701
Cognition issues, so people may have
problems with understanding your software,
00:03:13.701 --> 00:03:15.142
just because they can not,
00:03:15.142 --> 00:03:20.442
it's not a problem of making efforts,
it's really a health issue.
00:03:21.541 --> 00:03:25.641
Motor disability, so it becomes difficult
to use a keyboard
00:03:25.641 --> 00:03:27.781
when you have Parkinson, for instance.
00:03:28.621 --> 00:03:32.442
And elderly people, who basically have
everything at the same time.
00:03:34.620 --> 00:03:39.661
You can have a look at the accessibility
HOWTOs, which talk a bit about all of this.
00:03:41.241 --> 00:03:45.601
Maybe that can be you,
maybe within a couple of decades,
00:03:45.601 --> 00:03:49.621
because of getting older, but also if you
break your arm, or whatever.
00:03:50.500 --> 00:03:52.862
So this is really something which is
for everybody,
00:03:52.862 --> 00:03:55.861
not only a small part of the population.
00:03:56.941 --> 00:04:01.642
And still, there was a survey
which shows that
00:04:01.642 --> 00:04:05.841
10% of the people consider that they are
handicapped in their life,
00:04:05.841 --> 00:04:08.841
and then 20% consider that they
are limited.
00:04:08.981 --> 00:04:13.541
They can do everything they want,
but it's a pain, quite often.
00:04:15.522 --> 00:04:18.400
Handicap depends on the situation,
maybe it's just,
00:04:18.681 --> 00:04:21.940
you may break your arm, or you are
too small to get something,
00:04:21.940 --> 00:04:26.020
or you are too tall to get into a room or
something,
00:04:26.020 --> 00:04:31.461
so it's not a problem of the person,
but of the situations.
00:04:33.401 --> 00:04:36.121
And it's not necessarily permanent,
sometimes it's just
00:04:36.121 --> 00:04:39.241
you broke your arm for some time,
and then you're back to order.
00:04:41.801 --> 00:04:44.541
And for me, this is all about freedom 0.
00:04:44.621 --> 00:04:47.720
We have been discussing with
Richard Stallman about this.
00:04:47.720 --> 00:04:51.341
The freedom 0, as he said, was the
00:04:51.341 --> 00:04:53.381
"freedom to run the program,
for any purpose".
00:04:54.021 --> 00:04:57.601
But OK, running the program is not really
useful if you can not use it.
00:04:58.700 --> 00:05:03.421
And RMS said yes, "it's just a desirable
feature that you can use it",
00:05:03.421 --> 00:05:07.921
I mean because you're disabled.
Is that only "desirable"?
00:05:09.301 --> 00:05:13.600
Richard said, "well if you need it, then
you can modify the software, it's free".
00:05:14.141 --> 00:05:17.481
Okay, but that can not happen,
I will explain that later.
00:05:19.941 --> 00:05:22.342
Just to give the UNO rights.
00:05:22.342 --> 00:05:26.121
So I put in bold the interesting part
for us.
00:05:26.121 --> 00:05:29.821
So there are rights of persons
with disabilities, and it says that
00:05:29.821 --> 00:05:35.161
"Discrimination on the basis of disability"
means any distinction, exclusion or
00:05:35.161 --> 00:05:39.301
restriction on the basis of disability
which has the effect of
00:05:39.301 --> 00:05:44.081
impairing exercise of all human rights
and fundamental freedoms,
00:05:44.081 --> 00:05:49.941
in all kinds of fields, and that includes
denial of reasonable accommodation.
00:05:50.421 --> 00:05:53.001
And that's the point I want
to emphasize:
00:05:53.001 --> 00:05:57.421
if you are not doing the reasonable
accommodation, you are actually
00:05:57.421 --> 00:06:03.001
excluding people, and that's something
that the UNO considers.
00:06:03.781 --> 00:06:05.901
And what does it mean,
"reasonable accommodation"?
00:06:06.121 --> 00:06:10.001
It means not imposing a disproportionate
or undue burden.
00:06:10.440 --> 00:06:14.361
So we don't ask the Debian project to do
a lot things,
00:06:14.361 --> 00:06:16.701
we just ask for reasonable accommodations.
00:06:17.001 --> 00:06:21.720
And we are trying to see
what we can do like this:
00:06:21.720 --> 00:06:28.101
making things easy for Debian maintainers,
so that they have to do it actually, in a way.
00:06:30.520 --> 00:06:35.001
For us it's then a question of priority
in the project,
00:06:35.001 --> 00:06:37.822
for us it's a bit like
internationalization,
00:06:37.822 --> 00:06:43.502
it's basically the kind of the same issue,
and everybody has to do it
00:06:43.502 --> 00:06:47.301
for his own language,
every package should have it, etc.
00:06:48.601 --> 00:06:51.201
But then more importantly, it's a question
of who doing it.
00:06:52.801 --> 00:06:54.501
Accessibility is a problem in that
00:06:54.501 --> 00:06:58.402
it concerns a really small fraction
of the people using computers.
00:06:58.741 --> 00:07:01.941
They already have a hard time
using computers,
00:07:01.941 --> 00:07:05.181
and it's even worse with
accessibility issues.
00:07:06.042 --> 00:07:10.180
And the thing is: since there are
not so many disabled people,
00:07:10.180 --> 00:07:15.102
almost nobody has these disabilities and
the programming skills to fix them.
00:07:15.681 --> 00:07:21.220
And still, if you have the programming
skills, it's extremely difficult,
00:07:21.220 --> 00:07:24.861
like for instance if you want to make
the Debian Installer accessible:
00:07:24.861 --> 00:07:29.361
OK, you get the CD, you run it, and then
you don't have any output
00:07:29.361 --> 00:07:30.481
on your Braille device.
00:07:30.760 --> 00:07:31.801
What can you do?
00:07:32.141 --> 00:07:34.622
You have to first get a debugging
environment,
00:07:34.622 --> 00:07:40.801
but nobody thought about having
a debugging environment without a screen,
00:07:40.801 --> 00:07:43.281
so you have to invent that first.
00:07:43.601 --> 00:07:47.121
So it's really difficult for people
with disabilities
00:07:47.121 --> 00:07:49.620
to get their things done by themselves.
00:07:50.622 --> 00:07:54.461
Then you will have sighted people
for instance who could work on it,
00:07:54.461 --> 00:08:01.000
but people with sight and the awareness
of the issue and
00:08:01.000 --> 00:08:03.981
what could be done about it,
it's even smaller.
00:08:04.842 --> 00:08:09.181
And so this sentence
"this is free software, you can modify it"
00:08:09.181 --> 00:08:10.461
that can not work.
00:08:10.600 --> 00:08:13.261
Because there are not so many people,
they can not do everything.
00:08:14.221 --> 00:08:18.861
So the support has to be actually
integrated into the process and
00:08:18.861 --> 00:08:23.061
the load of working on it distributed
among the maintainers.
00:08:23.521 --> 00:08:28.600
Of course we would like to make that load
as light as possible to maintainers,
00:08:28.600 --> 00:08:34.221
but there is no way around fixing bugs
in applications,
00:08:34.221 --> 00:08:38.641
so that the tiny accessibility community
doesn't have to do all the work.
00:08:40.040 --> 00:08:44.561
Ok, so that was just an introduction
to accessibility in general.
00:08:44.561 --> 00:08:46.281
Let's talk about hardware.
00:08:46.861 --> 00:08:51.601
People may use for instance
braille input and output,
00:08:51.601 --> 00:08:55.041
or speech synthesis, but that's mostly
for blind people.
00:08:55.582 --> 00:09:02.142
People with motor issues can use just one
joystick which would replace a mouse,
00:09:02.142 --> 00:09:07.841
or would just be able to press a button,
and that's still enough to get things done,
00:09:07.841 --> 00:09:09.761
thanks to a virtual keyboard.
00:09:10.301 --> 00:09:14.720
Or they could use just eye-tracking, and
by blinking their eye actually acknowledge,
00:09:14.720 --> 00:09:15.961
and whatnot.
00:09:16.262 --> 00:09:19.941
We have a lot of ways for people
to interact with a computer.
00:09:21.541 --> 00:09:24.761
The thing is, one shouldn't focus
on just one technology.
00:09:25.081 --> 00:09:30.101
For instance, even for blind people,
Braille is not perfect,
00:09:30.101 --> 00:09:33.380
just because not so many people
know Braille actually.
00:09:33.601 --> 00:09:37.800
I don't remember but it may be like 10 or
even 5 percents of the blind people
00:09:37.800 --> 00:09:39.321
only know Braille.
00:09:40.561 --> 00:09:43.302
And the Braille devices are already
extremely expensive,
00:09:43.302 --> 00:09:45.502
like several thousands of euros.
00:09:47.100 --> 00:09:50.761
Speech synthesis either is not so good
in a lot of cases,
00:09:50.761 --> 00:09:53.641
like if you have a noisy environment,
you can not hear it,
00:09:53.641 --> 00:09:55.381
or you are disturbing your neighbours.
00:09:56.520 --> 00:10:00.921
And also, it's really tedious to
get words spelled,
00:10:00.921 --> 00:10:02.681
because you have it letter by letter,
00:10:02.681 --> 00:10:06.821
it's much less convenient than reading it
on a Braille device.
00:10:09.382 --> 00:10:12.441
Just to show what it looks like,
so a Braille cell.
00:10:12.900 --> 00:10:17.841
Usually you have 8 dots like this,
which make for one character.
00:10:18.401 --> 00:10:23.541
And the dots are moved upside and down
thanks to a Piezzo bar,
00:10:23.541 --> 00:10:26.881
which is why it's expensive because
that Piezzo bar
00:10:26.881 --> 00:10:32.201
has no other use in the Industry,
and so it is really a little market.
00:10:33.441 --> 00:10:38.721
A Braille device is simply
that kind of cell, replicated alongside,
00:10:38.721 --> 00:10:44.120
and connected through serial, USB or
bluetooth, and the price is usually
00:10:44.120 --> 00:10:48.361
the number of cells you have
times a hundred and fifty euros.
00:10:48.361 --> 00:10:57.101
So for forty character displays, you have
to pay like a few thousands euros.
00:10:57.701 --> 00:10:59.760
So it's really awfully expensive.
00:11:01.781 --> 00:11:05.380
About software.
So it's more interesting for us.
00:11:06.180 --> 00:11:08.362
The first question which is interesting is
00:11:08.622 --> 00:11:12.081
"why would you take the burden of
making the GUI accessible?"
00:11:12.381 --> 00:11:15.201
There are a lot of text applications,
you could do everything with these.
00:11:16.000 --> 00:11:18.401
Well, not everything, that's the problem.
00:11:18.681 --> 00:11:21.681
A lot of things are really not available
in textmode,
00:11:21.681 --> 00:11:27.321
like real JavaScript support in textmode
is actually really difficult because
00:11:27.321 --> 00:11:31.421
it doesn't sometimes even make sense
for JavaScript
00:11:31.421 --> 00:11:33.621
to have just characters and not pixels.
00:11:35.681 --> 00:11:38.841
And for business applications usually
you have just the graphical one,
00:11:38.841 --> 00:11:43.141
and you don't have the text equivalent, so
you have to have a way to use them as well.
00:11:44.340 --> 00:11:49.701
And what's even more important is that
you shouldn't make people use
00:11:49.701 --> 00:11:54.041
a dedicated software because then
they don't have help around them,
00:11:54.041 --> 00:11:58.581
because they are using their software and
nobody knows how to use it, except them.
00:11:59.080 --> 00:12:01.901
And that's really a problem, because then
they cannot be helped by people.
00:12:04.621 --> 00:12:05.901
Another idea is
00:12:05.901 --> 00:12:11.180
"let's make accessible software which is
dedicated to people with disabilities".
00:12:11.641 --> 00:12:17.061
So for instance we have edbrowse, which
is a blind-oriented editor and browser,
00:12:17.061 --> 00:12:19.261
and this is generally a bad idea.
00:12:20.361 --> 00:12:24.761
Well, for one because quite often, this is
dedicated to one kind of disability,
00:12:24.761 --> 00:12:27.422
one kind of situation, and it's not
universal,
00:12:27.422 --> 00:12:30.962
you would have to do it several times
for each kind of disability.
00:12:31.701 --> 00:12:34.901
But then also it's just a problem of
manpower,
00:12:34.901 --> 00:12:38.921
as I've said we don't have so many people
working on this kind of thing,
00:12:38.921 --> 00:12:42.521
and so for instance if you wanted
to maintain a web browser,
00:12:42.521 --> 00:12:46.061
you would have to implement JavaScript,
flash, tables, CSS, etc.
00:12:46.461 --> 00:12:48.461
So you don't really want to do that.
00:12:49.241 --> 00:12:53.800
Or for an office suite, have compatibility
with Microsoft and whatnot.
00:12:55.881 --> 00:13:00.441
And also it's also again an important
thing which doesn't come to mind first.
00:13:01.341 --> 00:13:05.281
The important thing is not only getting
help, but also working with people.
00:13:05.741 --> 00:13:09.461
If you have the same software, if you are
used to use the same software,
00:13:09.461 --> 00:13:11.581
then you can work together,
00:13:11.581 --> 00:13:16.121
you don't have to play
with format conversion or whatever.
00:13:16.280 --> 00:13:21.141
Or even just work at the same time on the
same software, pointing at something,
00:13:21.141 --> 00:13:23.300
then reading what is happening there,
00:13:23.300 --> 00:13:25.880
then interacting with the other one
within the software.
00:13:26.881 --> 00:13:30.561
So that's why we should really make
the existing software accessible,
00:13:30.561 --> 00:13:32.421
instead of writing new software.
00:13:34.661 --> 00:13:40.481
Another important thing is: we shouldn't
make "accessible" distribution.
00:13:40.741 --> 00:13:47.040
Well, it can be a good idea, but in the end
we want all distributions to be accessible.
00:13:47.241 --> 00:13:51.041
Because accessibility is completely
orthogonal to any other concern,
00:13:51.041 --> 00:13:56.561
like blends and tasks,
this is orthogonal with accessibility.
00:13:57.461 --> 00:14:02.162
Just like, be it a musician, for medicine,
for teaching, whatever,
00:14:02.162 --> 00:14:05.941
all these specialized distributions
should be all accessible.
00:14:06.161 --> 00:14:10.501
So it doesn't make sense to make an
"accessible" distribution,
00:14:10.501 --> 00:14:14.360
except as being a testbed for
experimental features,
00:14:14.360 --> 00:14:20.581
but maybe want to push to users to make
them happy and test these things,
00:14:20.581 --> 00:14:24.160
and then we can integrate them
into all the distributions.
00:14:27.521 --> 00:14:30.541
Ideally, you would have accessibility
everywhere.
00:14:30.541 --> 00:14:34.481
Like, I enter a library,
00:14:34.481 --> 00:14:39.320
there are computers to get the catalogue
of the books in the library,
00:14:39.320 --> 00:14:44.260
or you get to an airport and they have
internet access there, but on a computer,
00:14:44.260 --> 00:14:48.301
or you get to the university and
you have the practice room.
00:14:48.660 --> 00:14:53.181
All these situations, if you have
just a Braille device,
00:14:53.181 --> 00:14:57.881
then you will have to ask the administrator
to install the software and configure it
00:14:57.881 --> 00:14:58.901
and whatnot.
00:14:59.241 --> 00:15:02.461
We do not want that, you shouldn't have
to ask the administrator,
00:15:02.461 --> 00:15:07.541
because he's probably not there and you
would have to wait for a week or a month.
00:15:08.821 --> 00:15:12.821
So ideally it should be just installed
by default, and ready for use.
00:15:13.801 --> 00:15:16.861
So that means quite close integration
with the system,
00:15:16.861 --> 00:15:20.780
but for instance we managed to
get this in the Debian Installer.
00:15:21.081 --> 00:15:25.121
Nowadays, the standard CDs,
installation CDs of Debian,
00:15:25.121 --> 00:15:29.561
it's just, you insert the CD,
you boot the computer,
00:15:29.561 --> 00:15:32.941
you hear a beep saying "you're at the boot
menu, you can press enter",
00:15:32.941 --> 00:15:38.040
and then d-i boots and then it is actually
showing the output on the Braille device.
00:15:38.301 --> 00:15:41.320
So that's really the kind of things
we want to achieve.
00:15:42.461 --> 00:15:45.481
[claps]
00:15:45.640 --> 00:15:46.401
Thanks!
00:15:49.601 --> 00:15:51.961
Just a couple more of design principles
00:15:52.221 --> 00:15:55.881
As I mentioned, just use the same
software, make it accessible.
00:15:56.601 --> 00:16:01.021
Synchronize work, as I said it's just
an alternate input and output
00:16:01.021 --> 00:16:03.861
and we work together
in a synchronized way.
00:16:04.801 --> 00:16:08.880
And be pervasive, so you shouldn't have
to ask
00:16:08.880 --> 00:16:11.080
for software installation or
configuration.
00:16:12.381 --> 00:16:15.021
Ok, so that was discussion.
00:16:15.341 --> 00:16:16.361
Now the real stuff.
00:16:16.622 --> 00:16:20.421
How it looks like, how it works,
and what we could check.
00:16:21.481 --> 00:16:28.122
In a few words, text mode is really
accessible but at least for one
00:16:28.122 --> 00:16:30.601
it's not suited to beginners.
00:16:31.101 --> 00:16:32.701
Gnome is quite accessible.
00:16:33.361 --> 00:16:38.580
One issue we had with was gnome 3, which
was almost a restart from scratch.
00:16:39.081 --> 00:16:42.841
The status of gnome 3.0 was really awful.
00:16:43.500 --> 00:16:52.021
Nowadays, we got to the point almost
like gnome 2 before gnome 3,
00:16:52.021 --> 00:16:53.941
but it was really a pain.
00:16:55.461 --> 00:16:58.900
And in the end we are really late
compared to the Windows world,
00:16:58.900 --> 00:17:00.601
we have like a decade...
00:17:01.201 --> 00:17:05.601
we are a decade late compared to them.
00:17:06.480 --> 00:17:09.301
And compared with the Apple world
we are really at Stone Age.
00:17:10.381 --> 00:17:14.982
You have to understand that Apple has
integrated and good support
00:17:14.982 --> 00:17:16.261
for accessibility.
00:17:16.502 --> 00:17:20.121
It's always installed, it's ready for use
all the time, and it's really good.
00:17:20.862 --> 00:17:24.401
We really see people who were using
free software etc.
00:17:24.401 --> 00:17:27.620
and then eventually they saw that Apple
thing, and they said
00:17:27.620 --> 00:17:32.541
"OK, it's really working much better than
free software, so I will switch to Apple".
00:17:33.302 --> 00:17:35.401
This is really a shame for us,
00:17:35.401 --> 00:17:38.221
there is no reason why we shouldn't
be able to do that good.
00:17:40.980 --> 00:17:43.081
More technically, how does it work?
00:17:45.041 --> 00:17:48.821
The idea is that we have the application,
a standard application which uses
00:17:48.821 --> 00:17:55.241
its own abstract representation through
the toolkit, to render things visually.
00:17:55.801 --> 00:18:00.041
And the idea is that we have a bus,
an accessibility bus
00:18:00.041 --> 00:18:03.142
which can exchange
with that abstract representation.
00:18:03.401 --> 00:18:06.860
And the screen reader can just go
through this bus to access
00:18:06.860 --> 00:18:08.761
the text of the application,
00:18:08.761 --> 00:18:12.422
and then render it on an accessibility
device, whatever it is.
00:18:12.781 --> 00:18:16.141
Is it Braille, is it speech,
is it something else, I don't know,
00:18:16.141 --> 00:18:19.661
but the idea is that it's generic
so that we don't have to know.
00:18:21.221 --> 00:18:24.640
So, just to give an instance,
we have the X server,
00:18:24.640 --> 00:18:29.722
and the gedit application renders pixmaps
to the X server,
00:18:29.722 --> 00:18:35.981
it is pango which does the rendering,
but there is in GTK, inside GTK the text,
00:18:35.981 --> 00:18:42.001
which is what we want, and so there is
a part of gnome which is called ATK
00:18:42.001 --> 00:18:47.001
which plugs into GTK to get that text
and provide it to the screen reader,
00:18:47.001 --> 00:18:51.960
on Linux it's called Orca, and then Orca
can output this through braille or speech.
00:18:52.621 --> 00:18:55.920
So we have this bus between ATK and Orca,
00:18:55.920 --> 00:19:01.521
it is basically an RPC bus, actually,
so that is:
00:19:01.521 --> 00:19:06.141
Orca can ask for the text explicitly or
it can ask for getting
00:19:06.141 --> 00:19:08.660
notifications about the changes,
00:19:08.660 --> 00:19:13.981
so once it's registered, ATK sends messages
whenever text is modified,
00:19:13.981 --> 00:19:17.461
so Orca doesn't have to poll for changes.
00:19:18.521 --> 00:19:21.581
And so it means that it's only on request
from the screen reader.
00:19:21.881 --> 00:19:25.221
So if there is no screen reader then
there is no message on the bus,
00:19:25.221 --> 00:19:28.382
so it's quite lightweight when
the screen reader is not there.
00:19:31.561 --> 00:19:36.041
The idea is that the screen reader gets
the abstract representation as a tree,
00:19:36.041 --> 00:19:39.101
so we have the main window,
with maybe some container,
00:19:39.101 --> 00:19:43.221
and then have the menu bar
with several items in them,
00:19:43.221 --> 00:19:46.141
and then a text area, an OK button, etc.
00:19:46.442 --> 00:19:52.121
So that's the idea, the screen reader really
has the representation of the application,
00:19:52.121 --> 00:19:54.701
and then the user can go around it.
00:19:56.700 --> 00:19:57.961
So, technically speaking, now.
00:19:59.061 --> 00:20:02.861
A lot of applications are already
technically accessible in that
00:20:02.861 --> 00:20:07.741
the textmode applications for instance,
you can always get the text for course.
00:20:08.480 --> 00:20:13.261
GTK 2 and 3 are accessible,
it's improving over years,
00:20:13.261 --> 00:20:17.900
it's really in a state nowadays, which
can be used for everyday work.
00:20:19.221 --> 00:20:25.101
And KDE is, I mean Qt actually, has been
trying to push for accessibility
00:20:25.101 --> 00:20:26.041
for a long time,
00:20:26.041 --> 00:20:33.122
Qt 4 had some implementation which was
a bit sketchy, with Qt 5 it's much better.
00:20:34.421 --> 00:20:37.681
So it is on its way to get
really accessible.
00:20:38.922 --> 00:20:45.382
Mono, however, had an accessibility effort
but Novell actually basically fired
00:20:45.382 --> 00:20:49.261
all the team, the Accessibility team
in 2012 or something.
00:20:49.641 --> 00:20:54.601
And so it's not maintained any more,
and it has been removed from Debian
00:20:54.601 --> 00:20:56.421
because it was really not maintained.
00:20:57.321 --> 00:21:02.421
So, let's see. Acrobat reader
is actually accessible.
00:21:02.922 --> 00:21:09.182
Adobe made the effort of plugging
the rendering of the PDF file into ATK,
00:21:09.182 --> 00:21:13.781
so that the screen reader actually
gets the content of the PDF file.
00:21:14.961 --> 00:21:18.260
And then you have the other applications,
so Qt3, or Xt,
00:21:18.260 --> 00:21:22.862
or applications which draw things
themselves, like xpdf,
00:21:22.862 --> 00:21:26.261
these are really not accessible at all.
00:21:29.281 --> 00:21:34.041
To give an idea in Debian, of the stack,
we have brltty
00:21:34.041 --> 00:21:37.241
which contains the drivers for braille,
00:21:37.241 --> 00:21:41.220
we have speech-dispatcher which
manages the drivers for speech.
00:21:41.901 --> 00:21:46.721
Then for the bus, the accessibility bus,
we have the server part
00:21:46.721 --> 00:21:52.161
which is at-spi2-core, which is generic,
all toolkits use it,
00:21:52.161 --> 00:21:57.961
and then you have the GTK-ish part of it
which is gail and libatk.
00:21:59.420 --> 00:22:02.201
And on the Qt side you have qt-at-spi.
00:22:03.501 --> 00:22:08.100
And in Qt5 it's actually integrated
into the core of Qt.
00:22:09.381 --> 00:22:11.801
And then you have the screen reader,
which is called Orca.
00:22:11.942 --> 00:22:14.061
So basically,
once you have all this installed,
00:22:14.061 --> 00:22:16.621
you have the whole stack for
accessibility.
00:22:18.101 --> 00:22:20.641
So, what do we want to achieve?
00:22:21.841 --> 00:22:27.100
Which is where I will be asking you
for trying to do things.
00:22:28.041 --> 00:22:30.041
What is the goal?
00:22:30.441 --> 00:22:36.021
The goal is at the very least, having the
accessibility stack working on all desktops.
00:22:36.661 --> 00:22:40.861
That is, you can actually run it
and it works.
00:22:41.601 --> 00:22:44.581
It is a matter of a few tests,
I will explain that,
00:22:44.581 --> 00:22:48.441
so that you can actually include them
in regression tests.
00:22:49.181 --> 00:22:54.461
That would only allow to access some
applications, but that's already huge,
00:22:54.461 --> 00:23:00.701
in that if it's all desktops which have it,
then a blind user for instance
00:23:00.701 --> 00:23:06.101
is not afraid of asking, like a neighbour
or a coworker, or whatever
00:23:06.101 --> 00:23:11.061
"can I use your computer, just to read
my mails or whatever?".
00:23:13.881 --> 00:23:16.380
It will not be convenient
for the blind user,
00:23:16.380 --> 00:23:20.981
but at least he will be able to work
with his coworker or whatever.
00:23:22.101 --> 00:23:24.401
That's already huge.
00:23:26.301 --> 00:23:28.942
And then of course the graal would be that
all desktops would be
00:23:28.951 --> 00:23:30.421
completely accessible.
00:23:30.981 --> 00:23:34.961
I understand that this is not achievable
but that's really the target we would have.
00:23:35.281 --> 00:23:39.502
So that, you would just be able
to choose your desktop.
00:23:39.881 --> 00:23:42.341
So this is more involved,
I'll explain later.
00:23:44.661 --> 00:23:47.620
Getting the accessibility stack working...
00:23:48.281 --> 00:23:51.361
The goal is that you just run Orca
and it works.
00:23:52.001 --> 00:23:56.361
Whatever situation you're in, you have
already applications running, and whatnot,
00:23:56.361 --> 00:24:00.401
and you just start Orca, and you manage
to read the existing applications.
00:24:01.041 --> 00:24:04.700
At the moment, this is not enabled
for all toolkits,
00:24:04.700 --> 00:24:10.041
it is enabled by default in GTK3, actually,
in Jessie, so it does work with GNOME.
00:24:11.021 --> 00:24:15.361
But not with GTK2, Qt4, Qt5,
there is often people who say
00:24:15.361 --> 00:24:20.781
"yeah, but there might be bugs,
it may make things slower".
00:24:21.541 --> 00:24:25.501
Ok, but we are at the beginning of
the release, err.
00:24:25.501 --> 00:24:29.621
the development of Stretch,
maybe it is the time to just enable this,
00:24:29.621 --> 00:24:35.281
and if there are bugs, let's just fix them,
there is no way forward except like this,
00:24:35.281 --> 00:24:38.880
we've been not enabling accessibility
for like a decade,
00:24:38.880 --> 00:24:42.701
and maybe now is the time to just do it,
and then...
00:24:42.701 --> 00:24:49.342
[round of claps] [smile]
Thanks!
00:24:50.601 --> 00:24:52.641
The question is: how do you test it?
00:24:53.361 --> 00:24:57.182
I'll explain the details, and then you'll
see that we provide scripts
00:24:57.182 --> 00:24:58.401
to do it for you.
00:24:58.840 --> 00:25:01.862
The idea is that we have that
accessibility bus running,
00:25:01.862 --> 00:25:05.361
so there are some dbus daemon running,
you have to check that they are running,
00:25:05.361 --> 00:25:11.401
there is a script which does that
automatically normally,
00:25:11.401 --> 00:25:13.681
but maybe it does not for your desktop,
00:25:13.681 --> 00:25:21.801
and when it is running, you have actually
a dbus specialized bus, for accessibility
00:25:21.801 --> 00:25:27.021
and the session bus should be providing
its address so that applications can find it.
00:25:27.941 --> 00:25:32.221
And also there, the Xorg root window
provides the address as well.
00:25:32.981 --> 00:25:37.400
And then we have to have the toolkits
enable their layer for accessibility.
00:25:38.421 --> 00:25:43.782
All of this is actually checked with
a small script that I've written
00:25:43.782 --> 00:25:48.461
and it is available on pkg-a11y.
00:25:50.661 --> 00:25:54.561
There are pointers to this
on the wiki page, accessibility,
00:25:54.561 --> 00:25:58.980
that wasn't -devel but -maint,
but there are links between
00:25:58.980 --> 00:26:02.720
accessibility, accessibility-devel and
accessibility-maint,
00:26:02.720 --> 00:26:04.201
so you should be able to find it.
00:26:04.761 --> 00:26:07.320
The idea is that you clone this repository.
00:26:07.920 --> 00:26:11.561
There is an env.sh file which
you can source
00:26:11.561 --> 00:26:18.640
to basically define all these variables to
enable accessibility in GTK2, Qt4, Qt5, etc.
00:26:18.640 --> 00:26:23.271
and once you have this you can run
"make check" which runs
00:26:23.271 --> 00:26:28.361
GTK2, GTK3, Qt4, Qt5 applications, and
check that they are really accessible.
00:26:29.261 --> 00:26:34.441
If they are not, or for users who can not
manage to get their thing working,
00:26:34.441 --> 00:26:40.941
there is a troubleshoot script which
tests every bit one by one and tells you
00:26:40.941 --> 00:26:45.320
"this is not properly configured,
maybe that's the issue actually".
00:26:46.541 --> 00:26:51.780
And also you can run "orca -l"
to get the list of applications,
00:26:51.780 --> 00:26:55.962
so it's a quick test really
so you can just run, like,
00:26:55.962 --> 00:27:01.220
geany or gedit or whatever GTK application
and check that "orca -l" sees that.
00:27:01.641 --> 00:27:06.121
If that's the case, then probably the
accessibility stack is working properly.
00:27:09.102 --> 00:27:14.481
OK, so that was the part that you can do,
the first part that you can do.
00:27:14.661 --> 00:27:17.601
Another part is how the user will
start Orca.
00:27:18.141 --> 00:27:21.661
So of course, in the "foreign user"
use-case,
00:27:21.661 --> 00:27:26.861
so a disabled person uses the desktop
of somebody else,
00:27:26.861 --> 00:27:30.481
he can ask the somebody else
to run Orca for him.
00:27:32.461 --> 00:27:34.940
But a shortcut would be really welcome,
00:27:34.940 --> 00:27:39.021
for instance when you go to a library or
whatever, he wants to use a computer.
00:27:39.320 --> 00:27:45.941
Gnome settled on using super-alt-s to just
start the screen reader.
00:27:47.721 --> 00:27:53.441
Our concern is that OK, gnome chose that,
maybe KDE will choose something else, etc.
00:27:53.441 --> 00:27:58.061
It would be extremely convenient to have
just one so that you don't have to ask
00:27:58.061 --> 00:28:03.441
"Which desktop is that? Alright, this
desktop I remember that it is that shortcut".
00:28:04.020 --> 00:28:10.341
So the problem we may have, I don't know,
is deciding on a universal shortcut
00:28:10.341 --> 00:28:14.742
which doesn't conflict with any other
shortcut in any other desktop.
00:28:15.201 --> 00:28:18.801
So I don't know, maybe super-alt-s
is already fine,
00:28:18.801 --> 00:28:22.581
maybe that's something that should be
discussed at freedesktop, I don't know.
00:28:23.121 --> 00:28:25.021
I really don't know for this.
00:28:26.201 --> 00:28:31.241
For the installer, for instance, at the
boot menu, you would type s and enter
00:28:31.241 --> 00:28:34.661
to select the speech-enabled installer.
00:28:35.721 --> 00:28:39.541
So maybe just try to have just one.
00:28:40.801 --> 00:28:45.021
And maybe also we could autostart it
when you plug a USB Braille device.
00:28:45.260 --> 00:28:51.881
That may be useful, but as long as we have
super-alt-s
00:28:51.881 --> 00:28:57.321
then we are fine with starting Orca,
so maybe it's not so much worth
00:28:57.321 --> 00:29:01.782
spending efforts on autostart on plugging
USB Braille display,
00:29:01.782 --> 00:29:04.541
and really get that shortcut running.
00:29:06.620 --> 00:29:11.120
For the regular user, you want of course
Orca started automatically,
00:29:11.120 --> 00:29:15.441
you don't want to have to start it by hand
each time you want to use your own computer.
00:29:18.201 --> 00:29:21.160
The thing is: there should be at least
two things.
00:29:21.481 --> 00:29:25.081
There should be an icon in the interface
so that, like,
00:29:25.081 --> 00:29:29.661
the administrator of the machine
enables it easily, finds it easily,
00:29:29.661 --> 00:29:35.681
and that icon also should be accessible,
just because the disabled person
00:29:35.681 --> 00:29:37.980
might want to interact with
it.
00:29:40.901 --> 00:29:42.501
That hasn't been always the case.
00:29:42.602 --> 00:29:47.681
Sometimes the accessibility icon was not
accessible in some releases of software.
00:29:48.701 --> 00:29:52.981
And the second thing is having
a command-line interface for enabling it.
00:29:53.100 --> 00:29:57.100
Quite often it is the case, but the thing is:
please tell us which one
00:29:57.100 --> 00:29:59.842
we should use in the Debian installer,
so that when
00:29:59.842 --> 00:30:05.821
the user installs Debian with accessibility
enabled in the Installer,
00:30:05.821 --> 00:30:10.461
then we enable accessibility in the
installed system automatically.
00:30:12.480 --> 00:30:16.500
We are fine with having to deal with
gconf, gsettings, xfconf, whatever.
00:30:16.500 --> 00:30:20.602
Just give us the way to do it and document
it, so that we can do it.
00:30:22.902 --> 00:30:27.181
Eventually, we would like all desktops
to be completely accessible.
00:30:28.301 --> 00:30:32.581
So that means making, like,
the start menu, the panel, task switching,
00:30:32.581 --> 00:30:36.422
all these tiny bits of the desktop
to be accessible.
00:30:37.060 --> 00:30:41.261
So if your desktop is based on GTK/Qt,
it's quite easy
00:30:41.261 --> 00:30:43.320
because the toolkit does it for us.
99:59:59.999 --> 99:59:59.999
You should still check out what
Orca and Accerciser are saying,
99:59:59.999 --> 99:59:59.999
I will explain that a bit later.
99:59:59.999 --> 99:59:59.999
And also that everything can be achieved
by using just the keyboard.
99:59:59.999 --> 99:59:59.999
It's really important, some people just
can not use the mouse,
99:59:59.999 --> 99:59:59.999
and they can see and can use the keyboard,
but also blind people really like
99:59:59.999 --> 99:59:59.999
being able to do everything with
the keyboard and speech output.
99:59:59.999 --> 99:59:59.999
And if you can do that, with just
a keyboard, no cheating with the mouse,
99:59:59.999 --> 99:59:59.999
then that's already quite good.
99:59:59.999 --> 99:59:59.999
If some of the parts of your interface,
your desktop interface, are self-drawn,
99:59:59.999 --> 99:59:59.999
not using GTK or Qt, then you will have
to implement accessibility yourself,
99:59:59.999 --> 99:59:59.999
so interface with AT-SPI, maybe by using
ATK, or talking AT-SPI protocol natively,
99:59:59.999 --> 99:59:59.999
yourself, it's up to you.
99:59:59.999 --> 99:59:59.999
But that's the kind of drawback for using
a self-drawn widget.
99:59:59.999 --> 99:59:59.999
At the moment, mostly only Gnomeand MATE
are really accessible like this,
99:59:59.999 --> 99:59:59.999
I mean really usable with a keyboard,
shortcuts, etc.
99:59:59.999 --> 99:59:59.999
XFCE and LXDE start being accessible,
they don't always have shortcuts,
99:59:59.999 --> 99:59:59.999
so we wouldn't recommend these,
so basically people only have
99:59:59.999 --> 99:59:59.999
two choices for desktop at the moment.
99:59:59.999 --> 99:59:59.999
That's really sad.
99:59:59.999 --> 99:59:59.999
To develop accessible applications,
more generally,
99:59:59.999 --> 99:59:59.999
the idea is that you should not design
your interface with the GUI in mind,
99:59:59.999 --> 99:59:59.999
but rather start with a logical way of
thinking about your interface, first.
99:59:59.999 --> 99:59:59.999
Because then, the screen reader, since
it is that structure of the application
99:59:59.999 --> 99:59:59.999
and not the visual representation,
it will be easier for disabled people.
99:59:59.999 --> 99:59:59.999
And actually in the end, it will make
your code much better,
99:59:59.999 --> 99:59:59.999
make it structured logically
instead of graphically.
99:59:59.999 --> 99:59:59.999
And as I said, better use standard
widgets,
99:59:59.999 --> 99:59:59.999
because then they have integrated
support for accessibility.
99:59:59.999 --> 99:59:59.999
And also, make sure to use the proper
widget for what you want to do,
99:59:59.999 --> 99:59:59.999
so for instance if you have a text field
to be filled,
99:59:59.999 --> 99:59:59.999
and then a label in front of it,
99:59:59.999 --> 99:59:59.999
you should use the labeled text
field widget, which makes a relation
99:59:59.999 --> 99:59:59.999
between the label and the text.
99:59:59.999 --> 99:59:59.999
Otherwise the screen reader just notices
labels and text,
99:59:59.999 --> 99:59:59.999
it doesn't know which is which.
99:59:59.999 --> 99:59:59.999
So avoid homemade widgets, or you have
to implement accessibility yourself.
99:59:59.999 --> 99:59:59.999
And if you put an image, of course,
provide a text alternative
99:59:59.999 --> 99:59:59.999
for the screen reader to give to
the user.
99:59:59.999 --> 99:59:59.999
And keep it simple.
99:59:59.999 --> 99:59:59.999
For people with cognition issues,
but also for blind people,
99:59:59.999 --> 99:59:59.999
if there are too many things, too complex
dialog boxes, or whatever,
99:59:59.999 --> 99:59:59.999
it will be tedious for them.
99:59:59.999 --> 99:59:59.999
But it's also for your regular users,
99:59:59.999 --> 99:59:59.999
if the interface is simple, then
it will be easier for them.
99:59:59.999 --> 99:59:59.999
Quite often you ask
"OK, but I would like to test myself".
99:59:59.999 --> 99:59:59.999
Orca has a braille monitor, so what you
can simply do is running
99:59:59.999 --> 99:59:59.999
"orca -e braille-monitor" to enable it,
99:59:59.999 --> 99:59:59.999
and then just work as usual with your
desktop,
99:59:59.999 --> 99:59:59.999
only using the keyboard,
don't use the mouse,
99:59:59.999 --> 99:59:59.999
and then check that whatever you are doing
appears on the Braille monitor,
99:59:59.999 --> 99:59:59.999
and that it is correct.
99:59:59.999 --> 99:59:59.999
And there is a crash test that you can do,
it is to just turn on the speech,
99:59:59.999 --> 99:59:59.999
and then switch off the screen,
and then to try to work.
99:59:59.999 --> 99:59:59.999
And you are... [they are trying to tell
something but... Oh sure, sure].
99:59:59.999 --> 99:59:59.999
So try to just switch off the screen and
work, and you will see that it's difficult.
99:59:59.999 --> 99:59:59.999
Even developers of accessibility
who are sighted
99:59:59.999 --> 99:59:59.999
don't always do that, and they realize,
when they do that,
99:59:59.999 --> 99:59:59.999
"OK, there was one thing which
I didn't realize that it wasn't working,
99:59:59.999 --> 99:59:59.999
just because I could see the screen".
99:59:59.999 --> 99:59:59.999
There is on gnome.org a guide
for developing accessible applications,
99:59:59.999 --> 99:59:59.999
you should have a look at it,
it's quite interesting.
99:59:59.999 --> 99:59:59.999
Then there is Accerciser, maybe you will
not use it because it's a sort of debugger.
99:59:59.999 --> 99:59:59.999
The idea is that it shows
the tree of widgets,
99:59:59.999 --> 99:59:59.999
and you can have a look at the details
and check the properties,
99:59:59.999 --> 99:59:59.999
that the text is really right,
or whatever.
99:59:59.999 --> 99:59:59.999
So you can try to use it, but most
probably you will want to just use Orca
99:59:59.999 --> 99:59:59.999
and check quickly what is showing up.
99:59:59.999 --> 99:59:59.999
One last thing, about bugs.
99:59:59.999 --> 99:59:59.999
One thing to understand is that the users,
disabled users,
99:59:59.999 --> 99:59:59.999
are in a different situation than you,
so if they make suggestions
99:59:59.999 --> 99:59:59.999
like in a webbrowser, put brackets around
URLs which are clickable,
99:59:59.999 --> 99:59:59.999
then do that,
at least as an option.
99:59:59.999 --> 99:59:59.999
Because it is really useful for them.
99:59:59.999 --> 99:59:59.999
You, as a sighted person, wouldn't
understand why, but they do know why.
99:59:59.999 --> 99:59:59.999
And so OK, make it an option,
and the users will enable it.
99:59:59.999 --> 99:59:59.999
It's extremely difficult to deal with
accessibility bugs,
99:59:59.999 --> 99:59:59.999
because it's already not easy for people
to use your software,
99:59:59.999 --> 99:59:59.999
because of hindrance, or whatever,
99:59:59.999 --> 99:59:59.999
but it's even more difficult for them
to report bugs,
99:59:59.999 --> 99:59:59.999
because they have some output on
the braille device or speech or whatever,
99:59:59.999 --> 99:59:59.999
and they don't even know
what they are supposed to have,
99:59:59.999 --> 99:59:59.999
because they can not see what is
on the screen.
99:59:59.999 --> 99:59:59.999
So it's difficult for them to understand
what is happening,
99:59:59.999 --> 99:59:59.999
and so it's even more difficult to explain
what is happening.
99:59:59.999 --> 99:59:59.999
So, yes, the only way out is to discuss,
and take the time to discuss,
99:59:59.999 --> 99:59:59.999
it's long but there is no other way.
99:59:59.999 --> 99:59:59.999
Remember to ask the user for screenshots,
they don't necessarily remember to do this.
99:59:59.999 --> 99:59:59.999
Try to think about this because
it's actually easy for them to do,
99:59:59.999 --> 99:59:59.999
they just don't think about it.
99:59:59.999 --> 99:59:59.999
And try to keep in mind that
their disability and consequences.
99:59:59.999 --> 99:59:59.999
It was quite fun, a few years ago,
during the discussion with debian-boot,
99:59:59.999 --> 99:59:59.999
when we talked about making the
framebuffer accessible, some person said
99:59:59.999 --> 99:59:59.999
"OK, but then if the framebuffer
doesn't show up nicely, the user
99:59:59.999 --> 99:59:59.999
will not be able to reportthe bug about
the framebuffer not showing up nicely."
99:59:59.999 --> 99:59:59.999
OK, but he doesn't care, he won't
see it anyway.
99:59:59.999 --> 99:59:59.999
So that's fine, we can leave the bug.
99:59:59.999 --> 99:59:59.999
So it's kind of situations
where you have to think their situation.
99:59:59.999 --> 99:59:59.999
You can even just contact a institution
near you to discuss directly with users.
99:59:59.999 --> 99:59:59.999
There are a lot of them all around
the world, so you can try that.
99:59:59.999 --> 99:59:59.999
OK, to conclude: quite a few of
your desktop users need accessibility,
99:59:59.999 --> 99:59:59.999
really need it, in any kind of situation,
99:59:59.999 --> 99:59:59.999
so we really want to make accessibility
mainstream,
99:59:59.999 --> 99:59:59.999
and we can do quite some work,
but we need your help for this,
99:59:59.999 --> 99:59:59.999
so you're welcome.
99:59:59.999 --> 99:59:59.999
Thanks.
99:59:59.999 --> 99:59:59.999
[claps]
99:59:59.999 --> 99:59:59.999
[Michael Banck] Thanks a lot Samuel.
So are there any questions?
99:59:59.999 --> 99:59:59.999
[Q] Excuse me, do you know
the current status of Chinese,
99:59:59.999 --> 99:59:59.999
Japanese, and Korean support
on the Braille display?
99:59:59.999 --> 99:59:59.999
[sthibault] So on the Braille display,
I don't remember exactly
99:59:59.999 --> 99:59:59.999
which Braille tables we have...
99:59:59.999 --> 99:59:59.999
Korean we have a table for this,
Japanese, we don't seem to have one,
99:59:59.999 --> 99:59:59.999
and Chinese we do have,
I don't remember where, but we do,
99:59:59.999 --> 99:59:59.999
I know that there is a proper table
for Chinese.
99:59:59.999 --> 99:59:59.999
Japanese, I'm surprised that
I couldn't find it, but at least I think
99:59:59.999 --> 99:59:59.999
this is something which already works.
99:59:59.999 --> 99:59:59.999
It has improved a lot since the desktop
went to UTF-8 by default,
99:59:59.999 --> 99:59:59.999
so nowadays it's really working, I think.
99:59:59.999 --> 99:59:59.999
Not on the text console on Linux,
because Linux' support
99:59:59.999 --> 99:59:59.999
for double-width glyphs is not really good,
but on the desktop yes, it's really working
99:59:59.999 --> 99:59:59.999
[Note of transcriptor: there indeed is
a japanese table,
99:59:59.999 --> 99:59:59.999
along the chinese and real
corean tables (not kok!)]
99:59:59.999 --> 99:59:59.999
[Michael Banck] Any other question? Well...
99:59:59.999 --> 99:59:59.999
[Ksamak] What do you think could be doable
at the Debian level, I don't know,
99:59:59.999 --> 99:59:59.999
on the archive or process, to, I don't...
99:59:59.999 --> 99:59:59.999
for maintainers and developers to be aware
when they push something,
99:59:59.999 --> 99:59:59.999
that it breaks a feature, or...
99:59:59.999 --> 99:59:59.999
[sthibault] Oh you mean if some desktop
breaks accessibility support?
99:59:59.999 --> 99:59:59.999
[Ksamak] Yeah
99:59:59.999 --> 99:59:59.999
Yeah, I was thinking, I've written a note
about it,
99:59:59.999 --> 99:59:59.999
to make these checks on a VM somewhere,
99:59:59.999 --> 99:59:59.999
to run it all periodically on
all the desktops,
99:59:59.999 --> 99:59:59.999
and then have a red light in the tracker
page of these desktops
99:59:59.999 --> 99:59:59.999
so that maintainers see that
99:59:59.999 --> 99:59:59.999
"Oh, there is a problem here",
99:59:59.999 --> 99:59:59.999
and then a link to the wiki page so that
they test themselves, and then fix,
99:59:59.999 --> 99:59:59.999
or at least ask for help for fixing it.
99:59:59.999 --> 99:59:59.999
But yeah, that's the kind of thing,
as usual,
99:59:59.999 --> 99:59:59.999
making accessibility not a special thing,
but just in the usual process,
99:59:59.999 --> 99:59:59.999
like all the lights in the tracker page.
99:59:59.999 --> 99:59:59.999
[Michael Banck] So I have a question about
these special widgets,
99:59:59.999 --> 99:59:59.999
did you talk to upstream, GTK or Qt,
suggest to disallow special widgets
99:59:59.999 --> 99:59:59.999
if they are not accessible, or is it not
possible technically?
99:59:59.999 --> 99:59:59.999
[sthibault] Sorry?
99:59:59.999 --> 99:59:59.999
So you said it's problematic if people
come up with their own widgets,
99:59:59.999 --> 99:59:59.999
and is it, would it be possible to just
disallow or block it
99:59:59.999 --> 99:59:59.999
if they are not accessible, or is that
99:59:59.999 --> 99:59:59.999
a technical solution to a social problem.
99:59:59.999 --> 99:59:59.999
Yeah, I think that's one of the issues,
I mean, people not aware of the problem.
99:59:59.999 --> 99:59:59.999
It is that the development tools not always
remind the developer for them, like,
99:59:59.999 --> 99:59:59.999
if you run glade, and do an interface,
it should prevent, give a warning
99:59:59.999 --> 99:59:59.999
"You didn't put an alternative text
for an image", etc. and yes....
99:59:59.999 --> 99:59:59.999
But when people write C code, I don't know
how to tell them that that's bad.
99:59:59.999 --> 99:59:59.999
[Michael Banck] Are there any other
questions? Yes, one?
99:59:59.999 --> 99:59:59.999
[Q] So you talked about you have to turn
on the accessibility in the installer,
99:59:59.999 --> 99:59:59.999
I have no idea?
99:59:59.999 --> 99:59:59.999
[sthibault] Sorry I couldn't hear.
99:59:59.999 --> 99:59:59.999
[Q] You talked about, during the
installation,
99:59:59.999 --> 99:59:59.999
people might press s or something to turn
accessibility on.
99:59:59.999 --> 99:59:59.999
I think Apple have it turned on
by default, I mean...
99:59:59.999 --> 99:59:59.999
[sthibault] Well, Apple has it available
by default, yes,
99:59:59.999 --> 99:59:59.999
and you have to type a shortcut, I don't
remember the shortcut for Apple,
99:59:59.999 --> 99:59:59.999
but yes, it is available all the time on
a mac, and on the phone as well.
99:59:59.999 --> 99:59:59.999
[Q] Well, I was thinking in a minute,
it's no big deal for me if it's turned on,
99:59:59.999 --> 99:59:59.999
at my computer start...
99:59:59.999 --> 99:59:59.999
[sthibault] Wait, when I say turn on,
that means,
99:59:59.999 --> 99:59:59.999
start talking and blabber, so it will make
noise [giggles]
99:59:59.999 --> 99:59:59.999
[Michael Banck] Any other questions?
Ah, there is one.
99:59:59.999 --> 99:59:59.999
[Steve McIntyre] So the installer,
booting off CD, kind of beeps at boot,
99:59:59.999 --> 99:59:59.999
has anybody checked UEFI boot to see
if that works the same way?
99:59:59.999 --> 99:59:59.999
UEFI, if you boot the installer CD,
I honestly don't know,
99:59:59.999 --> 99:59:59.999
I haven't thought to check until just now,
wheither it works if you boot
99:59:59.999 --> 99:59:59.999
via UEFI instead of the old bios.
99:59:59.999 --> 99:59:59.999
[sthibault] I think it's really independent
of the firmware.
99:59:59.999 --> 99:59:59.999
The only think is the boot menu
where we do have to have a beep.
99:59:59.999 --> 99:59:59.999
Exactly.
99:59:59.999 --> 99:59:59.999
[sthibault] And that's something I didn't
test myself.
99:59:59.999 --> 99:59:59.999
[Steve McIntyre] So for UEFI we boot grub
instead of isolinux.
99:59:59.999 --> 99:59:59.999
I don't if grub does a beep.
99:59:59.999 --> 99:59:59.999
[sthibault] grub does have a drive
of the PC speaker,
99:59:59.999 --> 99:59:59.999
so it can beep actually.
99:59:59.999 --> 99:59:59.999
I'll just write a note.
99:59:59.999 --> 99:59:59.999
[Steve McIntyre] If you can check that,
let me know, and we can fix it
99:59:59.999 --> 99:59:59.999
if it's not working.
99:59:59.999 --> 99:59:59.999
[sthibault] Thanks.
99:59:59.999 --> 99:59:59.999
And I was happy to notice that
the liveCD of Debian
99:59:59.999 --> 99:59:59.999
actually has the same kind of beep.
99:59:59.999 --> 99:59:59.999
I don't remember asking for it,
so it really shows that things are going.
99:59:59.999 --> 99:59:59.999
[Michael Banck] OK, so we are running
out of time, so let's thank Samuel again.
99:59:59.999 --> 99:59:59.999
[claps]