我喜欢在ExtraHop工作的一件事是更少的会议和大量的持续开发时间。但是,我很快发现,我很长时间不习惯敲代码了。我已经在ExtraHop上工作了几个星期,我的手腕和手臂感觉不舒服。这些地方,以前都是断断续续不舒服的,但以前限制晚上在家用电脑就可以解决问题了。然而,这次不同了。#TonyGrosinger是ExtraHopNetworks的框架工程师。作为一名刚毕业的大学毕业生,我担心日常工作活动会造成永久性伤害。我开始研究符合人体工程学的键盘和鼠标,希望找到一个万无一失的解决方案。你可以猜到,我没有找到灵丹妙药,我的情况每况愈下。这种不适让我很沮丧,我更担心受伤会阻止我在工作和个人生活中快速轻松地进行创作和交流。介绍一种方法在尝试了几种其他方法并失败后,ExtraHop的一位同事向我展示了一段TavisRudd用他的声音编程的视频。起初,我怀疑这种方法的可靠性和效率。然而,在观看视频后,我确信声音输入是程序员的一个并行选项。Rudd患有类似的疾病,他仔细研究了我刚刚做过的所有类似研究,得出的结论是最好的键盘不足以解决这种痛苦。那天晚上,我在网上寻找通过语音编程的人,寻找技巧和教程。这些都是如此之少,以至于许多人断言这是不现实的。没有那么容易放弃,我开始修补一个支持在Linux机器上进行语音编程的工具包。配置:最难的部分很快就想通了,DragonNaturallySpeaking是听写软件中唯一的选择。他们的产品在语音识别方面遥遥领先,但只能在Windows或Mac上运行。不幸的是,我从未在Wine上成功运行DragonNaturallySpeaking[注1],我不得不在Windows虚拟机上设置命令以代理到Linux主机。我将跳过本文中的一些配置步骤,您可以在我的Github存储库中找到有关如何完成所有操作的详细说明。如果您按照这些说明进行操作,您现在应该能够向您的Linux主机发送听写和示例命令,但离编程不远了。我正在为接下来的两周写语法,大部分过程是这样的:预计将执行一个任务(编程、切换窗口等)。编写让我通过语音执行此操作的命令。测试命令并添加相关命令。重复。这个过程很慢,我希望链接存储库可以帮助您避免从头开始。即使在使用它大约一个月后,我仍然每天多次调整命令。TavisRudd声称有超过2000个自定义命令,这意味着我必须做更多的工作。事实证明,正如Rudd在他的演讲中解释的那样,麦克风是装置中的一个关键点。一个只能听到您的声音的好麦克风将在识别的准确性和速度上产生巨大的差异。我真的很喜欢我正在使用的BlueYeti,但我只能在办公室绝对安静的情况下使用它。使用我目前构建的命令,我可以在窗口之间切换、浏览网页(使用Vimium[注2])、在工作区之间切换,最重要的是,我可以以合理的速度对Python和Go进行编程。它不如使用键盘编程快,但是一旦您掌握了命令的窍门,它就会出奇地高效。我在上面提到的Github存储库中共享的语法适用于我想要的工作流程。我建议您以它们为起点,但要注意计算机识别您的单词的方式可能与我的不同。这些语法也是我经常使用的特定于语言的语法。请不要犹豫,写下您最喜欢的语言。***,语音命令触发器的自定义快捷方式可以在dotfiles存储库的.vimrc文件中找到。语音编程还不完美,但它已经到了成为实用选项的地步。不再遭受手腕和手臂不适的困扰,因为现在有了另一种选择。请随时向我发送拉取请求,以便我们可以继续改进声音编程。注1:Wine项目由BobAmstadt和EricYoungdale于1993年发起,最初的目的是让16位的Windows3.1程序可以在Linux上运行,但是随着计算机和时代的演进,Wine也支持了所有的当前Windows8和64位PC架构的方法。http://zh.wikipedia.org/wiki/Wine注2:像极客一样浏览。http://www.appinn.com/vimium/英文原文:ProgrammingbyVoice:StayingProductivewithoutHarmingYourself翻译自:http://www.labazhou.net/2014/10/programming-by-voice-staying-富有成效的-不伤害自己/
