Open Source Accessibility - making programs and content available to everyone

By Steve Lee

Accessibility means ensuring software and content is available to people with disabilities such as restricted movement,  blindness or learning difficulties and also for those with age related deteriorations like low vision or arthritis. Accessibility also means good universal design so that access is not solely dependent on just screen and mouse for control and keyboard for text input; something that can benefit a wide audience and in circumstances other than at a desktop PC (e.g mobile, loud noise, poor visibility).

Accessibility is an important part of the open source world which offers the possibility of low cost alternatives to pricey proprietary equipment and a chance for users to get involved in contributing to the tools they use. The following is a whistle stop tour of the field and some of the projects and communities involved in open accessibility.

The Linux desktops and GNOME in particular include features that allow a user to customise their experience to better suit their individual needs. Common options include those to use the numeric key pad to control the pointer, mouse options such as reversing the buttons and automatic click on dwelling over an item, high contrast colour schemes and large font sizes.

Interface conventions also exist that improve the accessibility of programs when followed by developers. Simple attention to details such such as ensuring full keyboard access to a program or web site make it usable by more people but often get overlooked.

More complex features come under the banner of "assistive technology" which are specific programs created to convert between a program's graphical user interface and other ways of access. Amongst these are On Screen Keyboards like GOK and SAW which allow text entry with only pointer access or a couple of simple switches connected to the computer. Screen readers such as NVDA and Orca allow access with only a keyboard and speak the screen content using synthetic speech. Head and eye tracking using a web cam (MouseTrap) is being develop and highly innovative programs exist such as Dasher which allows text entry using only a couple of distinct input gestures through various input devices. Other useful technologies include magnification and speech input.

Technically the assisitive technologies need special access to program user interfaces so they can monitor the state and control it accordingly. This is the realm of the so called Accessibility APIs and GNOME has a well developed a solution which also happens to be very useful for automatically testing programs using a form of "remote control".

The so called "web 2.0" proliferation of rich internet applications, such as Moodle or Gmail, which behave like desktop applications, mean that web developer's and web browsers need to provide similar support to that available on desktops. Fortunately the W3C are adding new standards to their existing accessibility work that allows this to happen (i.e WAI ARIA). Open source projects like Firefox and screen readers such as NVDA are at the forefront of support for these breaking technologies.

Mozilla's Firefox browser has many accessibility features, extensions and themes that help make the web more accessible as described on the AccessFirefox.org community site. Amongst the interesting innovations is the webvisum extension which provides CAPTCHA solving and community tagging for visually impaired users. Various accessibility tools also enable web developers to ensure their sites and web applications are accessible.

While some open source accessibility programs are separate projects there are also a couple of larger communities actively working on the big picture. Most notable are the GNOME and Mozilla accessibility communities, both of which are actively participating with other projects and products to develop new accessibility solutions.

An interesting and easy way to sample open source accessibility programs is to download the AccessApps USB memory stick from RSC Scotland N & E which comes loaded with programs that can be run on a Windows PC without any installing (some of the best general open source programs are also included). This not only showcases the programs but allows user to evaluate the options as well as taking them from PC to PC.

You can find out more at the OATSoft community which includes many examples of open source and free accessibility programs and the Full Measure website provides some introductory articles and programs. Python Powered accessibility was written with developers in mind but provides a introduction to various disabilities and accessibility options. Finally Moodle, one of the most popular open source educational tools and communities, has its own accessibility forum which you can access as a 'guest'.