I have worked extensively in the area of accessible applications using TTS (Text to speech) and VR (Voice Recognition). I have had occasion to use one handed keyboards for extended periods of time. Traditional UNIX development (my nice little black box of joy) is losing market share to more modern technologies and development environments. Complex GUIs are frustrating by themselves and adding additional hardships has made them intollerable. Given the currently available choices Microsoft does seem to have the upper hand in enabling features in the environment to accommodate programmers with disabilities. This question might simply boil down to which environment and tool chain best supports automation and the notion that everything the GUI can do I can do effectively from the command line?
Traditional UNIX development (my nice little black box of joy) is losing market share to more modern technologies and development environments.
While there are certainly many great IDEs out there today with support for web development like Visual Studio, Eclipse, and Netbeans, many web developers find them unnecessary and continue to work entirely in standard text editor like vi and emacs.
The unix platform has a very rich selection of contemporary web development frameworks – Ruby on Rails, and Django are two of the most popular today. You could develop an application using one of these frameworks without the use of an IDE entirely from the command line. Both of these frameworks are open source, free, and run on a variety of Unix and non-unixy platforms.
The gnome desktop has several accessibility features that might aid you in your development. The section on mobility impairments in the GNOME desktop accessibility guide might be the most relevant for you. That would give you the best of both worlds in that you’d have a very rich commandline environment, but could also run GUI apps and IDEs such as Eclipse. MacOS X might give you a similar benefit.
If you find the benefit from the MS Accessibility features in Windows too great to abandon, perhaps consider installing and learning to use Powershell. My understanding of Powershell is that it allows you to execute many GUI based tasks entirely from the commandline (allowing you to interact with Windows in a more unix like manner).
I’m a Ruby on Rails developer, and have fallen in love with the little use of the mouse that our tools allow. Here’s a quick recap of the our most common tools:
TextMate for the Mac OS X and its cloned version for Windows e-Text Editor are probably the most accessible for keyboard-only use. Their plugins (called bundles) allow for easy navigation between related files, they have a HUGE number of snippets and templates that are accessible through the keyboard, and many command-line-based scripts that you would execute on a separate command-line window, are accessible as keyboard shortcuts through the editors. The shortcuts are easy to learn and use as they almost always correspond to what you would have typed, and they are extensible through the editor’s “Bundle Editor” functionality.
Aptana RadRails is only as accessible as the Eclipse IDE, and I imagine you would not interested in it…the k-force is weak in this one.
I’m not sure what TextMate/e-Text Editor’s counterparts are in *nix (emacs?). The only time I believe you’d absolutely need to use a mouse is when you’re trying to select a different bundle or when you’re trying to change tab sizes (both of which are accessible in e-text editor through a row at the bottom of the page.
And on a last note, I’ve heard vi and emacs are making a come-back in the Ruby and Ruby on Rails community. If you’re used to the Unix development environment, that may put a bit of a smile on your face…I know it did for me 🙂