Designing an OS for Blind/Deaf Users?
Sushant Bhatia asks: "I work for a team developing technology for individuals who are blind and I have had the opportunity to use some screen reading software and while there have been leaps of progress it is still quite tedious to use, and not at all user friendly. One of my managers recently posed an interesting question for me: 'How would you design an OS from scratch that would target individuals who are blind and/or deaf?' What about inputs such as keyboards or refreshable Braille devices?"
I would start with the US government's recommendations for app development for people with disabilities. Most apps written for the Fed have to be section 508 compliant, which helps ensure that they'll work with screen readers. Keep in mind though that from my (limited) experience, 508 compliance is more than an art than a science - you know, you get something that's kinda sorta 508 compliant.
http://www.section508.gov/
Tristan Yates
While not part of an OS designed "from scratch" for vision-impaired individuals, Apple VoiceOver is the first such functionality of its kind to be included for free with a commercial operating system. It's a fully integrated screenreader and accessibility interface for Mac OS X, and is tightly integrated with both the operating system and its APIs, and is extensively supported in several common applications.
As for hearing-impaired individuals, the task is much easier, as the primary interface to a computer is already visual. However, visual alerts and features that would correspond with otherwise audio-only events have also been integrated by Apple in Universal Access.
In addition, Universal Access includes features that assist individuals with motor impairments as well.
While it may be an interesting and informative exercise to think about the types of things you'd do if you were going to "build it from scratch", it might be more productive to think about how these capabilities could be added to existing commodity operating systems, such that the technology can continue to be affordable and easily supported.
Blind:
1. Use a device that creates a topographical image on a pad based on the screen color values. This would allow the blind user to "feel" his way around the screen. More advanced versions could allow the user to use his hands as a mouse, by accepting a certain amount of pressure as a click.
2. Controls on the device should allow the user to "zoom in" on particular areas. This would help the user more easily find toolbar buttons and the like.
3. Replace the system fonts with braille fonts. (I'm uncertain as to how one might add bold or italics for emphasis, but I'm sure a system can be devised. Perhaps extra bumps outside the normal character area?)
4. No right clicks. Right clicking is more of functionality for advanced users anyway. Mac OS X can get along without it, so other OSes should be able to do so as well.
5. "Selected" items should actually invert in the control device. This would allow the person to easily understand what (s)he has selected at the moment.
6. Standard controls such as checkboxes, radio buttons, and the like should be skinned to be more "feel" friendly. i.e. Simple invertable boxes would work better for checkboxes and radio buttons than our current iconic forms.
7. One handed brail keyboard? It's just a thought, but if the blind could be taught to use a one hand keyboard, they could read and type at the same time.
Deaf: What are some of the actual challenges facing a deaf computer user? Computers are primarily visual, and tend to suffer little with the loss of sound. (Unless I'm listening to music, I usually keep my machines muted.) My only thought is that the standard issues of movie subtitles apply.
Javascript + Nintendo DSi = DSiCade
Really if you are going to take only text as input and output is going to be serial text, speech (blind but not deaf), braille CLI is the way to go.
This does not prevent you from multi tasking BTW, it simply means that you need to work within a well defined context.
Nothing new to invent.
EA David Gardner -"... but the consumers have proven that actually what they want is fun."
>
> Unless your tech support/any other user of the machine isn't blind.
Ah, this is about finding an OS for tech support folks in India. They could be blind, because all the work is done over the phone. Spending five minutes on the phone proves they're deaf. And the quality of the solutions proves that they're dumb.
Ever since I was a young boy,
I took the support call,
From Delhi down to Bangalore,
I must have played them all.
But I ain't seen nothin' like him
In any support-cube hall,
That deaf, dumb and blind tech
Always says "re-install!"
Sits there like a statue,
He's a voicemail machine,
Please to reading from scripts,
Keeps his call queue clean,
Bullshits by intuition,
Never seen him fall,
That deaf, dumb, and blind tech
Always says "re-install!"
On the other hand, both your response and the one it responds to are crass and ignorant.
It is reasonable that a non-technical person would confuse the OS with the interface, since more and more, the interface is designed to shield the non-technical user from the inner workings. This is the world we live in, rather than some idealized form where everybody has a clear understanding of everything.
Perhaps the OP's real expertise is in working with the deaf and blind in a different area rather than computer interfaces. Perhaps this person has not had the exposure that you have had. Whatever the case, it doesn't matter if the person was informed or not; by both of y'all showing your asses, you've contributed a little bit more to one of the problems, rather than a sensible solution.
"My God...it's full of trolls!"
The phrase "Blind OS" represents muddle-headed thinking from the very start.
An operating system is an abstraction of resource managers of various hardware-level resources: CPU, disk, etc.
The challenges a blind person experiences in using a computer has nothing to do CPU scheduling, filesystems, interprocess communication, nor of anything else that relates to operating systems. The challenge of the blind is all in the user interface.
(Sigh.)
My wife uses some of these devices (BrailleNote QT) and the biggest problem is using the wrong underlying operating system. DOS and Linux work just fine when translated to the command line; the WinCE that underlies her machine sucks. Hard. Sure, it gives a bare modicum of device and software (read: Outlook) compatibility, but at the cost of needless hardware overhead, and a special version of the three finger salute.
/. response is "did they contribute for their market research?" To which I say "sod off". The market is fairly small, and should be one with a tighter feedback loop between vendors and users. My email address is non-obfuscated should you need some ideas or contact info for some groups.
Asking 'what about blind and/or deaf' shows a bit of lack of understanding. The best replacement for the blind is speech. The only option for DB is refreshable braille. I suggest you and/or your employer make some contact with DB groups. At a DB camp a couple of weeks ago, some devs and sales reps from some tech outfit (forget which one) displayed their wares. The kneejerk
Finally, expose the API and make some generic libraries available to use to people who like to program. PulseData/HumanWare wants, I belive a dev kit fee. Umm, screw that. Entry level prices on the BrailleNote are ca. $3000, IIRC, so there's plenty of money out there. Not sure about you, but Franklin Scientific, Blazie, PD, etc. are Hardware companies. Let a little bit of "Open Source"ism do some development for you. There is tremendous word of mouth, and if some third party makes some brilliant add on, it will get around the community. Depending on how you license it, you may be able to ship later. (Personally, I would go BSD or LGPL.)
In summation:
1. Don't confuse blind and deaf and deaf-blind. Each is unique with unique needs. An attempt to be all things to all people will either have stratospheric costs or poor quality or both.
2. Ask your customers instead of some random slashbots. They are out there.
3. Build it from the ground up, since you'll likely have bizarro hardware anyway.
4. Make it possible to program for it. It (the DB group) is a tight community, with lots of people looking out for others, so it's not like you'll be helping a competitor. Think of third parties as value added.
5. (Not mentioned above, but kinda goes with 2) Update your freaking website with real, up to date, and complete information. Have a company policy of a real, human reply to all correspondence within x hours, where x72. Even "I got your note and am investigating your concerns" is better than some of what I get from PD from time to time.
And a freebie. My wife never uses the voice prompts on her BN, but I activate them if I have to do tech support (needing an onsite geek is a bad thing, BTW). Try to get a speech synth chip that sounds better than the WOPR or Speak and Spell I had as a kid. Seriously. It's 2005, and every time I hear the voice, I expect to hear "Would you like to play a game?"
Jesus was all right but his disciples were thick and ordinary. -John Lennon