views:

92

answers:

4

Hello everyone, this is my firts post here ever.

I have to develop an aplication for a group of people with special needs. The functionality is really trivial, however, i have no clue of how to do the interface for them to be able to use it.

Their intelectual habilities are perfect, they are actually studying high school, but one of them types with his nose which needless to say, is very dificult and another one types reaaaaaaally slowly with only one of his fingers and neither can use the mouse.

I was wondering if i could use javascript to develop a usable interface, based on huge grids or something like that or maybe you guys have a better idea.

+1  A: 

It doesn't really matter what technology you use. Use whichever suites you.

But, make sure that you make UI components BIG in size(Bigger buttons, bigger font, bold font, coloured font(are there any colour blind?). This is for the ease of use of people (you said someone types with nose).

Also, better to have audio as informative source along with the usual screen display whenever some wrong action is performed on the application. This way visually impaired people will be assisted more.

Do it well, you are doing a divine job.

Chandan .
+2  A: 

Political incorrectness aside, why don't you ask them? You're talking about accessibility here, if they're using computers they must be able to tell you about what they like or dislike about user interfaces that they've encountered.

ninesided
It is most certainly not politically incorrect to ask a user his or her preferences.
Joe Koberg
Agreed, I was referring to the wording of the question, some people take umbrage with the use of "special needs", do you think I should rephrase my response?
ninesided
Actually, i've found this to be a problem, because of the fact that their intelectual capacity is not impared at all. They seem to always want to prove themselves, so if i ask them, they demand challenge.
I can understand where they're coming from, but they have to be realistic, you're not designing software to challenge them, it's meant to be easy to use. If they needed the challenge you'd make it a mouse only interface!
ninesided
+1  A: 

The first thing that you should read up on is the Web Content Accessibility Guidelines written up by the W3C.

In a nutshell this document describes the basic principles for people with disabilities in general.

For your needs regarding persons with special needs, you might want to look at Jakob Nielsen's article on Website Usability for Children, wherein principles of web design for young children or people with otherwise limited cognitive ability are outlined.

Jon Limjap
from my understanding the users aren't cognitively disabled, just physically, which introduces a rather different set of requirements
ninesided
A: 

I'm going to split my answer into two parts - design and implementation.

From a design perspective, it's important not to be intimidated by the fact that the users use a computer in a different manner. Treat this like any other project. Observe how they currently use other apps, and ask about the kind of things that they find helpful, or have difficulty with. If they claim nothing is difficult, ask a teacher or assistant, who will be familiar with the kind of things they struggle with.

Once you've started implementation, try an idea and get initial feedback. If you simply ask how they find the prototype, they'll likely say it's ok. Instead, try observing them using it without saying anything or giving guidance. If they get stuck, let them find their own solution to the problem. If appropriate, you could ask the user to speak their thoughts out loud (e.g. "I need to save this form, so I'm scrolling to the bottom, and clicking save").

On the development side, try to use web standards (valid HTML, CSS and Javascript). People often point to the "Web Content Accessibility Guidelines 2.0" (WCAG2) but this is quite turse and hard to understand; there are many more friendly articles on "Web Accessibility".

Someone with a physical disability is likely to use an alternate input device, such as a "Switch", onscreen keyboard, head-tracking device, a device for pushing keys on the keyboard, or speech recognition. Many of these methods involve simulating the keyboard, so by far the most important thing is to consider the accessibility of your site without using a mouse. For example, try tabbing through the page to see if you can access all elements in a reasonable amount of time. Consider using the acesskey attribute to provide an easy way to jump to different parts of the page (using 0 through 9 is often recommended so you don't interfere with browser shortcuts).

Also make sure that no part of your site is time-dependant, as different users may take different amounts of time to perform a task. For example, don't use the onchange Javascript event to update a page based on a listbox selection. Ensure you have alt text for images, so it's accessible for speech recognition. make the pages short enough so that excessive scrolling isn't required, but not so short as to require following lots of links.

Those are just some ideas to get your mind going in the right direction - but there are many accessibility resources on the internet - steal freely, and don't reinvent the wheel.

I realise I haven't addressed your question about Javascript - that's because I think it's probably one of the less important considerations. If possible, use Progressive Enhancement techniques to make the site work with and without Javascript. You might also look into the WAI-Aria standard for giving semantics to your Javascript.

And finally, to reiterate my initial point - make something simple, show it to the users, tweek, and show again.

Saqib