我是盲人,但我在谷歌工作,主要负责更改排名算法。我的生活经验告诉我,我的编程与我的非盲人同事没有太大不同。我通常使用文本编辑器(Emacs及其emacspeak扩展,它使Emacs会说话)进行编码,并使用浏览器“查看”Google内部页面上的文档和资料。这里的主要区别在于我们要么听屏幕上的内容,要么在盲文显示器的帮助下阅读。我不能对盲文显示器发表任何评论,因为它对我来说太贵了,我负担不起,但我可以谈论我是如何编程的,而不是看,而是听。靠耳朵编程最难的部分是你需要记住很多东西。向下滚动并逐行收听代码。它可以一个字一个字地读,也可以一个字一个字地听。关键是你需要在特定时间理解屏幕上的代码。您不能仅通过查找函数定义中传递的变量名来开始编程。你必须记住它。如果你想再次检查函数定义,就像我会设置一个标志来查找定义,阅读它,然后回来。如您所见,这可能会花费宝贵的几秒钟,因此提高记忆力非常重要且有效。我喜欢使用emacspeak,因为它让我在使用C++等语言编程时可以利用很多很酷的功能。它的语音模式概念,在阅读变量、函数和语言的不同元素时可以产生不同音调的声音。这个功能可以让我们更容易识别目标,所以我认为这就是我们的“代码高亮”。***,让我简单明了地告诉你:盲目程序员不使用缩进。我们通常在完成代码后设置缩进,因为它对我们没有帮助。那么,你可能会问:python呢?我也很喜欢Python,缩进部分并没有让我写出的代码与众不同。我有一些自己的技巧,比如在每个缩进块的末尾跳过一行,这样我就可以立即知道代码块结束了。在阅读别人的代码时,我可以设置屏幕阅读器的选项来告诉我缩进级别,但我觉得这有点烦人,因为它阅读的每一行,都会一丝不苟地报告当前行的空格数。
