视觉是大多数程序员认为理所当然的感官之一。大多数程序员会花几个小时盯着电脑显示器(尤其是在他们全神贯注的时候),但我知道有些程序员是盲人(比如目前在谷歌工作的T.V. Raman)。

如果您是一个盲人(或逐渐失明),您将如何设置您的开发环境来帮助您编程?

(每个回答一个建议。这个问题的目的是把好的想法带到最高层。此外,屏幕阅读器可以更早地阅读到好的想法。)


当前回答

我是盲人,几个月来我一直在使用VINUX(一个基于Ubuntu的linux发行版)和SODBEANS(一个netbeans版本,带有一个名为SAPPY的插件,添加了TTS支持)。 这个解决方案工作得很好,但有时我更喜欢启动Win XP和NVDA来启动FireFox上的许多页面,因为当你试图打开超过3个FireFox窗口时,Vinux工作得不太好……

其他回答

harald van Breederode是荷兰著名的Oracle DBA专家、培训师和演讲者,他是一位盲人。他的博客为视障人士提供了一些有用的建议。

一个开始的地方是linux项目:

http://leb.net/blinux/

该项目描述了如何获得Emacspeak(文本到语音的编辑器),并提供了许多其他资源。

我曾经和一个人一起工作,他的视力几乎阻止了他们使用显示器——他们用屏幕阅读器软件做得很好,花了很多时间使用基于文本的应用程序和shell。

维基百科的屏幕阅读器包列表是另一个开始的地方:http://en.wikipedia.org/wiki/List_of_screen_readers

我认为这在使用结对编程原理的极限编程中会很有效。如果你是为盲人开发软件,那么谁会比那些真正了解业务需求的人更适合做这个软件呢,所以我认为这一点都不牵强。

至于写代码,除非有某种反馈,否则我认为一个人可能会在语法上挣扎。音频反馈可能会有所帮助。

NVDA是一个很好的开源屏幕阅读器。

来自南伊利诺伊大学爱德华维尔分校和华盛顿州立大学的一组学生正在为盲人开发一种编程语言:

http://www.youtube.com/watch?v=lC1mOSdmzFc