四肢瘫痪程序员的最佳编程辅助工具

时间:2010-04-26 00:30:21

标签: python robotics

在你得出结论之前,是的,这是编程相关的。它涵盖的情况是“在那里,但为了上帝的恩典,去你或我。”这对我来说是一个全新的领域,所以我在这里要求一些认真的帮助。

一名年轻人,Honza Ripa,在附近的一个小镇从高中毕业两周后做了经典的Dumb Thing - 他潜入俄罗斯河的浅水区,有时C-4/C-5 break叫游泳池休息。在几秒钟内,他从一位出色的高尔夫球手和摔跤手变成了四肢瘫痪者。 (阅读故事...我们所有人都应该如此幸运,因为有一个像Brianna这样的女朋友。)那是10个月前,他已经恢复了对他的右手食指和另外几手的微小控制/脚的动作,没有一个是细粒度的。

他对计算机的完全控制权(目前正在运行Win7,但我们可以根据需要改变它)是通过语音命令。 Honza并不愚蠢。他拥有AP数学和物理学的3.7 GPA。

问题:

  1. 由于他的所有输入都是通过语音命令,他担心编程中特殊字符的优势需要大量冗长的命令。有没有人知道任何专为程序员设计的做得好的语音输入系统?我正在考虑可能是模态的东西 - 例如。你说“Python输入”,它进入宏模式进行类定义,等等。鉴于程序员中的所有RSI,必须有某些东西。它运行的操作系统是什么?

  2. 我打算教他Python,这是我编程和教学的首选语言。是否有任何用Python编写的应用程序/行动者,在支持他的残疾时能够在精神上与他交往?他表达的一个兴趣是股票投资,但对于一个全新的程序员来说,这可能不是一个好的起点。

  3. 有一个很多的环境(Flash,JavaScript等)对于有可访问性挑战的人来说并不是特别友好。我依稀记得(但找不到)一个研究项目,该项目基本上在屏幕环境之上创建了一个覆盖系统,然后允许在屏幕图像上构建宏命令。如果我们能够获得/训练这个系统,我们可以消除使用网络的许多障碍。

  4. 我特别感兴趣的是找到基于Python的开源机器人和机器人假肢项目,这样他就可以同时学习高级编程概念,同时学会解决他自己的一些直接问题。

  5. 我已经对此进行了大量的谷歌搜索,但我知道有些东西我不知道。我要求SO社区站到这里。我知道这个小组有答案,所以让我听听他们! 压倒我我有机会在这样一个改变生活的事件之后我们任何人可能/需要继续编程。

    更新:我刚刚注册了computingforquads.org,我将为各种各样的问题创建各种解决方案的页面。到目前为止,感谢您的帮助,并保持这些答案!

7 个答案:

答案 0 :(得分:92)

我有运动损伤,在没有严重疼痛的情况下,我不能输入超过几个字符。

相反,我使用emacs和Dragon NaturallySpeaking一起使用。 我已经编写了宏和脚本来帮助它。该系统并不完美,但它的工作原理。 我主要使用C ++编程,但我也使用python。

如果你愿意,我会帮助你。 我必须警告你,需要几个月的时间来习惯于对文本软件进行语音培训并对其进行培训。此外,我不是母语为英语的人,我肯定会妨碍

不要绝望,有解决方案。

这里有emacs和Dragon文件的链接(遗憾的是还没有记录)

http://code.google.com/p/asadchev/source/browse/#svn/trunk/home/Dragon

http://code.google.com/p/asadchev/source/browse/#svn/trunk/emacs/elisp

另外,如果您需要更多信息,我的电话号码是515 230 9363(美国,爱荷华州)。 如果我能

,我将很乐意帮助你

答案 1 :(得分:19)

值得查看Dasher Project,即使是严重残疾,也可以快速合理地输入文本。 Dasher建立在语言的概率模型之上,因此更容易使话语更容易进入系统。演示系统附带了令人印象深刻的自然语言集合。应该很容易获得用Python编写的大型程序集,使用语料库加载Dasher,并创建用于输入Python程序的专用版本。

答案 2 :(得分:8)

这不是任何专业软件的一部分,但是当我看到这个时,我认为使用眼动追踪或最小鼠标移动进行文本输入会很好。请参阅Ken Perlin's Processing page,然后查看“笔输入”的小程序。

答案 3 :(得分:5)

我认识一个印度一个村庄的人是截瘫患者,他使用Dragon Speech to Text软件在她的电脑上写字。我不知道它对程序员来说有多适合(她不是程序员),但这是一个开始。

您可能还想查看Natural Point。它是一只眼控鼠标,可能有助于Honza

希望这有帮助

答案 4 :(得分:3)

iPython完成

在python方面,iPython显示参数,函数等,并具有命令完成功能。也许它也可以定制,以响应各种输入设备?

  

http://ipython.scipy.org/moin/

答案 5 :(得分:1)

可能有帮助的一件事(我从this question获得)是http://shorttalk-emacs.sourceforge.net/。它似乎是emacs和语音识别之间的接口。关于语言,我建议使用Lua而不是Python。它有更自然的英语流程。

答案 6 :(得分:1)

我知道这个问题现在很老了。我想知道Honza在编程方面的情况如何。听到回来会很高兴。

为了它的价值,我受到了RSI的困扰,现在尝试尽量减少键盘的使用和特别是鼠标。

我自己的语音识别经验是这些东西能够运作。我使用Windows的Windows 7内置语音识别软件(WSR)。我还用语音手指(http://voicefinger.cozendey.com/)来帮助移动鼠标指针。我要提到的一些要点是:

了解快捷方式。使用快捷方式几乎可以做任何事情,并且在“打字模式”下使用语音识别功能很有效(见下文)。

使用打字模式。除非你在说明文字,否则这对于说出电脑的快捷方式或拼写奇怪的单词非常有用。有趣的是,它并不是WSR明确的“广告”功能。

拼音字母。为了充分利用打字模式,请学习拼音字母:http://en.wikipedia.org/wiki/NATO_phonetic_alphabet使用任何形式的语音识别时,如果没有这种语法,你就无法实现。

VIM。(或者我认为是emacs - 不确定)。 Vim非常适合编辑文本而无需触摸鼠标。这使得它非常适合使用WSR编辑文本。我自己只是一个VIM初学者,但发现它非常有帮助。

网页浏览。根据我的经验,没有鼠标,网页浏览仍然是一件非常困难的事情。有太多情况需要您使用鼠标悬停以获取基础命令。这是一个很遗憾。不过有一些非常好的Firefox插件可以帮助您在没有鼠标的情况下进行浏览。

  1. 无鼠标浏览:https://addons.mozilla.org/en-us/firefox/addon/mouseless-browsing/这是一个简洁的小工具,有许多配置选项可以将数字放在所有链接旁边。然后,您可以键入这些数字以激活链接
  2. Vimperator:http://vimperator.org/这比无鼠标浏览更进一步。它基本上给你完整的vim控制firefox。我发现这比无鼠标浏览效果更好,但在更改默认Firefox行为的情况下可能会很烦人。
  3. 这些只是我个人的经历。很高兴听到Honza如何进展。