10th September 2004 by Derek Kite

This Week...

Speedups in khtml javascript, Kate, Kmail and Kcminit. Macros and headers added to compile Kdelibs on win32. UI Recovery ToolKit (uirtk) improved. Support for building Smoke library on Mac OS X.
At the aKademy Conference there were two very interesting presentations on accessibility. The State of Unix Accessibility by Peter Korn (audio video), and Desktop Accessibility for Hackers by Aaron Leventhal (audio video). Peter Korn works for Sun Microsystems, as their Accessibility Architect, and is working with the Gnome project to make their desktop accessible. Aaron Leventhal works for IBM, and is working with the Mozilla project accessibility effort.

Both Peter Korn and Aaron Leventhal made the point that right now, Windows is the one and only accessibility solution. Apple is close, and there is progress in the free desktops Gnome and KDE. In most cases, people with a disability are helped by a specialist who configures the various hardware/software solutions necessary. Right now, they will set the person up with Windows. IBM and Sun are interested in this field because an accessible desktop opens markets with government and business who provide the assistive technologies for their workers.

But the Windows solutions are brittle. They watch for cursor blinks and position to figure out what is happening. Fragile hacks, and when a upgrade comes along, the software must be rewritten for it to work. There is a huge advantage in having an API based accessibility system, and as shown later in Peter Korn's presentation, there are opportunities to dramatically improve the experience of users. The code is available, so applications can be fixed, and the API's are being designed for accessibility.

Both presenters described various disabilities and solutions that match. A person may need assistance in typing, with sticky keys, or mechanisms to permit someone to type accurately when they have limited motor control. Maybe the person is color blind, needs high contrast, magnified, or low contrast screens. Then there are screen readers, braille readers, alternate input mechanisms and onscreen keyboards. Solutions range from hardware based to specialized software.

Aaron Leventhal made the point that an interface designed for accessibility will be a better interface for everyone. Keyboard shortcuts will work, tab orders and pane navigation will work. He said that the typewriter was invented for a blind person so he could write love letters. He illustrated the challenge with a screen showing an early Mozilla calendar. There were widgets that are show data in a visual context, making it difficult for a screen reader to use. Another example is an IM application that shows buddy online status by an icon. That information is necessary for the user, but it is presented in a way that is difficult to communicate by other means such as a screen reader.

The point was made that free and open source presents an ideal situation for people with disabilities. Peter Korn stated that the first solutions were designed by engineers who had a friend that needed some assistive technology. But when graphical user interfaces became common, the solutions became so complicated that it was necessary for companies to develop the technology. But with open source, developers can respond directly to the needs of disabled users. Especially with the support built in to the API's.

Peter Korn illustrated this point very powerfully when demonstrating GOK, Gnome Onscreen Keyboard. This demonstration is worth watching, as it illustrates both the challenges and solutions to accessibility. The keyboard, as you can imagine, is a graphical representation of a keyboard on screen, taking the top section of the screen. The bottom section is where the applications are displayed. The keyboard is used in a situation where a person is limited to pressing one button. A highlight bar scrolls down starting at the numbers, 'qwertyu...', then the next row. Say you want the letter h, so you would signal with your device when that row is highlighted. Then the highlight scrolls from left to right, allowing you to signal when it highlights h. Slow, but it allows a severely disabled person to type. Peter then demonstrated selecting an article from the Gnome help application. Imagine selecting by that method 'tab' 'tab' .... 'space' to select the article you want to read. Slow and difficult. A far better way is to grab the widgets from the window with focus, and allow selection by the same highlight scroll select method. Peter said that this is where we are not 3 years behind, but 3 years ahead of Windows, since that capability won't be available until Longhorn.

Imagine having a physical limitation where all you can do is look at something, moving your eyes or your head. Peter Korn demonstrated a Gnome application called Dasher that is designed to be used with pointer hardware attached to your head or a camera device that watches your eyes to see where you are looking. The application shows a center point with a rubber-band like line to the your focus point. Say you want to type the word 'accessibility'. Letters in a vertical column scroll slowly from right to left, so you look at 'a'. The same alphabet appears in that box, allowing you to select 'c'. Etc. Using this method people can enter text at 35 words per minute. Peter then showed how the application can grab the widgets from the window with focus, putting for example the menu selections in a column, allowing the user to select a menu item by simply looking at it. Again illustrating how API based accessibility can dramatically improve the user experience. This was a very powerful and moving demonstration.

Aaron Leventhal stated that he is looking for 5 users to start testing Mozilla accessibility. He stated with confidence that these users would become hooked by the development method, where they can communicate directly with the developer and see improvements quickly.

These presentations are worth watching. They made me want to start writing code. The vast majority of disabled people are unemployed, hence can't afford the expensive Windows solutions. This is where a developer can make a huge difference and measurably improve peoples lives.
The Digest is being redesigned, and I invite comments. Please let me know what you think.

Statistics

Commits 2086 by 198 developers, 199623 lines modified, 569 new files
Open Bugs 7452
Open Wishes 6965
Bugs Opened 328 in the last 7 days
Bugs Closed 212 in the last 7 days

Commit Summary

Module Commits
kde-i18n
588
 
kdepim
194
 
kdeextragear-2
142
 
kdeextragear-1
135
 
kdelibs
106
 
www
103
 
koffice
103
 
kdeextragear-3
102
 
kdebase
87
 
kdenonbeta
79
 
Lines Developer Commits
7271
 
Andrew Coles
122
 
3110
 
Gilles Caulier
106
 
4123
 
Pedro Morais
101
 
4511
 
David Faure
81
 
1751
 
Nicolas Goutte
63
 
1591
 
Mark Kretschmann
59
 
1343
 
Nicholas Nethercote
55
 
384
 
Stephan Binner
54
 
2171
 
Erik Kj
50
 
755
 
John Tapsell
37
 

Internationalization (i18n) Status

Language Percentage Complete
British English (en_GB)
100%
 
Portuguese (pt)
98.38%
 
Swedish (sv)
97.74%
 
Danish (da)
96.62%
 
Estonian (et)
96.37%
 
Spanish (es)
94.89%
 
Dutch (nl)
94.86%
 
Tamil (ta)
92.93%
 
Italian (it)
92.92%
 
Brazilian Portuguese (pt_BR)
92.38%
 

Bug Killers

Person Bugs Closed
Michael Jahn
41
 
Tom Albers
22
 
Mark Kretschmann
19
 
Stephan Kulow
13
 
Stephan Binner
11
 
David Faure
10
 
Albert Astals Cid
10
 
Tommi Tervo
10
 
Olivier Goffart
7
 
Nicolas Goutte
7
 

No commits found