[Accessibility] CSUN 2004 trip report

Peter Korn peter.korn at sun.com
Wed Apr 21 20:25:40 PDT 2004


Last month was the annual CSUN Conference on Technology and Persons with 
Disabilities.  Sun Microsystems highlighted accessibility solutions for 
computers running UNIX (such as the newly released Sun Java Desktop System, 
the Solaris operating environment, GNU/Linux, and other computer systems). A 
series of 5 sessions on Thursday hosted by Sun went into accessibility 
topics in depth, and a special guest from Oracle corporation demonstrated 
how he uses Gnopernicus daily on his GNU/Linux system as part of his job to 
develop and test software and web pages using Oracle's JDeveloper 10g (a 
large Java development tool).  A session on Friday given by members of the 
Accessibility Working Group of the Free Standards Group discussed the 
development of open and free standards for accessibility.  Visitors to Sun's 
booth could try all of the technologies demonstrated in the sessions, as 
well as see both JAWS and ZoomText supporting Java applications and 
StarOffice.  Many also signed up for the hands-on guided tours of the Sun 
Java Desktop using the Gnopernicus open source screen reader (shown with 
both BAUM and Alva Braille displays) and GOK dynamic on-screen keyboard 
(shown with both the Tash USB switches, the Madentec Tracker and Origin 
Instruments HeadMouse).

Below is a fairly detailed summary of each of the five sessions Sun hosted
on Thursday:

    o The first session Sun hosted was "The Accessible Sun Java(TM) Desktop
      System" - which detailed a compelling and accessible desktop
      alternative built on GNU/Linux with built-in assistive technologies.
      It was given by Peter Korn of Sun's accessibility team.

      Peter began with an overview of the Sun Java Desktop, noting that it
      is built on top of the open source GUN/Linux operating system, and
      uses the open source GNOME graphical environment.  Sun adds to that
      base the StarOffice application suite which reads & writes Microsoft
      Word, Excel, and PowerPoint files; the Mozilla web browser; the
      Evolution e-mail and calendaring application that can use Microsoft
      Exchange servers; an instant messaging application that supports all of
      the instant messaging systems; and of course a full Java platform
      environment - all for a remarkably affordable $100/year/desktop

      Peter showed what the Sun Java Desktop System looks like, with a
      Launch menu that will be familiar to users of the Windows Start menu,
      and many other elements that will be familiar to Windows users (such
      as the Accessories menu, desktop icons and the trash, and Network
      Places that supports Windows file sharing).  Peter also highlighted
      some of the many desktop applications that come with the Java Desktop
      System including PDF & Postscript viewers, the CD-player and sound
      recorder, a digital camera capture application, Macromedia Flash,
      Real Player, and a video conferencing application.

      Peter then demonstrated the accessibility features built into to the
      shipping Java Desktop System.  He first showed how the entire desktop
      was operable from the keyboard, launching applications, moving their
      windows, and navigating through complex applications.  He then
      demonstrated "AccessX" keyboard functionality (also known as the TRACE
      keyboard accessibility features): StickyKeys, RepeatKeys, SlowKeys,
      BounceKeys, and MouseKeys.  Finally he showed several of the desktop
      themes, including the high-contrast, low-contrast, and large-print
      themes for people with mild visual impairments.

      Peter noted that one of the key problems that schools and enterprises
      face today in deploying accessible desktops is the effective
      requirement of dedicating a system to classes of users with different
      disabilities.  He demonstrated an alternative hardware desktop
      solution from Sun that nicely addresses this issue: the SunRay
      Ultra-Thin network terminal.  He described SunRay as an inexpensive
      network appliance with little more intelligence (and no more state)
      than a telephone system handset: all of the action is in a server with
      the SunRay simply acting as a remote display and input/output
      system for the user.  Describing a typical work-day at Sun, he took
      his actual employee badge - which is also a JavaCard smart chip card -
      and inserted it into one of the SunRay terminals on stage.  He then
      logged into his Solaris GNOME desktop, and choose the high-contrast
      large-print theme setting.  Just as if he were moving to another
      Sun building down the street, he removed his badge, moved to another
      SunRay terminal (which he said could be in another building), and
      inserted it - and instantly saw his high-contrast large-print desktop
      running.  He said that because his session is running on a central,
      networked, Sun server - and not on a physical box on the desk in
      front of him - he had the freedom to move to any SunRay in any
      Sun building in Northern California (and later this year to any Sun
      building in North America!) and get his personal, customized desktop
      immediately.  He finished the SunRay demonstration by describing plans
      to support assistive technologies on SunRay, so that a screen reader
      user would have the same facility with SunRay as anyone else - without
      having to use only the special computer that has the screen reader

      Moving into the development realm, Peter switched to a recent build
      of the open source GNOME 2.6 beta desktop, to demonstrate the assistive
      technologies in development for inclusion in a future edition of the
      Sun Java Desktop System.  For people who are legally blind, Peter
      gave a brief demonstration of the Gnopernicus open-source screen reader
      and screen magnifier with Braille support.  He noted several of the key
      features, including support for over 50 Braille display, magnification
      to 16x with picture smoothing, and screen review functionality.  He
      urged attendees interested to learn more about Gnopernicus to return
      in the afternoon for an extended session on it.  Then for people with
      severe physical disabilities, Peter gave a brief demonstration of the
      GOK dynamic on-screen keyboard.  He showed that GOK is far more than
      a simple rendition of an alphanumeric keyboard on the screen, but
      makes use of the accessibility framework in the GNOME desktop to
      present a series of dynamic keyboards containing things like the
      current application's menus, toolbar, and dialog box items for much
      more rapid use by single-switch users.  He urged attendees interested
      to learn more about GOK to return in the afternoon for a dedicated
      session on it.

      Peter then discussed why Sun was leading the open source accessibility
      work in GNOME.  He talked about the four themes behind this work:
      (1) building accessibility in from the start (vs. bolting it on as an
      afterthought); (2) the evolution of screen access technologies from the
      original text console, through the GUI and off-screen models, to the
      approach Sun pioneered first with the Java platform and now in GNOME
      of direct access through supported programming interfaces; (3) Sun's
      proposal of a formal division of responsibility for accessibility:
      the job of the platform, of the application, and of assistive
      technologies; and (4) the idea that the platform, the accessibility
      infrastructure, and even the assistive technologies themselves can
      be open-source, which brings tremendous new opportunities to those
      developing accessibility technologies and the ultimate users of
      desktop computers.

      Peter noted that today users of accessible desktop computers face
      several problems, including the costs of specialized assistive
      technology, the need to dedicate systems for use by various (and
      different) user populations in public settings, that accessible
      systems today are very brittle (don't let a non-disabled user mess
      with it!), and that upgrades are frequent and expensive.  Peter then
      compared this to the Sun Java Desktop System: everything is built in
      at a great price, accessibility is an explicitly supported part
      of the design, and the assistive technology is delivered from the
      same vendor as all of the applications providing a single source for
      service & support.

      Peter asked, and then answered the question of who is using the Sun
      Java Desktop System today: the UK Office of Government Commerce
      is standardizing on it and the UK National Health service is deploying
      it on 800,000 desktops; and the China Standard Software company has
      adopted the Sun Java Desktop System and is deploying 500,000 to 1
      million  copies across China in 2004, the first installment on their
      bid to meet  a government mandate of 200 million open source desktops
      in China by the end of the decade.

      Peter also asked, and then answered the question of who is using
      GNU/Linux: the city of Munich has rejected Microsoft for Linux on
      14,000 desktops; the Brazilian government has decreed that all
      government desktops shall move to Linux; the South African government
      offices are to use Linux; and the Nigerian Ministry of Education
      has adopted Linux.

      Finally Peter ended the presentation with bonus demonstration, showing
      Dasher, an innovative assistive technology developed by the University
      of Cambridge that is optimized for eye-tracking and head-mouse systems.
      Dasher is available on for a number of desktop and palmtop systems,
      but when it is running on GNOME it takes advantage of the rich
      accessibility framework there to allow users direct control of all
      of their applications through the Dasher interface.

      For more information about the Sun accessibility effort, the GNOME
      open source desktop, the GNOME accessibility framework, the Sun
      Java Desktop System, and the SunRay Ultra-Thin client, please see
      the following web pages respectively:


    o The second session Sun hosted was "StarOffice 7 - the Accessible
      Office Suite" - which described and demonstrated this rich suite
      of accessible office applications that can read and write files
      from Microsoft Office,.  It was given by Peter Korn of Sun's
      accessibility team.

      Peter began with a history of StarOffice - that it was developed by
      the Germany company Star Division GmbH which Sun purchased several
      years ago.  Sun decided to re-license the overwhelming majority of the
      StarOffice code as open source, creating the OpenOffice.org community
      and application around it.  Peter detailed the 6 key components of
      StarOffice and OpenOffice.org: Writer (a full-featured word processor),
      Calc (a powerful spreadsheet), Impress (the slide presentation package
      that in fact Peter was using for this presentation), Draw (a drawing
      application supports many image formats), Base (a programmable database
      system), and the equation editor with support for MathML.  He then
      noted that these application ship with Sun Solaris, the Sun Java
      Desktop System, and many GNU/Linux distributions; and also that they
      are available on Windows, bundled by Sony and others with their PCs.

      Peter then described in detail the key features of the various
      applications that are part of StarOffice/OpenOffice.org.  He noted that
      Writer reads/writes MS-Word, RTF, text, HTML, DocBook, Palm, Pocket
      Word, and Word Perfect file formats; that it will export to PDF; that
      it can create complex documents, embed charts, spreadsheets, etc.
      all within the document; that it has full style-sheet support; and that
      it provides automatic spelling correction.  He described Calc's
      features, including that it reads/writes MS-Excel, dBASE, SYLK, Lotus
      1-2-3,  DIF, Pocket Excel, HTML file formats; it will export to PDF;
      it can create 3-D charts & graphs; that it supports multiple sheets per
      file; and that it has a large library of functions, including Database,
      Financial, Logical, Mathematical, and Statistical functions.  He
      noted Impress' features, including that it reads/writes MS-PowerPoint
      files; that it will export to PDF, HTML, and Macromedia Flash; that
      it includes a large library of transition, animation & 3-D effects;
      and that it has a built-in spell checker.  Finally, Peter talked about
      the Draw application features, including that it reads/writes AutoCAD,
      EPS, Pict, SVG, Bitmap, GIF, JPEG, Photoshop, TIFF, & PhotoCD files;
      that it will export to PDF, HTML, and Macromedia Flash; that it
      includes vector and bitmap image manipulation tools; and that it has a
      built-in spell checker.  Peter also noted that the native file format
      for all StarOffice and OpenOffice.org files is an open, published XML
      standard, and that the office suites have been translated into many
      languages, with Sun specifically supporting: English, German, French,
      Italian, Spanish, Swedish, Simplified & Traditional Chinese, Japanese,
      and Korean.

      Peter then discussed the accessibility features in StarOffice and
      OpenOffice.org.  He noted that for people with mild physical
      disabilities, virtually every aspect of the office suite is operable
      entirely from the keyboard.  For people with mild visual impairments,
      the office suite supports the selected desktop theme (on both GNOME
      and Windows desktops) - including large print, and high & low contrast
      themes.  And for people needing to use assistive technologies, Peter
      described that both StarOffice and OpenOffice.org implement the
      Java Accessibility architecture - thereby supporting the use of
      JAWS and ZoomText on the Windows platform, and Gnopernicus and GOK
      on the GNOME desktop.

      Peter continued with a demonstration of StarOffice accessibility.  He
      first showed theme support by switching to the high-contrast theme
      of the Sun Java Desktop, and then launching StarOffice Calc, which
      rendered the window in the high-contrast theme.  Staying with Calc,
      Peter built a small spreadsheet using only the keyboard.  He then
      switched to a different computer running the Sun Java Desktop but
      also running the Gnopernicus screen reader/magnifier, where he inserted
      a StarOffice demo CD (handed out to everyone in this session) and
      proceeded to install StarOffice with the entire installation voiced
      and magnified by Gnopernicus.  Finally he closed Gnopernicus and
      launched GOK to demonstrate single switch access to StarOffice.  Peter
      discussed the difficulties single switch users have in navigating
      complex dialog boxes and then showed how with GOK and the ability to
      grab the StarOffice toolbar a single switch user could change text
      attributes to bold, italic, and underline for entering text in only
      three keystrokes per attribute change - a dramatic improvement compared
      to single switch users in Windows or Macintosh.

      Not to leave Windows users out, Peter then switched to a computer
      running Windows, and repeated some of the same demos there.  He showed
      StarOffice support for the Windows desktop theme (this time using
      the large-print theme), and he operated the office suite using
      the keyboard exclusively.  He then launched JAWS, and showed JAWS
      reading text in the Writer application.  Exiting JAWS, he launched
      ZoomText, and demonstrated speech and magnification in the Calc
      spreadsheet application.  Finally he showed the Accessibility
      Options dialog, and noted the special accessibility features in
      StarOffice: whether it should support the system colors & fonts,
      whether it should load support for assistive technologies, whether
      it should support keyboard selection in read-only text (where normally
      there is no text caret), and whether it should turn text animation

      Peter ended the presentation talking about who is using the popular
      StarOffice suite: the 800,000 employees of the U.K. Ministry of
      Health who are moving the Sun Java Desktop System; the 500,00 to
      1 million users of the Sun Java Desktop system that is being deployed
      in China this year; every user of a Sony PC sold outside of the
      United States, and the ~240 million students worldwide attending
      schools that received StarOffice through a $6 billion donation
      Sun made two years ago.  Finally, Peter noted that StarOffice is
      available for purchase directly from Amazon.com, CompUSA, Fry's
      Electronics, Staples, Circuit City, Best Buy, Micro Center, OfficeMax
      and Office Depot, and that it can also be purchased directly from Sun.

      For more information about the StarOffice & OpenOffice.org
      accessibility effort, to purchase StarOffice from Sun, or to
      download OpenOffice.org, please see the following web pages


    o The third session Sun hosted was "Evolution and Mozilla
      Accessibility: e-mail, calendaring, and the web" - which described
      the features of these two applications in detail, as well as
      a bonus demo of the GAIM instant messaging client.  It was given by
      Peter Korn & Marc Mulcahy (along with a special guest appearance
      over the Internet by Bill Haneman), all of Sun's accessibility team.

      The session began with Evolution, which Peter described as a
      "look-alike" alternative to Microsoft Outlook (only without the
      viruses).  He described how Evolution will work with most existing
      mail and calendaring environments, supporting IMAP, POP, SMTP,
      and Authenticated SMTP servers; and that it specifically works with
      Sun Java System Calendaring & Messenging servers, with Lotus Notes
      servers, and with Microsoft Exchanges servers (this last one via a
      3rd party connector).  He also noted that Evolution will import mail
      from Eudora, UNIX mbox, MH, Maildir, Netscape, and Outlook Express
      mailboxes; and it supports multiple account management and Palm

      Next, Peter noted some of the key features of Mozilla, including
      tabbed browsing support, the popup ad blocker, "find as you type"
      functionality for typing the contents of a hyperlink to select it,
      and the sophisticated junk mail filtering capabilities in the
      Mozilla e-mail application.  He then described the key accessibility
      features of both Evolution and Mozilla: keyboard operability of
      the user interface and in manipulation of content; support for the
      GNOME desktop theme, and support for the GNOME accessibility
      architecture and thereby interoperability with the Gnopernicus and
      GOK assistive technologies.

      Peter then gave a demo of Evolution, showing it on the Sun Java
      Desktop System with the Gnopernicus screen reader/magnifier.  He
      noted that assistive technology support in Evolution is still in
      the early stages, and that he was using a special build of Evolution
      with accessibility support that was in the process of being put back
      to the open source master cod repository.  Peter opened his e-mail in
      Evolution, read one of the messages, and composed a reply all while
      using Gnopernicus with speech and magnification.

      Exiting Evolution, Peter launched Mozilla and demonstrated access
      to the web through Gnopernicus on the Sun Java Desktop System.
      He noted that there were still a number of keyboard navigation issues
      that were being worked on for Mozilla accessibility, but nonetheless
      managed to successfully browse the Microsoft Web site.  In fact,
      he went to a page listing an example PowerPoint slide for education,
      and when he activated the link Mozilla downloaded the slideshow, which
      was then automatically opened in StarOffice.  Using Gnopernicus,
      Peter proceeded to read through the contents of the first slide, with
      Gnopernicus correctly indicating when the text he was reading on
      the slide was in boldface!

      At this point Marc Mulcahy came on stage for a discussion and
      demonstration GAIM, the open source GNOME instant messenger application
      (which also ships as part of the Sun Java Desktop System).  Peter noted
      that GAIM supports more instant messaging protocols than any other
      IM client, including AIM/ICQ & TOC from AOL, Yahoo Messenger, MSN,
      IRC, Jabber, Napster, Zephyr, and Gadu-Gadu.  He said that GAIM
      supports web proxying (to get outside a firewall), allows you to
      maintain buddy lists and be informed when your buddies are on-line,
      and provides rich sound events inform you when things happen (like your
      buddy goes on-line).

      In order to ensure that GAIM worked well with Gnopernicus and other
      assistive technologies, Marc made a few modifications to the GAIM
      source code, with were accepted back into the open source project.
      Thanks to these small changes, Marc then demonstrated how he uses GAIM
      for having IM conversations with Gnopernicus.  Not to be left out,
      Peter opened another GAIM session on another computer running the Sun
      Java Desktop System, this time using the GOK dynamic on-screen
      keyboard.  And to round out the IM chat session, they were joined by
      Bill Haneman from Dublin Ireland chatting over the Internet.  Peter
      invited people in the audience to interact with Bill through us,
      and as Marc and Peter entered their questions, Bill's responses were
      spoken to the room from Marc's computer via Gnopernicus.  Peter ended
      the session by noting that GAIM was more than a nice way to keep in
      touch with your friends - the GNOME development team actively uses
      instant messaging and the IRC service for all manner of engineering
      discussions.  GAIM accessibility is critical if developers with
      disabilities are to participate successfully in many open source

      For more information about the Mozilla accessibility project
      in general, and Mozilla accessibility on UNIX platforms, please
      see the following web pages respectively:


    o The fourth session Sun hosted was "GOK - the open source Dynamic
      On-screen Keyboard" - which went into depth on the on-screen keyboard
      developed by the University of Toronto Adaptive Technology Resource
      Center and which is a core part of the GNOME desktop starting with
      GNOME 2.4.  Jan Richards of University of Toronto ATRC gave the
      presentation, along with demonstrations by Peter Korn of Sun's
      accessibility team.

      Jan began the talk with an overview of GOK: it is an on-screen
      keyboard and more that utilizes the GNOME accessibility framework
      to provide a series of dynamic keyboards on screen for rapid
      access to applications and the desktop.  He stated that it was
      free software - using the LGPL library - designed for UNIX and
      UNIX-like operating systems, and that it had been fully translated
      into ~30 languages.  He said the mission of GOK is to "give the user
      access to all the functions of the UNIX and GNU/Linux desktop in the
      least number of steps."  He said that UToronto choose GNOME because
      it is one of the two popular desktops for UNIX and GNU/Linux, and
      that Sun Microsystems and the open source community have have built
      a powerful accessibility infrastructure into GNOME which is necessary
      for the advanced features of GOK.  He noted that KDE, the other
      popular desktop for UNIX and GNU/Linux systems, is presently working
      to support the same infrastructure in a future edition of that desktop.

      Jan then talked about the project's history, and GOK's philosophy.
      He said that work began in 2002 by a group of clinicians, students,
      programmers and visionaries with a lot of experience with users
      with motor impairments.  Their philosophy is to put the user first,
      and GOK is designed to enable clinicians to asses people with motor
      impairments who would then configure GOK to take best advantage of
      the motor function of that particular user.

      Jan showed a series of pictures of the GOK preferences dialog.  He
      show the Actions pane, and described how a clinician (or user) would
      define a set of actions a user could perform (with switches or a
      joystick) for an x or x,y axis movement.  He showed the Feedback pane,
      where a clinician (or user) would define the visual and/or auditory
      feedback to associate with various actions.  He showed the Access
      Methods pane, where the clinician (or user) would choose the
      method by which the user would generate input, and the actions
      (defined earlier) that trigger that input - including direct selection,
      dwell selection, and scanning (automatic, inverse, row/column,
      column/row, and single key scanning).  He showed the Appearance pane,
      where a clinician (or user) has great control of the visual appearance
      of the on-screen keyboard.  And finally he showed the Prediction pane,
      where a clinician (or user) can enable word completion and command
      prediction, as well as load an auxiliary word list for word completion.

      Jan described the GOK user experience, starting from a "main" keyboard
      with the buttons "Compose", "Window", "Mouse", "Launcher", "Activate",
      "GOK", "Menus", "Toolbars", and "UI Grab".  He said that additional
      dynamic keyboards come up as the user interacts with their
      desktop and applications.  Jan then described in detail each keyboard
      and its function.  He first described the static keyboards: the
      "Compose" keyboard - the basic alphanumeric hardware keyboard
      rendered as a window of buttons on the screen; the "Window" keyboard
      presenting buttons for moving the GOK window around on the screen
      or docking it to the top/bottom of the screen; the "Mouse" keyboard
      for moving and the clicking the mouse; the "Launcher" keyboard which
      is based on a user-editable XML file and lists applications a user
      can launch; and the "GOK" keyboard for getting help, opening the GOK
      preferences dialog, and exiting the application.  He then described
      the dynamic keyboards: the "Activate" keyboard which lists all of the
      running applications on the desktop for rapidly switching between
      them (much faster than scanning to ALT, then scanning to TAB, then
      scanning again to TAB, etc. to switch); the "Menus" keyboard which
      reaches into the running application and dynamically builds a keyboard
      of the menus for rapid selection; the "Toolbar" keyboard which likewise
      reaches into the running application and dynamically builds a keyboard
      of the toolbar for rapid selection; and the "UI Grab" keyboard which
      examines the topmost window and dynamically builds a keyboard with
      all of the "user interface elements" on it (the buttons, checkboxes,
      popup menus, editable text fields, etc.) for rapid access - especially
      useful in dialog boxes.  He noted that these dynamic keyboards
      know about the kinds of objects they are displaying, and optionally use
      color and other visual indicators to show the user the kind of object
      represented with each button on the keyboard.  Further, selecting
      a button representing an editable text field will not only bring
      focus to that text field, it will also bring up the "Compose" keyboard
      for immediate editing.

      At this point in the presentation, Jan invited Peter to give a live
      demonstration of GOK on the Sun Java Desktop System.  Peter began
      with GOK on the GNOME desktop and a TASH USB Mini-click single-switch
      device.  He observed that with any other on-screen keyboard running
      on Windows, launching applications is a lengthy and painful process
      of scanning to CTRL to latch it, then scanning to ESC to bring up
      the Start menu, then scanning repeatedly to down and right arrow
      to navigate the Start menu to finally get to the application you
      want to launch (he started this process on the GNOME desktop from
      the GOK "Compose" keyboard, then gave up in frustration).  He
      said that in GOK there is a better way: simply activate the GNOME
      menu panel from the "Activate" keyboard, choose the "Applications"
      menu from the "Menus" keyboard, and immediately select the application
      you want to run (or the submenu listing the application); dramatically
      faster!  Alternately of course, Peter noted that frequently launched
      applications could be placed in the "Launcher" menu; in fact that's
      what he did before this presentation to put GAIM and StarOffice there.

      Peter proceeded to launch the GNOME Text Editor application, and
      using the "Compose" keyboard, he wrote a sentence.  He then noted
      that if he wanted to edit this sentence, that on any other on-screen
      keyboard on any other platform he would have to slowly scan down
      to the arrow keys to slowly move character at a time (or latch
      the CTRL key to use the arrow keys to move a word at a time).
      But then he brought up the "Text-manipulation" keyboard, and
      demonstrated rapid selection by letter, word, line, and sentence,
      as well as immediate access to cut, copy, and paste functionality
      via the GNOME Accessibility architecture.  He then used the "Menus"
      keyboard to rapidly choose "Save" from the "File" menu, and the
      "UI Grab" keyboard to put the contents of that dialog onto a
      dynamic keyboard to quickly choose a directory, a filename, and
      the "OK" button.

      Peter then exited Text Editor, and brought up the GNOME Help system.
      Again comparing GOK to other on-screen keyboards for other platforms,
      he noted that the normal and tedious way to select hyperlinks is
      to repeatedly scan to the TAB key until the correct link is focused,
      and then scan to the SPACE key to select it (and repeat this
      process again and again until you find the help document you want).
      But then he showed how the GOK "UI Grab" keyboard would immediately
      extract all of the hyperlinks and put them on a keyboard dynamically,
      for immediate selection.  Going to the "Accessibility Guide" help
      document, he showed how the GNOME Help system displayed a table
      of contents in a tree-view pane on the left side of the window, and
      how GOK's "UI Grab" keyboard also listed that table of contents on
      the dynamic keyboard allowing him to rapidly go to Chapter 3.2 titled
      "Navigating the Desktop Background" in just three clicks of his
      single-switch device.

      Peter emphasized that this all works because of the GNOME
      Accessibility architecture, which is implemented across the entire
      GNOME desktop as well as in large applications like StarOffice and
      Mozilla and Java applications (all of which Sun is incorporating
      in the Sun Java Desktop System).  To underscore this point, Peter
      then launched StarOffice and used the GOK "Menu" keyboard to open
      a new text document.  Noting how difficult it usually is for a
      single switch user to navigate a complex dialogs like Character
      Font and Style dialogs, he used the "Toolbar" GOK keyboard to
      put the character attribute settings "Bold", "Italic", and
      "Underline" (among others) onto a keyboard, and in three clicks
      each quickly selected them.  He then proceeded to enter text from
      the "Compose" keyboard that was italicized, boldface, and underlined!

      Having demonstrated GOK at length with single switch, Peter then
      changed the Access Method to "Dwell selection", placed a reflective
      dot onto his forehead, and used a Madentec Tracker to operate GOK.
      He re-launched the GNOME Help application and followed a few
      hyperlinks, all simply by moving his head.

      For more information about GOK and about the GNOME Accessibility
      architecture, please see the following web pages respectively:


    o The final session Sun hosted was "Gnopernicus - the open source
      Screen Reader/magnifier" - which was a double-length presentation
      covering all aspects of Gnopernicus: how it works, the motivation
      behind developing it, the voices & Braille displays supported,
      demonstrations of Gnopernicus on the Sun Java Desktop System, and
      also a special guest presentation from Oracle Corporation discussing
      their use of Gnopernicus with their large Java application
      JDeveloper 10g.  This presentation was given by Thomas Friehoff of
      BAUM Retec AG, Marc Mulcahy and Peter Korn of Sun's accessibility
      team, and Kerstin Goldsmith and Mike Pedersen of Oracle Corporation.

      Thomas began the presentation with a discussion about who BAUM is
      and why they are developing an open source screen reader for the
      UNIX and GNU/Linux desktop.  He noted that BAUM has been developing
      products for the blind and visually impaired for over 20 years,
      focused on the mission: "To offer Products and Services to Blind and
      Visually impaired persons, to make them more successful in their
      business and private life!"  However, he said, lately they are
      frustrated with the current situation for accessibility: Windows
      is dominating the market, and they and their customers are looking
      for alternatives, so BAUM decided to be early adopters of the new
      accessibility infrastructure and technology for UNIX and GNU/Linux.
      Thomas also said that GNU/Linux is growing in popularity in Germany:
      many users (mostly private individuals) are asking for access to
      the graphical environments in Linux, the German Parliament recently
      decided to use Linux on their desktops, and there is a lot of interest
      in the public sector as well.

      Thomas said that Gnopernicus is targeted for x86 "PC" hardware
      running GNOME, X Windows, and Linux; and also for Sun hardware
      running GNOME, X, and Sun Solaris.  He said that architecturally,
      Gnopernicus is simply another application running on the system,
      using the platform accessibility infrastructure to communicate with
      other applications in a standard and supported fashion.  Furthermore,
      Thomas noted that Gnopernicus doesn't patch the operating system or
      graphical framework, nor does it replace any video or keyboard
      drivers.  Rather, he said, it functions by virtue of the
      accessibility framework built into the platform.  Thomas noted that
      because of this, Gnopernicus supports all "native GNOME applications
      that use the GTK+ graphical library, all Java applications using
      the Swing graphical library, StarOffice and OpenOffice.org, and
      Mozilla.  And now that the KDE community is working on support for
      the accessibility framework developed for GNOME, Thomas said that
      in the future KDE/Qt applications should also be supported.

      Thomas then walked through a series of slides that showed the
      Gnopernicus user interface.  He showed the Gnopernicus main menu,
      General Settings dialog, where a user turns on or off support for
      Braille, Magnification, Speech, and the Braille Monitor window
      (a software "Braille display" which shows what is rendered on a
      physical Braille display).  He went through the Magnification
      settings dialogs, which contain the following features: mouse
      cursor display on/off, mouse cursor magnification & color choice;
      full-screen cross-hair on/off, size, color, and inversion; zoom
      magnification factor (2x, 3x, etc.) separate in the x & y dimension;
      zoom region placement on the screen; inversion on/off, panning on/off,
      smoothing mode, and mouse magnification tracking mode.  Next Thomas
      talked about Braille settings: the choice of Braille device and
      serial port; language translation table; Braille cursor cell choice;
      Braille position switch action (move the mouse & click, move the
      caret, or output one of a wide range of information about the letter
      or object at a particular Braille cell).  He also noted that
      Gnopernicus supports over 50 different Braille displays.  Thomas
      talked about the speech settings, with the ability to tune how
      punctuation is spoken, turn on character or word echo, have speech
      count multiple consecutive characters, echo modifiers, echo cursor
      changes, and whether spaces should be spoken.  He also noted the
      Gnopernicus pronunciation dictionary.  Thomas showed the voice
      settings dialog, where the user can change the way different things
      in the user interface are spoken: names of objects vs. their roles
      vs. their accelerator keys; each one of these can be spoken by
      a particular text-to-speech engine with a particular set of settings
      (pitch, volume, and rate) - thus allowing the user to quickly
      tell from how something is spoken what sort of thing it is.
      Thomas discussed the powerful Find feature of Gnopernicus, which
      can search within the window, application, or desktop for text,
      specific text attributes, or named graphics.

      Leaving aside the graphical user interface portion of Gnopernicus,
      Thomas next discussed the keyboard interface.  He said that
      Gnopernicus uses the numeric keypad for commands, and groups
      related commands together into a "layer".  The 0 key on the
      numeric keypad is used to switch between layers.  Gnopernicus
      provides two navigation layers containing commands for screen
      review movement, describing the surroundings of the focused
      object, navigating the UI hierarchy, and immediately speaking
      the title bar, status bar, toolbar, and menubar.  The mouse
      layer allows the user to simulate mouse button clicks.  The
      two magnification layers provide commands for increasing and
      decreasing the magnification level, setting cursor size and crosshair
      thickness, toggling cursor magnification on/off, toggling picture
      image smoothing, changing the panning mode, and changing the
      focus tracking mode.  The speech layer provides commands for
      increasing and decreasing the rate, volume, and pitch, as well
      as a pause/resume command.  Finally, the Braille layer includes
      commands to scroll the Braille display in various increments.
      All of these commands can be remapped by the user to different keys
      in different layers of the numeric keypad, and in addition
      there are a variety of commands assigned to keys on a Braille
      display so that Braille users can execute them without taking their
      hands off of the Braille display.

      Thomas ended the slide portion of his talk with a few conclusions:
      that Gnopernicus is open source, and is bundled with the GNOME 2
      platform; that it is targeted at GNU/Linux and Solaris systems;
      and that it is under heavy development with testable versions
      available in source code form in the GNOME source code repository.

      Marc Mulcahy then took the stage, and gave a brief demonstration
      of all of the voices supported by Gnopernicus.  Gnopernicus uses
      the gnome-speech architecture, and there are gnome-speech drivers
      for the open source Festival and FreeTTS engines, as well as
      drivers for the Cepstral line of commercial text-to-speech engines,
      and for the Fonix DECtalk engine.  Marc demonstrated all of the
      voices, in multiple languages, that are available with these
      engines.  In addition, Marc gave a preview of gnome-speech support
      for the IBM ViaVoice engine, though he noted that there are still
      a few issues to work out before this will be ready for end users.

      After Marc, Peter Korn came up and gave a series of Gnopernicus
      demonstrations on the GNOME desktop.  He launched Gnopernicus and
      then took the audience on a tour of the desktop through speech.
      He noted that his copy of Gnopernicus was configured so that the
      text of objects was spoken in one voice, and information about those
      objects in another (thus pressing F10 to bring up the File menu
      resulted in "File" being spoken in one voice, and "Menu, shortcut
      Alt F, 11 items" in a somewhat softer and quieter voice).  Peter
      then reprised a demo he gave earlier in the day, launching the
      Mozilla web browser, following a bookmark to the Microsoft web
      site, browsing that page, and downloading a PowerPoint slide
      that was then automatically opened in StarOffice, where he
      proceeded to use the keyboard navigation features of StarOffice
      to go through the graphical slide and read that slide's text.
      Observing that some of the text on the slide was in boldface, Peter
      move the text caret to that boldface text and noted to the audience
      that the software Braille display in the Braille Monitor window was
      correctly indicating the text was bold in the four status cells on
      the far right end of the display.  Peter continued his demonstration
      in StarOffice, entering text in the word processor and opening a
      spreadsheet where he navigated through the cells (being told by
      Gnopernicus always which cell he was on, as well as the cell's text).

      The final segment of this lengthy presentation was given by
      Kerstin Goldsmith and Mike Pedersen of Oracle Corporation.
      Kerstin and Mike talked about one of Oracle's developer tools -
      Oracle JDeveloper 10g - a large application written entirely
      in the Java platform and designed to be accessible to people with
      disabilities.  Kerstin said that JDeveloper 10g is a powerful
      integrated development environment (IDE) for creating Java
      applications and web services.  Filled with features, Kerstin
      noted that JDeveloper 10g includes the Oracle Accessibility
      Checker, an extension which provides tests for Section 508 1194.22
      and WCAG Double-A, and works on all kinds of HTML files.  Mike -
      a blind Oracle employee - then gave a demo of JDeveloper 10g.
      Mike launched Gnopernicus from his GNOME desktop (which he compiled
      himself from the public source code repository), and then launched
      JDeveloper 10g.  With Gnopernicus reading along as he used JDeveloper
      10g, Mike opened a Java source file containing an intentional
      programming error and showed how to use JDeveloper 10g to find the
      error, fix it, and then run the resulting application from the IDE.
      Mike noted that this demo was similar to the kinds of tasks he does
      every day as part of his job at Oracle.  Then together with Kerstin,
      Mike demonstrated the Oracle Accessibility Checker (again with
      Gnopernicus), which pinpointed several accessibility issues with a
      sample web page and provided assistance in fixing those issues.
      Mike and Kerstin invited attendees to come to their station in the
      Sun booth for hands-on demonstrations of JDeverloper 10g on both
      the GNOME desktop with Gnopernicus and Microsoft Windows with JAWS.

      Thomas and Peter ended the session by taking questions from the

      For more information about BAUM Retec AG and Gnopernicus, please
      see the following web pages respectively:


      For more information about the open source text to speech engines:
      Festival and FreeTTS, and the commercial text to speech engines:
      Cepstral, and Fonix DECtalk, please see the following web pages


      For more information about Oracle's JDeveloper 10g, please see:


In addition to the Sun hosted talks on Thursday, Sun participated in the 
Free Standards Group presentation on Friday morning:

    o "Developing Accessibility Standards for Free and Open Platforms" -
      was a presentation on work by the Accessibility Working Group of
      the Free Standards Group on developing free and open standards
      for accessibility and for interoperability with assistive
      technologies.  It was given by Janina Sajka of the American
      Foundation for the Blind and chair of the Accessibility Working
      Group, and Peter Korn of Sun's Accessibility team (and a Sun
      representative to the Accessibility Working Group).

      Janina began the session with an overview of the Accessibility
      Working Group's charter and goals.  She talked about the growing
      popularity of open source operating environments such as GNU/Linux
      and the open source graphical desktops of GNOME and KDE, as well
      as the use of other UNIX and non-UNIX computing environments which
      are looking to adopt accessibility standards as they are
      developed.  She noted that there is a large body of existing
      open source GUI software that isn't accessible for these environments,
      and stressed the importance of establishing and promulgating
      accessibility standards that open source GUI software can use.

      Janina then discussed the existing open source solutions available:
      AccessX, the GNOME Keyboard Accessibility Preferences dialog, and
      the XKB specification which all address keyboard accessibility needs;
      the GNOME Accessibility Toolkit (ATK), the Java Accessibility API,
      and the UNO Accessibility API (from OpenOffice.org) which are all
      accessibility APIs for applications; the GNOME Assistive Technology
      Service Provider Interface (AT-SPI), Java Accessibility API, kttsd
      speech API, gnome-speech text-to-speech API, gnome-mag magnification
      API, and the Macintosh accessibility API which are all interfaces for
      assistive technology applications; and then the end user solutions
      such as BRLtty, Emacspeak, Console508, Speakup, the GNOME On-screen
      Keyboard, Gnopernicus screen reader/magnifier, KMagnifier, KMouseTools,
      and KMouse.

      Janina stated that one of the key goals of the Accessibility Working
      Group was to gather together all of the stake holders working on
      these existing solutions and out of them build a set of open and
      free standards which would then be adopted by the community and
      become available on the various GNU/Linux, UNIX, and graphical
      desktop systems.  She went on to state the three goals for the first
      year: standardize on the Assistive Technology Service Provider
      Interface (AT-SPI) which comes from the open source GNOME accessibility
      work; standardize on AT device shared I/O to coordinate use of
      AT devices among multiple software clients and for uniformity of
      the AT device interfaces across all systems; and standardize on
      keyboard accessibility components (e.g. the "StickyKeys" family).

      Peter Korn then gave a demonstration of the existing GNOME
      accessibility framework through the assistive technologies Gnopernicus
      and GOK - which utilize AT-SPI and provide access to a large number of
      GNOME and Java applications already on the GNOME desktop, as well
      as access to Mozilla and StarOffice/OpenOffice.org through that
      same interface - which is the subject of standardization by this
      group.  Peter also noted recent work by the KDE desktop, which
      is in the process of implementing support for AT-SPI in their
      suite of desktop applications and graphic user interface libraries.

      For more information about the Accessibility Working Group, the
      Free Standards Group, and for the proceedings from this session,
      please see the following web pages respectively:


On Friday and Saturday, Sun hosted a series of "Accessibility Experience" 
sessions in their booth.  Up to six attendees at a time attended these 
hands-on hour-long sessions on either the Gnopernicus screen 
reader/magnifier, or the GOK dynamic on-screen keyboard.  Several of the 
systems were set up with the BAUM Vario 40-cell Braille displays, some with 
either the Madentec TrackerOne head-tracking device or the Origin 
Instruments HeadMouse, and all with the Tash USB switch devices.  Many users 
  signed up for these sessions, and attendees were quite enthusiastic about 
the technology.

This was an exciting conference, with a dizzying series of demonstrations of 
accessibility on the UNIX platform, on GNU/Linux, and on the Sun Java 
Desktop system.  The features and flexibility of the assistive technologies 
under development is very impressive.  The promise from Sun that these 
assistive technologies will be bundled with their desktop computers, and the 
expectation that various Linux vendors will also bundle these technologies 
with their UNIX offerings, is particularly exciting!

I would like to thank Tash Inc. for their loan of a USB Switch Click and USB 
Mini Click single switch devices for use at CSUN.  These switches work well 
with the GOK dynamic on-screen keyboard on both x86 GNU/Linux systems and 
Sun Solaris workstations, as was demonstrated last month at the conference. 
  Numerous people used these switches in Sun's booth and also as part of 
their hands-on Accessibility Experience sessions (see above).  You can get 
information about these switches at: http://www.tashinc.com/

I would also like to thank Madentec for their use of their Tracker One head 
pointing device.  Like the Tash switches, these USB head trackers work very 
well with the GOK dynamic on-screen keyboard on both x86 GNU/Linux systems 
and Sun Solaris workstations.  Numerous people used the Tracker One at CSUN 
in Sun's booth and also as part of their hands-on Accessibility Experience 
sessions (see above).  You can get more information about the Tracker line 
of head pointing devices at: http://www.madentec.com/

I would like to thank Origin Instruments for their use of their HeadMouse 
Extreme head pointing device.  Like the Tash switches and the Madentec 
Tracker line, these USB head trackers work very well with the GOK dynamic 
on-screen keyboard on both x86 GNU/Linux systems and Sun Solaris 
workstations.  Numerous people used the HeadMouse Extreme at CSUN in Sun's 
booth.  You can get more information about the Origin Instruments line of 
HeadMouse devices at: http://orin.com/

Finally, I would like to thank BAUM for their loan of several Vario 40 cell 
Braille displays, which work flawlessly with the BAUM Gnopernicus screen 
reader/magnifier on both x86 GNU/Linux systems and Sun Solaris workstations, 
as was demonstrated at CSUN.  Attendees seemed particularly pleased by the 
degree to which Gnopernicus supported all of the features of these displays.


Peter Korn
Sun Accessibility team

More information about the Accessibility mailing list