Re: Better Speech Reading

  • From: Veli-Pekka Tätilä <vtatila@xxxxxxxxxxxxxxxxxxxx>
  • To: programmingblind@xxxxxxxxxxxxx
  • Date: Sun, 14 Oct 2007 19:58:53 +0300

Hi Matthew,
I see three big problems with your idea.

1. Supernova has no such dictionary manager. any abbreviation processing
is a speech synth specific thing in Supernova.

2. You would have to manage these dictionaries on a per application and
per situation basis. You would have to switch files even within the same
app, depending on which language is being edited.

3. Most importantly, this kind of constant string replacing only works
for basic cases. In C:

char* i;

is a char pointer i, not char times i, which is what a straight
dictionary replacement would read. Many other languages are even more
context sensitive, notably Perl. IN Perl, for instance, the asterisk has
quite a number of meanings:
multiplication, exponentiation if there are two, asterisk as a shell
wild card character, and asterisk as a greedy, or if followed by a
question mark, a non-greedy quantifier in regular expressions. Not to
mention asterisk meaning a type glob, asterisk as a delimiter in qq
strings, and various other oddities such as special variable names. A
straight dictionary replacement simply won't be subtle and context
sensitive enough, although it is certainly much better than nothing.
Which brings us to an important point, there should be no processing in
most string literals, even in interpreted mode.

I do confess I might use such replacements if SUpernova had them. As
with abbreviation processing, though, if chances are high that the
abbreviation expands to the wrong thing e.g. milliseconds DOS, then I
prefer to hear the unabbreviated, briefer form from a speech synth. Such
wrong guesses would not be a problem in programming, since the syntax of
the programming language must be programmatically understood, i.e.

With kind regards Veli-Pekka Tätilä (vtatila@xxxxxxxxxxxxxxxxxxxx)
Accessibility, game music, synthesizers and programming:

Matthew2007 wrote:
> HI all,
> for those who don't want to hear long strings of repetitive characters or
> even extraneous characters and only want to get to the meat and potatoes of
> the code, couldn't you simply use the jaws dictionary manager and similar
> manager in Window Eyes to change constant strings of characters and make the
> screen reader say something less verbose? For example, let's say I type out
> the alphabet as a b c d e f g H I j k l m n o p--you know the rest, I can
> use the dictionary manager and define this string of characters as
> "alphabet." As an added benefit, if I make any errors in writing this string
> of characters, jaws will read the entire alphabet rather than just saying
> the word, which means I must now go back into the string of characters and
> find where I made a mistake. This is fast, easy, and effective.
> I do see a downside as the dictionary manager might run out of room for
> entries.
> Matthew
> Matthew
> ---- Original Message -----
> From: "Marlon Brandão de Sousa" <splyt.lists@xxxxxxxxx>
> To: <programmingblind@xxxxxxxxxxxxx>
> Sent: Sunday, October 14, 2007 8:27 AM
> Subject: Re: The top three big problems: Better Speech Reading
> That's not controversial, in fact it might be of use to people in some
> situations. I like to hear semicolon because at the same time I am
> listening to code I am concentrated im understanding what that code
> does and such punctioation says me "hey, guy, remember that what's
> comming next is another statement" ..
> But it has to be optional and turned off by default because it is
> modifying the way the language is presented and this is dangerous in
> the seense that it will say a pretty different thing than what it is
> really written.
> If one chooses this presentation mode, they should know they're seeing
> something which is already pre interpreted for them, not the real
> stuff.
> Marlon
> 2007/10/14, Veli-Pekka Tätilä <vtatila@xxxxxxxxxxxxxxxxxxxx>:
> > Hi Marlon,
> > I quite understand your point of view. And certainly this should be
> > optional and I would never have a new programmer start out with all the
> > convenience, so having this as an optional extra would be the way to do
> > it, seeing that it is language specific anyway. But think the situation
> > in which you know the syntax.
> >
> > If you had someone read code over the phone or in an audio book, would
> > you have him or her read every parenthesis and every darn semicolon,
> > even those that are always part of the language syntax e.g. the boolean
> > expression in the if clause or empty parens in a method taking no
> > argument? Personally I hate the amount of redundancy, and if there's a
> > way to read code smarter, I'll definitely take that for browsing code.
> >
> > My point is that when I think of code I think ok we multiply x and y
> > divided by z. I don't think:
> > x star y slash z.
> > which is an artifact of the language syntax.
> >
> > But again, I do realize this is controvertial and open to debate.
> > And even as a proponent of this system, I'd say that I would have to try
> > it out first to see how well it could be made to work and how much
> > easier and briefer it would make reading code. Certainly, I could agree
> > on reding conventions with sighted folks, but getting them in an elegant
> > programmatically executable form might be non-trivial. Your words of
> > warning are appreciated.
> >
> > --
> > With kind regards Veli-Pekka Tätilä (vtatila@xxxxxxxxxxxxxxxxxxxx)
> > Accessibility, game music, synthesizers and programming:
> >
> >
> > Marlon Brandão de Sousa wrote:
> > >
> > > Hello,
> > > I think this is dangerous. I personally would not like to have a
> > > solution set this way, but I will give a hint which is not dependant
> > > on my personal preferenses.
> > > If you set reading this way, a new programmer would have trouble
> > > learning sintax. I won't discuss if this is or isn't good, but such
> > > aproach would be modifying the way the programming language is
> > > presented to the blind person. A sigted person will see a * sign, a
> > > blind would hear a multipily word.
> > > This kind of tools HAVE TO BE OPTIONAL, one have tthe right of reading
> > > the same thing a sighted person is seeing.
> > > Note that every other suggestions I gave doesn't modify the way the
> > > language is presented, as the suggestions of Velipeca do.
> > > Tools that will make navegation equivalent for blinds and sighted
> > > people can be implemented, tools that will arbitrarely modify the way
> > > the programming language are presented SHOULD be implemented at
> > > maximum as a set of optional tools, and not be turned on by default.
> > > Marlon
> > >
> > __________
> > View the list's information and change your settings at
> > //
> >
> >
> --
> When you say "I wrote a program that crashed Windows," people just
> stare at you blankly and say "Hey, I got those with the system, for
> free."
> Linus Torvalds
> __________
> View the list's information and change your settings at
> //
> __________ NOD32 2591 (20071014) Information __________
> This message was checked by NOD32 antivirus system.
> __________
> View the list's information and change your settings at
> //
View the list's information and change your settings at 

Other related posts: