[Blindmath] Onlist: Re: [program-java] Announcing JWin - a programfor installing the Java Access Bridge on Windows

Richard Baldwin baldwin at dickbaldwin.com
Sun Jan 1 15:43:16 UTC 2012


Hi Michael,

Like you, I also believe that getting the word out regarding accessibility
issues with Java Swing might help persuade Oracle, IBM, or a combination of
the two to get together and resolve the issue. Therefore, I am going to
return this message back onto a couple of lists in hopes that it will
somehow make its way to folks at Oracle and IBM who are responsible for
solving the current accessibility problems.

Let me give you a concrete example of the situation that professors like
myself face regarding accessibility for blind and visually impaired
students.

I teach three sequential OOP courses using Java. The first two courses use
the following textbook exclusively and the the third course uses this
textbook in combination with another textbook:

http://www.pearsonhighered.com/educator/academic/product/0,3110,0131496980,00.html

As is most often the case, this textbook was chosen because it is an
outstanding textbook for sighted students.

This textbook includes a CD that contains an outstanding Java multimedia
library covering images, audio, video, and some other topics as well. The
library is completely written around Swing, and is therefore not accessible
to blind students. Obviously many of the images that one might produce with
the library wouldn't be accessible under any circumstance. However, many of
the images could be embossed and made accessible if Swing were accessible.

For example, one of the programs that I assign is to write a graphic edge
detector program using a Swing JSlider component in a Swing JFrame object
to adjust the edge detection threshold. If Swing were accessible, a blind
student could write the program, load an image file, adjust the slider,
take a screen shot, emboss the screen shot, and get some feel for what
graphic edge detection means. By repeating this process for different
slider values, the student could get a feel for the the impact of the
edge-detection threshold.

With proper adjustment of the threshold, many digital images would produce
 meaningful embossed images, which itself might be a useful tool for a
blind person.

The edge-detected image is also displayed in a Swing JFrame object using
methods from the library. If a JFrame could be easily and reliably
integrated into an SWT program, I could redesign the problem to have the
student write the GUI using SWT components and integrate the display into
the SWT program. However, whether it would be reasonable to expect students
to learn to program GUIs using both Swing and SWT in a single semester is
open to question.

Another possible assignment involves writing an audio spectrum analyzer
making heavy use of the classes and methods from the library. If Swing were
accessible, a blind student could write the program, speak or whistle into
the microphone, capture and emboss a screen shot of the analyzer output,
and possibly understand a little about digital signal processing and audio
spectrum analysis. That is a topic that might be of particular interesting
to a blind student.

And the list goes on and on. However, for me to pull that off, it would be
necessary for me to completely rewrite the entire library using SWT instead
of Swing. That would not only require a lot of effort to rewrite the GUIs,
but would also require the integration of multithreaded Java code into SWT,
which I have yet to conquer. After that, it would require me to essentially
rewrite the entire textbook substituting SWT GUI images for Swing GUI
images and substituting SWT code for Swing code. Since someone else owns
the copyright for the book, that would not be possible even if I had time
available to do it.

To my knowledge, a comparable textbook and class library written around SWT
does not exist.

My point is simply that by making SWT only marginally compatible with
Swing, IBM has precluded the use of many existing libraries for a variety
of purposes. The impact of precluding the use of those libraries goes much
deeper than the GUI level. That impact penetrates all the way into the
information processing layers in the libraries that lie behind the GUIs.
These limitations apply not only to the educational environment, but also
to the workplace as well, and probably have a negative impact on the
marketability of blind programmers.

Along those same lines, by not making Swing accessible, Sun/Oracle has
caused Java to be marginal as a programming language for blind students and
blind programmers. This also probably has a negative impact on the
marketability of blind programmers.

Presumably, Oracle could still correct the situation from their end by
making Swing accessible, and I wish that they would. In my opinion, that
would be the best solution and would eliminate the need to use SWT for
accessibility.

Because of apparent multithreading conflicts (or at least multithreading
difficulties), it might be more difficult for IBM to correct the situation
from their end and provide for smooth integration of Swing into SWT, but it
would be good if they did, especially if Swing continues to be inaccessible.

Dick Baldwin
-- 
Richard G. Baldwin (Dick Baldwin)
Home of Baldwin's on-line Java Tutorials
http://www.DickBaldwin.com

Professor of Computer Information Technology
Austin Community College
(512) 223-4758
mailto:Baldwin at DickBaldwin.com
http://www.austincc.edu/baldwin/



More information about the BlindMath mailing list