Freedom #0 for everybody, really?
Samuel Thibault, Jean-Philippe Mengual
Slides available on http://brl.thefreecat.org/

{Samuel Thibault}

[Slide 1]

So, good afternoon...

So...  We will actually be talking about freedom #0.  And the question
is: are we really providing freedom #0 to everybody?  The slides of the
presentation are available on the brl.thefreecat.org website, and there
is a website which is still being built, to discuss about this, all
this, we are not sure whether this list will be in French or English, we
can create other lists, it's completely open, and just starting, so we
can discuss what to do about this.

So, are we really providing freedom #0 to everybody?  Well, one answer
would be that we may be failing by 10 to 20 percent, actually.  Where
does this figure come from?  It's a poll asking people "in your everyday
life, are you having major issues with... whatever, in whatever
situation of your everyday life, do you have a major problem?", and 10
percent of the people would say "yes, sometimes I have major issues".
And 20 percent would say "yes, I have minor issues or major issues".
So it's like 1 every 5 person that has really problems.  This is about
everyday life, so it's not only about using computers, of course, so it
can be moderated.  But, I'd even say, it's actually a 100 percent, I
will explain more a bit later.

[Slide 2]

Let me just take a first example.  This is Gnuplot, I really like
Gnuplot.  What is the problem with Gnuplot?  Does anybody have an idea?
Exactly.  I would like...  Yeah, the problem is for colorblind people:
the curves, green and red curves, are almost alike.  In the practice
room at the University, I've heard one of my students asking another one
"Which one, which curve is the A curve?" and the other one would say
"Well, it's the green one", "Ok, but which curve is the green curve?".
That's really a problem.  I would like to show you: how many people
here are colorblind?  Please raise your hand if you can not distinguish
some colors at least, so there are 4 people over, like 50.  And indeed
8 percent of the male people are colorblind, that's huge.  So this is
really just a simple example, and you see, you didn't even know that
your neighbour was colorblind, and he has troubles with using some
software.

[Slide 3]

So, the outline of the talk will be that I will introduce a bit to
accessibility and give a short technological overview, essentially to
explain that the problem is not really technical, nowadays.  It used to
be, but now we know how to deal with that, and the problem is more about
integration, documentation, etc.  So that will be mostly the discussion,
and I will present some of the ideas that we have, but then we want to
discuss with you, so you will take the microphone to discuss.

About the technological details, you can have them in a video that was
recorded at LSM 2010, which is called "How to make applications
accessible?".  There are other videos, but this one I have presented, so
I know what is there.

[Slide 4]

So, what is accessibility?  To put it simply, we can say it's making
something usable by people with specific needs.  Now what does that mean,
specific needs?

Of course, blind people is the most obvious example of people who have
really a strong problem with using computers.  People with a low vision,
they can see the screen, so they don't necessarily need a braille device
or speech synthesis, they need bigger characters, maybe they need better
contrast, and things like this.  People who are deaf, most of the time
it's really not a problem, well you need to use the visible bell instead
of the audible bell, but mostly it's quite fine.  But then you want to
play a Shoot'n Up, and you can not hear the monster behind you, and so
you can not really play the game because it's too difficult.  Colorblind
people, we have talked a bit about it.  A friend of mine told me "this
game I just can not play it because I can not distinguish what is good,
what is bad." People with just one hand, if you have ever tried to press
control-alt-delete with just one hand, you know that it's really a
problem.  People with cognition disorder: dyslexia, which is relatively
known nowadays.  Something much less known is attention disorder, which
doesn't show up when you discuss with people so much.  But with using
software, it's really a problem, if the software is complex or needs to
deal with a lot of things.  Problem of memory, etc.  People with motor
disability, for instance people with Parkinson would tend to press keys
several times in a short period, so they need compensation for this.
Etc., there are a lot of things.  Elderly people have mostly a bit of
everything.  Elderly people means you, withing, twenty, thirty years
maybe.

To have a more global overview of this, there are accessibility HOWTOs
who discuss a bit about all these.

I would like to emphasize on "you".  Maybe not now, but maybe next year
you will break your arm, for whatever reason, and then... you have only
one hand to use your computer.  And so you become disabled.  Maybe for
just a couple of months.  Maybe you'll have an accident, you'll become
blind.  So it's actually a problem of everybody.

So not only a handicap depends on the situation, that is deaf people,
most of the time they don't have a problem, but it also depends on
"when", and it's not necessarily permanent.

[Slide 5]

Ok.  I will present a bit about the hardware that people use.  So there
is braille input and output.  So Jean-Philippe has a braille device.
People interested in that will be able to see that.

Speech synthesis, so the computer can talk.

Joysticks permit to replace the mouse with something which might be more
usable by some people.

Some people might be able to only press a button, not even type on a
keyboard, just press one button, and so you should show a virtual
keyboard, to be able to press on whatever keys you would need.

You can track the eye, if you can not move at all, just the eye.

There are a lot of hardware.

[Slide 6]

The important thing to understand is there is no single solution, even
for a given disability.

Braille itself is not perfect.  Probably you don't know but a lot of
blind people can not read braille.  They haven't learned it, and they
might not even be able to learn it.  And braille devices are extremely
expensive.  Think about thousands of euros.

Speech synthesis, which is the other classical thing used by blind
people, is not perfect either.  Just because it might be a noisy
environment in the train, etc.  But also think about writing code,
source code, with speech synthesis: you would have to get the
parentheses, plus, etc. spelled.  It's really tedious, tedious, in some
cases.  When you are writing text, that's less of a problem, but in a
lot [of] cases, it's really a problem.

So there is nothing perfect, and you have to deal with both, even,
sometimes both at the same time.

[Slide 7]

Another thing I would like to explain is: writing dedicated software is
usually not so good an idea.

For instance, there is Edbrowse.  This is a blind oriented editor and
browser, so it's completely in text mode, it works quite nice.

Now it's really oriented for just one disability, so it doesn't help
people with motor issues, for instance.

And the problem is that, then, this is a Web browser, so what about
javascript support, flash support, table support, etc., etc.  Will the
maintainer really spend the time on implementing these?  And, what's
more, maintain all this?  So we have a problem of manpower.

And a third thing, which is difficult to understand, but really
important: disabled people and non-disabled people have to work
together.  It's important for the disabled people to get integrated
into our society.  So they have to work together.  And not working on
the same software is really a problem, because one will not be able to
ask for help to the other, and vice-versa.  Or when they are working on
the same document, if they are not using the same software they can't
understand each other, because they don't have the same vocabulary,
the same way of showing things, etc.  So this is really important that
we use the same software, and that means making *existing* software
accessible.

[Slide 8]

So, to give an idea of the current status.

Text mode is generally quite accessible.  Just because it's text, so
it's easy to make screen readers around it, to render on the braille
device etc.  But of course text mode applications are not so suited to
beginers, and you all know people around you who wouldn't ever use text
applications.  Well it's just the same for any kind of disabled people.

Gnome, so graphical interface which would suit some beginers, is quite
accessible.  Now I have to say that gnome3 was quite a disaster, it was
a huge regression, and... nowadays it's not too bad, but it was really a
restart, a restart from scratch.

Now, when you compare to Windows, we are essentially late, that is, we
started like a decade ago, while they started several decades ago.

Compared to the Apple world, we are really Stone Age.  Apple integrated
support for speech synthesis with screen reading, which really works
completely great.  They even have, in their Apple stores, afternoons
dedicated to teaching how to use the screen reader, to elder people.
They have made an effort that Microsoft never did, to really entackle
this issue.  And, even if Apple products are essentially binding you to
Apple products and removing freedom from you, they actually provide a
lot of freedom to a lot of people, just because then, they become able
to use the computer.  And I have to say that the free software doesn't
provide so much freedom, in that regard.

[Slide 9]

So, a technical part.  So we have an application which has an abstract
representation, gtk representation for instance.  And then we have a
visual rendering.  What happens usually is, we have a screen reader,
which through some bus, will access to the abstract representation, to
access the text, the buttons, how this is structured, and then it can
render all this on a device.  Be it a braille device, a magnification
window, whatever.  And that's a good thing because then it is generic.

[Slide 10]

So, just to give an example.  We have gedit, which uses gtk, which uses
pango to render the text, and also uses atk to expose this text to the
screen reader.  So it's really text which is propagated over the
accessibility bus, and then rendered braille, speech, etc.

[Slide 11]

So, technically speaking, a lot of applications are already accessible
because they use gtk, etc., so the console just because it's text, gtk
of course.  KDE, there is some support, it's no so well for now.  It's a
matter of spending work on this.  Adobe has made Acrobat Reader
accessible, they have implemented the thing to expose the text.

A lot of other applications are not accessible because they don't expose
the text, etc. so KDE3, Xt applications (the good old ones), self-drawn
applications, for instance xpdf draws the text itself, and it's... this
text is not exposed to the screen reader, so it's not accessible,
technically speaking.

So we have a lot of technically-speaking accessible applications.

[Slide 12]

The problem is: it's not enough, to make then really usable.

For instance, we have a dialog box here, so we have a label, we have a
label, we have a label,... we have a field, we have a field, we have a
field, Ok.  When I'm typing here, how do I know what I am supposed to
type?  I have to go back to the label, which one was this, the, the, oh
the third one, Ok I start, ... it's a mess.  What's important is that,
you have to structure your application logically, so we have a label
*for* a field, we have another label for another field, etc.  And, that
way, the screen reader can know what to relate with what.  When that is
not the case, that is, a mess of widgets, what people do is using some
scripts, that they insert into the screen reader to explain the screen
reader: "Ok, this a mess, but actually this relates to this, etc. etc.".
So people do this because modifying the application is not so easy, so
they prefer to patch around, to fix the browsing.

[Slide 13]

So, to summarize, the idea is not necessarily to make applications
accessible, but rather to make accessible applications, from the start,
that is, when you think about the application, you make it logically,
configurable, etc.  And when it's done from the start it's really not
much a burden to think about it.  You have to train yourself into
thinking about it, but that's mostly it.  Then, when you code, that's
fine, you choose the right way of doing it.

Well, of course, that doesn't mean that you can not fix your existing
non-accessible applications, you can modify them, it's just a bit hard
because, for instance here [back to slide 12], you have to rethink the
way you have built your dialogue box.

Ok, so this was the first part describing accessibility, a bit of the
notions of what it means.  I give the microphone to Jean-Philippe, so he
can make some demo, just to show you how it looks like.


[Jean-Philippe]

Well, good afternoon everybody.

Good afternoon everybody, so to explain what I'm going to show you,
is to show you the situation of accessibility in, well, in the modern
world.

That's to say I've started promoting GNU/Linux and all the free world,
and free software world for blind people and for people who have an
impairment, when I've discovered that the graphical user interfaces were
accessible because it's that the users, the classical users, the basic
users, what I call the basic users, like to use, so it was easier that
I could show them that it's not mandatory to know some command line in
order to use the computer, but they can use it from the graphical user
interface.

Well, on gnome2, the situation was fine, and we can say the accessibility
was... was not perfect, but was satisfying, alright, at least.  We could
for example access to applications such as Evolution, which enables the
user to read the mails.  Also we could access to Firefox, or for example
for LibreOffice.  And for the desktop it was very easy to have some
keyboard shortcuts in order to download with the computer, because when
you have, when you are impaired with eyes, the problem is that we can
not use the mouse.

Then, gnome3 is today here, and the situation, as mentioned Samuel, has
changed very much, and today, we have to find new solutions to have
something which is usable.

So, what I will show you now is, to explain, I've said to you that
Evolution was a mail reader which was accessible.  Today, you will see
that it is not accessible any more.  So it's to show you how there was
a regression between the two releases of the software, these recent
years.  Then, we're going to see that fortunately there are things which
work, for example, Thunderbird works very much, and, I know in the
free software community this environment doesn't... is controversial,
but Unity is today a desktop which works, and fortunately we have
applications which were accessible and which are always accessible,
which are still accessible, for example you have LibreOffice, we're going
to see a bit how it works.

So, to show you, I choosed to use a free speech synthesizer.  To be very
honest, in my daily life I use a proprietary speech synthesizer because
the free speech synthesizer is not of a big quality.  However its main
advantage is, there is several languages, a lot of languages.  And so
it's light...  It is a light synthesizer, and with several languages, so
it's a real benefit of this software.  So it's Espeak, I think you know
Espeak.

Well, just doesn't work, of course...  Demonstration effect...

{Boite de réception 1 total Evolution}

So here we are in Evolution, and we are in "Boîte de réception", in
English it was the "Inbox".  Usually, we could with Orca see what is
under the focus, and so we have the information to see where we are on
the screen.  So, for example, when I go there, Orca should read that
I am on the "Sendbox".  Actually you see that it's not the case: Orca,
for some reason, I don't know, is unable to read such information.  If
I try to write some message, the menu bar is accessible, that's to say
I can go in there with the keyboard {Nouveau sous menu}, and I can
browse in the menu bar through the keyboard, and here the information,
that's to say the items which are included in this menu bar {Nouvelle
fenêtre} {Archiver les données d'Evolution}. New window, archive the
data.  {Restaurer les données d'Evolution} {Importer} Import etc.
etc.  But I don't know the title of the window where I'm today, and I
don't know also exactly where I'm located in the window.  And of course
it's a problem because, with that it's of course difficult to use the
application, simply.

Anyway, so it's show you that Evolution which was an application which
before worked very much, because we could just see where were the focus,
the title of the window, today is not accessible any more, and the... I
think it's not usable for everybody, and it's a bad evolution that is
known in all the tickets which are submitted today.

Well, let's exit this application, let's see the desktop now, and an
accessible application, that's to say LibreOffice.  So I'm going to use
the launcher, which is the bar which is top left of the screen.  So it's
accessible with a shortcut keyboard.  {Notification. Public anap.} The
screen reader reads also the notification which are in the notifications
bar, that's very useful, especially in modern desktops where in this
bar there are a lot of information. {LibreOffice writer.}. It words
LibreOffice Writer, the name of the application, and the status of
the application.  It's also a useful information, that we don't find
today in some other desktops, such as gnome3 for example.  {Sans nom 1
LibreOffice Writer.} In this application, I can say easily that it's
fully accessible, for various reasons.  Firstly, everything can be
done with the keyboard, and we can have all the content of the screen
by the assistive technology, here it's the screen reader Orca.  For
example, if I want to know the title of the window, I've a shortcut
which works with Orca, and {Notification.} which has the expected
effect because the application is accessible. {Plus. Plus. Plus.} {Sans
nom 1 LibreOffice Writer.} And there it told LibreOffice Writer, so I
know where I am.  If I write some text, {If. I. Write. Soe. Text.} I
can read it. {Mal orthographié. Text}. {Mal orthographié. Soe}. {Mal
orthographié. Write.} Of course, there is a problem with the spelling
because it's not the same language, but...  Well, anyway it works
perfectly.  If I need to go in the menus, it's easy, for example if I...
let's try the open dialog. {Fichier} I can move in the dialog without
any problems with arrow keys {Image Documents} {Image, Image Documents}
{Image Image Musique} {Image Images} I can see and browse in the various
items, know what they have, and so there is a full interaction between
all the items and between the user, and between... the user and the
application.  {Bouton. Fichier.} {Choisir Tous les fichiers} {Type de
fichier} {Lecture seule case à cocher non cochée} {Annuler bouton}
{Ouvrir bouton}.  So, to show you the situation now, the focus is the
main thing important.  And it's important that the focus... to be able
to know where is it, and what information is a label.  And here we can
say that every information is accessible. {Nom de fichier} {Indiquer
un nom de fichier} {Emplacement. Text}.  So we have several kinds of
information, we have one information to tell us the contents and the
object, for example "Enter a file name", or "Open", when we are here,
for example.  {Fichier menu} {Nouveau menu} {Ouvrir point de suspension}
We know, for example here, that the focus is on open command and Orca
says also the characteristic of the command, so we know, for example,
that it's a command which generates a dialog.  {Nouveau menu} Here we
know that it's a command which generates a submenu, so there is the
contents, and there is the characteristic of the command, the behavior
of the command.

Well, so it shows today, that in the free software, I think today there
are some things which stay usable of course, for people.  However, when
we see the recent evolutions of the graphical user interfaces today,
we can say that there is some progress to do, and there is... we have
to stay very careful, because things are changing, things are becoming
very visual, and it's of course very important.  So that's the... free
software could be compliant with the freedom to, to, for the user, to
run the application, and so that every user can run the application,
and can have benefit with this freedom.  Of course it's important to be
careful with this question of accessibility, and this question of...
because the risk if don't that, is that some users will say, well,
I prefer using Mac, MacOS, like iPhone, because at least here I'm
free to use my computer.  Of course, the free software has got a free
license, but at least I can do everything, and so I'm free to use my
computer, whereas with free software, such as Linux, such as GNU/Linux,
and such as the Hurd, GNU/Hurd for example, I can not, because most
applications are not acccessible, and have a lot of problems.  And for
lambda users, of course, the usability is absolutely essential.  For
people such as you, and such as I, it's not so much problematic, because
we can use alternatives, we can use command line applications, or other
applications which could represent a workaround, so it's not a problem.
However, for lambda users, and I think free software is today for all
of our society, because the GNU project is a society project.  So if
GNU project is a society project, it's for everybody, and if it wants
to be for everybody, of course the applications that it produces should
be accessible, and it's probably the main thing we have to be careful
today.

Well, if you have questions about all that, or if you want me to show
you something, or some manipulation, or some, some tweaks, of course
don't hesitate, and I'll be happy to, yeah.

[Slide 15]

Okay, so, so as Jean-Philippe said, this is all about freedom #0.  So,
freedom #0 is a freedom to run the program, for any purpose.  But now
what about being *able* to use the program?  We discussed with Richard
Stallman about this, and he said that "yes, accessibility is a desirable
feature".  Is it only desirable?  Shouldn't we make that a priority?  He
also said: "well, this is free software, you can modify it, and then you
will have the feature."  That can not happen.  I will explain more in a
few slides.

[Slide 16]

It's actually a question of freedom.  Is it a legal freedom, freedom
#0?  Or is it a technical freedom?  Or is it about people, being able to
use the software?  In the past thirty years of GNU, we have pretty much
succeeded on the legal and technical aspects of freedom #0.  But now, we
see that it's not so easy, and maybe we need to focus on the people, and
usability for everybody.

[Slide 17]

Interestingly, in last november, Vint Cerf wrote an edito in the
Communications of the ACM, whose title was "Why is acccessibility so
hard?"  That was huge, in that, here somebody like Vint Cerf, shows the
problem in the Communications of the ACM, [and it was at] the top [XXX]
text of the communication, so this was huge, and it's also frightening,
because Vint Cerf is somebody who, basically, invented the Internet,
with a really bright vision of what can, of how to do it, etc.  And on
this, he has a few ideas, but mostly he doesn't know.  So with friends
of mine, we have been working on this kind of issue for, like, ten
years, and we have some answers to this thing.  But mostly it's not
about techincal things, it's mostly about integration and, a few things
I would like to discuss with you.

[Slide 18]

So, first, it's a question of priority.  It's a bit like
internationalization, actually.  As I've understood,
internationalization, in the GNU project, is a "should" in the Coding
Standards.  And on [integrating of] a project [into] the GNU project,
it's almost a must. If you don't have [internationalization], you have
to explain why [not].  Accessibility should probably have this kind of
status.  Of course we have to document that in the coding standards.
I would say that, at least it should be a "should" ; it could even
be a "must" in that, all applications, GNU applications, should be
technically accessible.  Which is not really hard: you use gtk, you are
a textmode application, then you are technically accessible.  Being
really usable is another question, but at least, technically, it works.
So it's a question of making it a priority.

[Slide 19]

Now it's a question of doing it.  Because of course, OK, let's make
the application accessible.  The problem is that people concerned with
accessible things, it's just a small fraction of the population.  They
already have a hard time using computers.  So modify an application,
like, I don't know, OpenOffice, it's really too difficult.  And so
finally, people with both disabilities and the programming skills
to modify the software for everybody else who has the same kind of
disability, that won't work, because the probability of finding somebody
like this is below one person, so that means nobody actually.  Well,
you can find people with awareness of the issue and programming skills,
there are some, but it's also very scarse.  So the sentence "This is
free software, you can modify it" doesn't actually help, that doesn't
work.

So for me it's clear that the support for accessibility has to be
integrated and maintained by the maintainers themselves.  The tiny
accessibility community can not modify all the software in the world,
that's not possible.

[Slide 20]

Now, the question is "Ok, I make my application accessible, how do I
do it?". So as we have seen, there are extremely diverse needs, so we
can not do everything for all kinds of disabilities.  We have seen that
there are some generic ways of doing this, which is already supported by
the toolkit you are using.  But then you still have some work to do to
at least, build your applications logically, so that the screen reader
can find out how the thing is built.  And so I said, make accessible
applications from the start, structured logically, and that will work
quite nicely.  And actually, this is a good thing, to take the time to
do things in a good way, because overall, you will have a good design,
which will make the thing more maintainable.  And even for all users,
it's good to have a good contrast, to be able to change the colors,
etc., to have the tab in the dialog box in a nice order, etc.

[Slide 21]

So, for me it's a question of making accessibility accessible.  That is,
"how to make accessible applications?", this is a communication between
a very few number of people to... everybody, all the developers.  So
very few to many.  So how to do that?

I'm not sure...  Well, we can document.  There is documentation already.
We have a HOWTO which is quite old but completely valid nowadays,
but it's mostly unknown.  Almost nobody knows about it.

So should we make talks at conferences?  Probably.

Integrate into standard procedures?  I believe that's one of the
important things, to make sure that everybody, at least at some point,
sees the thing, and gets interest in it, just because he is forced to,
at least, to make... to integrate the software into the GNU project, for
instance.  For instance in Debian, for the Debian Installer, we have
documented the way to test for braille support, and this is among the
things that the maintaining team uses when they release something.  So
it's integrated into the release process.  So, for testing, actually
usually you don't need a special kind of hardware.  Of course, the kind
of testing you will do is quite basic, but this is already a really good
thing, because at least the basic things work, and technically it works,
then the details can be handled.

[Slide 22]

Just a point on the side, you all know that, when you get a bug report
"This is not working", it takes a lot of patience to get the information
etc.  When you have disability in the middle, it's even more difficult,
because the user isn't even aware of what he is supposed to see.  And
the developer is not even aware of how he is supposed to see that,
because he is not at ease with the kind of software that Jean-Philippe
has shown.  So the discussion is really difficult.  So, patience,
discussion, maybe finding some intermediary who understands both sides.
Of course, this kind of people is scarce, I'm not really sure how to
deal with this.

[Slide 23]

So, ideally we should have accessibility everywhere, that is when you go
to the library, the airport, the university, etc. you sit down, and use
the computer.  You don't want to have to ask the administrator "Well,
please install this software and configure, so I can use the computer."
Well, first because the administrator has no clue how to do that, and
the user doesn't want to have to find out how to reach him, and wait for
the thing to happen.  So it should just be installed by default, ready
for use.  Ready to be triggered, whatever way you can have, shortcuts,
plugging a USB key, whatever.  But that means a really close integration
into the existing system.

This is something that we managed to achieve in the Debian Installer:
when you plug a braille device, then the installer starts the braille
screen reading.  And the same for speech synthesis, you press 's'
Enter, and then you have speech.  It took like two years, to get this.
Because integration is hard, you have to make compromises[, discuss].
In the end, now it is part of the process of the release of the Debian
Installer, so it's done, [and it's] the maintainers of the Debian
Installer, who will maintain that.  So that's, I believe, one way to
manage to have things happening, and keeping working.

[Slide 24]

So what to do?  I don't know...  There is a mailing list, actually,
which had some mails some time ago, then the discussions petered out...
There was that flame about proprietary speech syntheses vs free ones, we
have seen... we have heard what it looks like.  Maybe we should revive it
and discuss?

At least, what's sure is, raising awareness here and there, document
things, integrate into whatever exists, because it's really a
transversal issue.

[Slide 25]

And so now, I would like to discuss with you.  This is just a summary:
we want accessibility everywhere, there's a question of making it a
priority, anyway it benefits a bit everybody in the end, so yeah, let's
do it, but who will do it, I've said, it should be maintainers, so the
question is, how to make that in the end, it is a question of making
accessibility accessible to everybody.  There is the problem of
communication between developer and user.  But in the end, it's for
freedom #0, so OK, what should we do now?

So there is the microphone, so people can talk.

00:45:17
{{Andreas Enge}}{Are these accessibility features available across GTK
and KDE applications at the same time, or do you have to decide for one
kind of the desktop?}

No, it's at the same time.  The accessibility bus is the same for both.
They *managed* to agree on that.  It took like 5 years...

00:45:42
{{John Darrington}}{Well, on the question of whether you should revive
the accessibility mailing list. My opinion, my very inexpert opinion
is, I think, if you want to follow your goal of making accessible
applications rather than making an application accessible, perhaps we
should *not*, instead we should propose discussions on the main mailing
list?}

Yeah, I agree, putting discussions on the side means that it doesn't go
through the rest.  Yes, this a danger, really, there are a lot of, well,
debian, redhat, ubuntu, etc., they all have an accessibility mailing
list, that's a way that they have their corner where they discuss, and
it doesn't go on the other lists.  Perhaps, yeah.

00:46:38
{{JD}}{And the other thing I've actually tried occasionally on myself
[XXX], is: hey, guys, just try when you get the time, just use your
machine blindfolded, and see where you go...  Try out orca, and try hard
to..., I mean, stay, whatever, with the eyes shut.}

That doesn't work so well with geeks, because geeks are able to type
without looking at their keyboard, but yeah :)

00:47:09
{{JD}}{Yeah, to type, but otherwise, you... to, say... interpret
what's coming back.  Yeah, it's an idea, you get some... you get some
interesting... problems, from that.}

00:47:39
{{José Marchesi}}{[...] for the agenda for tomorrow for the assembly}

Yeah, we can discuss about it tomorrow, yeah.

00:47:44
{{José Marchesi}}{and not only discuss, but also if you have an
interest for working on it, to prepare a first draft, of what you
would like to see in the Standards, maybe also the maintainer's guide,
that doesn't mention accessibility. [...] And the evaluation form,
exactly. We can discuss about it tomorrow.}

00:48:08
{{Brandon Invergo}}{Yeah, so I'm interested.  I think the only way it's
going to happen, is a small group has to form, and they just have to do
it, basically.  You know, I mean I think the advisor council will agree
to it when it's done, I don't think RMS will argue against it, but if
it's done, what he gonna say? [...] Exactly, but there is, I think,
the top [XXX] thing would be updating the Standards document, so maybe
just writing a whole chapter on accessibility, updating possibly the
maintainer's document, to include this information.  And then we just
have to figure out, so, in the evaluation form, we have to check that
the project uses gtk, so then when that is not, whether it uses atk or
any other form of accessibility, and it's almost impossible that a new
project that doesn't use gtk for the graphical user interface will get
accepted, almost impossible. So, I mean it's a very small step in that
direction, and nevertheless it needs to be done!}  At least to raise the
awareness.  {Exactly, but I think if you have this, if you have a team
that gets this thing ready, who is gonna say "no"?}

[...]

Yeah, I will work on a draft, yeah, a few points.  We already have the
same problem in Debian, so I already thought about this in Debian, so...

00:49:35
{{BI}}{And then the team obviously will still be helpful to, when individual
packages need to make their changes, then someone will go to say "I have
no idea how to do this".}

But the resource is scarce, really scarce, but yes!

00:49:48
{{BI}}{Yeah, no, I understand...  I'm not saying that the group would
have to implement it for them, but someone to ask whether this is
working, are we doing this... what are we missing, maybe we didn't think
of a particular problem that's in the software...}

But I mean we have to teach some other people also. 

00:50:04
{{BI}}{Of course, of course.  You are not going to actually do the
development on their behalf, you just have the maintainers to do it. But
I think it will help, to just give a info, "this is how you do
it".  And answer a few questions.}

00:50:27
{{Christopher Dimech}}{I want to make two comments on this, because I
tried to use, I don't have disability, but I tried to use Orca, and it's
almost impossible to follow.  I think one thing to realize, so this
is my second point, is, the good thing to realize is the benefit that
people without disabilities can have with this technology.  I've tried
to use technology for people with disabilities like that, to increase
productivity, for people with no disabilities at all.  Especially when
I have to go through for example publication, research publication,
for the last ten years, during a week-end.  If I have to go, to read
through a lot of material that might not be relevant for me, it's a lot
of waste of time.  So I can spend like three days trying to read five
papers, and five [XXX].  So I would like to listen to the text file, so
I convert all my papers in text file, to be able to listen whilst I'm
doing something else.  And that saves me a lot of time.  So if we can
get people that do not have any disability, but to see how we can also
improve our performance, and I think that would be very useful.}

Well, one interesting thing is, we have some very good speech synthesis
which is almost free, that's the one that google has put on the Android.
Why?  Because it benefits everybody.  When an accessibility technology
becomes broadly interesting, then yes, it actually happens.

00:52:30
{{BI}}{We have a speech synthesis program, and I think it's GNU speech,
but I don't know if it's used for accessibility, I think.  There's no,
say, a research project.}  I don't know that one. { And it hasn't seen
a release in a while, but...  Sorry?  No, no, not speex, that's an
codec.  No, I think it's speech, GNU speech, yeah.  So, I don't know if
it's usable, I've just seen it.  Maybe that's just a basis of a speech
synthesis.}  Probably it's just a matter of plugging it into Orca.

00:53:09
{{JD}}{Is there a group that you know of, that is an expert on ATK, and
can give advice on it?  Because I couldn't find any a few years ago,
actually.}  Well, it should be the gnome accessibility team.  {Yeah,
yeah.  I think I tried that, but didn't get much... response, you know.}
The documentation is not so good.  {Yeah.. Yeah...  Anyway that was a
problem that I had, I couldn't work out how ATK was supposed to be used,
and some instances.}

One of the issue is that gnome is mostly the only user of ATK, so they
don't necessarily care about documenting it, since... almost nobody else
uses it. {But you know, they are encouraging people who have their own
widgets. When you are writing a GTK application, sometimes you have to
write a custom widget, and when it's anything more than an extension of
a standard widget, then you... yes, you have to write the necessary ATK
interfaces, and I couldn't work out how I was supposed to do it.}

00:54:24
{{Ludovic Courtès}}{A slightly more technical question, I think
the audience share is biased towards command line and programming
interfaces, is there any particular recommandation that would be
made, or?}  Say it again? I couldn't catch...  {I think most of us are
biaised towards command line interfaces, and so is there any particular
recommandation you'd make for accessibility?}

Oh, for command-line interfaces?  {Yeah} Usually, when it's just "I
type a command, I get an output", that's completely fine.  Except
that with speech it's not necessarily so easy.  For ncurses-based
text applications, then you have the whole structure of the screen.
Technically it's accessible, because it's just text.  One important
thing to do is to bring the hardware cursor where you are working.  For
instance, in mutt, by default, the selected line is just a highlight,
and the cursor is at the top, the corner. [...] Sorry? mutt, the mail
application.  And so, the screen reader doesn't know where it should go,
and so, there is a patch, to just bring the cursor on the line which
is currently selected, and it becomes a lot more usable.  So it's this
kind of detail, which is useful.  There are some guidelines on my own
website, but also the accessibility HOWTOs.

00:55:56
{{LC}}{And, like for instance, Jean-Philippe, do you use command line
applications?  Could you make a short demo, just to give an idea of how
it works?  If it's not too difficult.}

{{JPM}}{Yeah, I use... I use text applications, I...  To be honest, the
distribution I'm using today is a distribution I reinstalled one week
ago [giggle].  So far I used Linux From Scratch, and I use essentially
command line applications, but Vinux has a command line interface, so we
can use it...}

[Login incorrect]

So you can hear that it is speaking what is on the text console,
already.

[Login]

Yeah, it's a french accent, and speech syntheses in french are horrible.

[Login] [v i n u x]
[Last login]

00:58:09
{{JPM}}{Today, we can use the terminal, the command line, two ways.
The first is through a kernel module which is speakup, which enables
to connect what's output from the kernel to the speech synthesizers,
so it can be espeak, or another speech synthesizer, only we have to...
we need some connector.  Second way, we can use Emacs, eh yeah, Emacs
[giggle].  Because there is a module which is speech-el which enables
to have the whole buffer, for example when you use the shell mode.  In
the shell mode you have all the buffer which is available for reading.
And so you can enter the commands from the keyboard of course, as when
you do that then, you can read the information, because the Emacs cursor
have the same behavior as a classical focus.  So even as is it is the
information.  So we can easily use the text command, because the task
for the screen reader, in braille or in speech synthesizer, it's easier
than the graphical user interface.  So it's easier to use the console
for this reason.}

[sudo brltty]
[BRLTTY]
[sudo killall brltty] [ring down tune]
[sudo brltty]
[BRLTTY]
[sudo killall brltty] [ring down tune]
[sudo brltty -b eu...]
[BRLTTY] [ring up tune]

{{ST}}{So he will enable a feature which shows you what he is reading on
his device, so you don't have to see what's happening here, you'll just
see what he's reading.  We just need to find it again...  Well, in the
meanwhile, maybe people have comments or questions...}

01:01:27
{{Y}}{Does not the logical programming thing be also linked to the thing
of semantic development that we will... that we see in web development,
and all the thing of semantic computing? Like... } I'm not sure what
you mean by semantic computing? { The thing to make things semantic
instead of graphic, or text row, like in web...  A thing of factorizing
interfaces, is like that, ala internationalization.}

All the usual software engineering recommandations, are usually in the
good way, that is factorize your code, put your code into libraries,
so that you can have both a text version, and a graphical version.
And what you said, indeed, one of the important thing, when you are
designing a graphical interface: don't make a two dimension design,
make a logical design, a semantic design, actually.  Because then,
the structure, the semantic, and a screen reader will be able to find
an order in which speaking. {Because the fact is, here, in the TTY
it's... it isn't really semantic, because as we see, then the speech
synthesizer thinks that "Login" is a french word.  In html, there is
not this problem, because all elements have a lang attribute.}  Yeah in
documents, and on the web, quite you often you can find the attribute
that will tell which language it is, and then switch the synthesizer.
Here, the text console doesn't have this kind of information, and that's
why you don't have the language.  But also, you have all kinds of
information which is lost that is, which text is actually new, things
like this.  Ideally we should have a lot of information which is kept
along it, but...  I don't think that might happen on the text console.
[...] In Emacs, however, you have the information, and that's one of the
reason why emacspeak does work which well.

01:04:26
{{JPM}}{So, well, I've enabled the feature BRLTTY, which is the
screenreader which enables to have some braille, to take the information
which is available in /dev/vcsa and which goes to the braille driver,
braille display through some driver.  So, as you see, with the gray
rectangle you have on the screen, it's the place where the braille
display is located, so the braille display is able to display, to show
a half of a line in the screen. That's to say about fourty characters.
So, for example, in the line you are seeing, you see that I only see
one part of the file name.  I don't see the whole file name, because
it's larger than half a line, it's, well, about fifty characters.  So
I need, to have the remaining of the line, to press a key and to make
change the contents of the braille display, so that I can access to
all the information.  And it shows that the braille display is really
bidimensional.  So we only see a part of the screen, and to see all
the screen, we don't have a global sight, but we need to browse in the
screen, from top to bottom, and from left to right, so that we get the
whole content of the screen.

So I try some editor, nano, where you can see there is a difference
between the focus, which is here, and, well.  So on the braille display,
there is what I'm writing [I'm doing some test], and there is where is
located the cursor.  But if I want to have the whole information, on the
places where the cursor can not go, for example at the bottom of the
screen where there are the shortcuts which are mentioned, I have to use
other keys, to move only the view, and not the write cursor, because the
focus is unable to move here.  And for that, I have some keys on the
braille display, which enable me to see the other parts of the screen.

Now, we're going to see that the window, the braille window, *follows*
the cursor.  For example, if I write a long text, it will follow...
the window, the braille window, follows the cursor. [I'm present on
the GHM and I'm happy to see that there're a lot of GNU devs] You see
the braille window really, really, follows the focus.  There is the
possibility to stop this tracking, this track.  However, by default,
there is this track, and it allows to know permanently where is the
cursor, where is the focus, and what happens on the focus.}

{{ST}}{And also, an interesting thing is that if I want to show
something to Jean-Philippe, I just need to move the cursor there, and
he will see that.  So that's the way you can work with somebody else,
because it's the same software, and we have the same view of it.}

{{JPM}}{It also works with Orca in the graphical user interface.  It
works also, it's a little different, it works a little differently,
but there is a braille monitor, which enables to see in a part of
the screen, top left, top right of the screen, err, top left, yes,
what is contained in the... the content of the braille display.  We
see very clearly, for example, the name of the application, and the
description, for example: new, submenu, to see that it describes the
name of item, and what is the item, for example, a submenu.  And we see
all this information which has displayed by the screen reader, which
has displayed in the braille display, and which are displayed in this
braille monitor, to show also how it works.  So, in the test, even
if you don't have the hardware with you, you can do some tests, it's
possible with Orca to do that, thanks to the braille monitor.}

01:10:10
{{JD}}{Could we, just I'm very interested, could we just have a look at
the hardware?}

{{JPM}}{Well, it's a very old blind display, it's a very old braille
display, which is presented this way.  There is here, you can read here,
there are fourty characters.  There are several dimensions possible
today, we have braille displays which have twelve characters, twenty
characters, thirty-two, fourty, or until eighty characters.  Eighty
characters of course it's difficult to take that, it's very large.
However, mine is only fourty characters.  So we read the information
here, it's fourty braille characters, so on the braille you have eight
points, so eight points are two columns of four points, and in these two
columns, it's a bit some byte, according to the bit which is enabled or
disabled, you have a sign or another sign.  As to write, it's a write
which is done in braille also, with the white keys you have here.  There
are eight keys, because the braille uses eight dots.  And so with these
eight dots you can write all the ASCII table, and all the matching.
{{JD}}{And so this interfaces with the laptop} Yeah, it interfaces
with the laptop because, it's connected here from a serial port, but
you today the modern displays are connected by USB, and brltty has the
drivers to communicate between the computer, and especially with the
specifications of the braille display.  {{JD}}{So you have a special
software installed on thePC?}  {{ST}}{Yeah, the special software is on
the PC.  And interestingly, manufacturers are more and more providing
the information, or even providing us the hardware just for a few weeks,
to implement the driver.}

01:12:30
{{Z}}{Do you know exactly how it works for languages which are not based
on latin characters, for instance chinese, how they can, for blind
people in chinese how they can read?}

{{ST}}{I don't know if you know, Jean-Philippe?}

{{JPM}}{As I don't speak chinese, I don't know.  However, I guess,
because braille stays basic: it's only...  So I think it's a system of
bindings, where you have a match between some [XXX], which is mapped to
some representation, and I think chinese languages work like that.  At
least, when you talk about computing.}

01:13:27
{{JD}}{Again, my very inexpert opinion is that I would have thought that
appplications like Orca would be a lot easier to implement with chinese
text than latin text, because of course chinese is... it's one character
per word, rather than latin languages where it's one character per...
you know}

{{ST}}{Yes, but it has different pronunciations for the same character,
and sometimes it depends on the meaning, and the computer is completely
lost.}

{{JD}}{Yeah, well...  Ok, yeah, the rules...  You've got a lot more
characters in the chinese... in the chinese character set than english,
[XXX] would have made it easier}

01:14:13
{{Armony Altinier}}{Actually, in Chinese, you use the computer with the
Latin characters, so... Because before they used to use a typewriter,
and there were looots of characters, like two hundred and fourteen.  But
now it is based on the way it's pronounced, so it's an occidental way.}

01:14:54
{{CD}}{I would like also to have your opinion about the... a bit more
natural way of speech.  Because sometimes I find it very hard to follow
on, sometimes I really need to concentrate very hard, and also, you
know... there is a big separation between words, it's really quite
difficult.  Do you have any opinion about this thing?}

{{JPM}}{Well, the thing is, it's a question of habit.  To be honest with
you, most blind people use in their daily life the speech synthesizer
essentially very, very, very quickly, the speak rate is very high.
Well, it's a question of habit.  Of course, I have the same feel,
because I'm rather a braille reader.  So when I heard the speech
synthesizer, I wasn't very pleased and I'm not pleased today, because
I don't like very much this kind of reading of the text.  However,
now, because I work a lot to document, and to have new basic users to
use free software, so I try to understand and to come in the speech
synthesizer logic, and I have to say that even espeak, which is a
difficult speech synthesizer to hear, now, I manage to understand it,
and it's acceptable for me also.  So, when you have the habit, you can
understand the screen, know what's there is written on the screen, and
you become performant.}

01:17:03
{{AA}}}{Actually, Jean-Philippe is not the most representative, because
he uses computers everyday, and is a geek, so...  But there are people
who don't... who are being blind maybe at fifty, after an accident, and
they will never hear this... [XXX] as fast as Jean-Philippe do.  But
even developers, blind developers who are... really at ease with these
softwares... when we compare, it's more difficult than for us, anyway.
Even if they're really happy with speech synthesizers.  So when it's not
accessible, it's just a way to make it smaller.  So, yes, even when it's
accessible it's very hard.}

{{ST}}{Well, thanks a lot for participating, I guess we have to stop, we're
quite late... Thanks.}
