【问题标题】:Best programming aids for a quadriplegic programmer四肢瘫痪程序员的最佳编程辅助工具
【发布时间】:2011-02-12 05:22:27
【问题描述】:

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

一个年轻人Honza Ripa,在高中毕业两周后,在附近的小镇做了经典的傻事——他潜入俄罗斯河的浅水区,拥有一个C-4/C-5 break,有时也被称为游泳池休息。在几秒钟内,他从一个出色的高尔夫球手和摔跤手变成了四肢瘫痪。 (阅读这个故事……我们所有人都应该很幸运有一个像布丽安娜这样的女朋友。)那是 10 个月前的事了,他只恢复了对右手食指和其他几只手的少量控制/脚部动作,没有一个是细粒度的。

他通过语音命令完全控制他的计算机(当前运行的是 Win7,但我们可以根据需要进行更改)。洪扎不傻。他在 AP 数学和物理方面的 GPA 为 3.7。

问题:

  1. 由于他的所有输入都是通过语音命令,他担心特殊字符在编程中占主导地位将需要大量冗长的命令。有谁知道专为程序员设计的任何做得好的语音输入系统?我正在考虑一些可能是模态的东西——例如。你说“Python 输入”,它会进入一个宏模式来进行类定义等。鉴于程序员领域的所有 RSI,那里一定有东西。它在什么操作系统上运行?

  2. 我计划教他 Python,这是我编程和教学的首选语言。是否有任何应用程序/任何东西是用 Python 编写的,并且特别适合在支持他的残疾的同时让他精神上参与?他表达的兴趣之一是股票投资,但这对于一个全新的程序员来说可能不是一个好的起点。

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

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

我已经对此进行了大量的谷歌搜索,但我知道有些东西我遗漏了。我要求 SO 社区在这里站出来。我知道这个小组有答案,所以让我听听! 让我不知所措在这样一个改变生活的事件之后,我们中的任何人都可能拥有/需要仍然编程。

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

【问题讨论】:

  • 也许 superuser.com 的好人对无障碍软件有很好的洞察力。不过,不能说更多与编程相关的工具。抱歉,我帮不上忙。
  • 嗯,我建议宁愿使用一些自定义构建语言,也不要尝试构建适合 Honza 的东西。像 COBOL 这样的语言实际上是基于关键字的并且是“人类可读的”(并且可以说出来)。与机器人一样,为什么不从乐高开始呢?恕我直言,一些带有海龟的语言(机器人 - 在屏幕上移动并可以画线的东西)和简单的语法可能非常好。我自己编程有一些困难,我明白“与众不同”没什么,但在这种情况下,这对我来说是合理的。
  • 我们之前已经讨论过语音编程(基本上,它仍然是粗糙的、实验性的,并且很大程度上不受支持)。见stackoverflow.com/questions/1408874/…stackoverflow.com/questions/87999/…
  • 遗憾的是,我对大部分问题都没有很好的答案。不过,我在文章中注意到,食指的移动足以让他控制轮椅上的小操纵杆。您可能希望寻找一个小型操纵杆式 USB 鼠标。我以前在外面见过一些。虽然不是特别便宜(一件物品的容量太小),但它作为一种额外的输入设备可能会很有帮助。
  • @RCIX:我理解并感谢您的热情。像这样的在线误解至少可以追溯到 1973 年的 PLATO IV Notes,在那里我们了解到打字并不能传达重要的肢体语言和语调。 1974 年发生了一场火焰战争(源于一场误解),这可能是第一篇关于基于计算机的社会环境中的人际互动的硕士论文的基础。 6 月 2 日至 3 日,将在加利福尼亚州 Mt. View 的计算机历史博物馆举行 PLATO @ 50 会议。周围会有很多灰胡子蹒跚而行。 :-)

标签: python robotics


【解决方案1】:

我知道这个问题现在已经很老了。我想知道 Honza 在编程方面的进展如何。很高兴收到回复。

不管怎样,我患有 RSI,现在尽量减少使用键盘和尤其是鼠标。

我自己的语音识别经验是这个东西确实有效。我使用适用于 Windows 7 (WSR) 的 Windows 内置语音识别软件。我还使用语音手指 (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 行为的情况下可能会很烦人。

这些只是我个人的经历。很高兴听到 Honza 的进展情况。

【讨论】:

    【解决方案2】:

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

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

    希望对你有帮助

    【讨论】:

    • Honza 目前使用 Dragon 还算不错。我们特别专注于处理在编程中输入特殊字符的冗长方式。
    【解决方案3】:

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

    【讨论】:

      【解决方案4】:

      带补全的 iPython

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

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

      【讨论】:

        【解决方案5】:

        我有运动损伤,我不能输入多个字符而不会感到严重疼痛。

        相反,我将 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(美国,爱荷华州)。 如果可以的话我很乐意帮助你

        【讨论】:

        • 请不要让这个被选中,因为“答案”会阻止您发布更多可能性。我还要补充一点(喘气)自 1980 年以来我一直是 vi(现在是 vim)人,所以我必须创建一个“vi 宏集”来补充 Andre 已经完成的工作,并且可能还有一个 Notepad++ 集或 Aptana 集(Eclipse + PyDev)。
        • 哇,aaa,直到我读了你的帖子我才知道。到目前为止我看到的所有帖子都没有显示...至少我知道 Dragon NaturallySpeaking 对你很有效。
        【解决方案6】:

        这不是任何专业软件的一部分,但是当我看到它时,我认为它对于使用眼球运动跟踪或最小的鼠标移动来输入文本很有用。请参阅Ken Perlin's Processing page,并查看“笔输入”的小程序。

        【讨论】:

        • 谢谢!很棒的链接!这对于光标控制可能特别有用,我相信这对他来说仍然是一个挑战。直到您真正必须解决这些类型的问题时,您才会开始了解,其中一些人每天都在攀登珠穆朗玛峰,只是为了做我们不以为然的事情。
        【解决方案7】:

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

        【讨论】:

        • 很好的建议!我是 80 年代的老神经网络专家,这听起来很有前途。
        猜你喜欢
        • 2021-11-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-10-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多