php 复选框-惊讶!这位盲人程序员是如何编码的

2023-08-22 0 1,039 百度已收录

编译:伯乐在线/孙腾浩

我想当你第一次听说我的电台时,总会感觉缺少了一些东西。 没有显示器或键盘,但有人正在敲击键盘并盯着某处。

这就是我,我的朋友可以证明我很好。 我是位于坦佩雷(美国西北部城市)Vincit 办公楼的一名软件开发人员。 我的双眼都被截肢了。 在这篇文章中,我将讲述一些关于我的工作的事情。

你真的看不到他们吗?

具体来说,我感知到阳光和其他明亮的光,但仅限于那种。 虽然,这对我的工作没有帮助。

php 复选框-惊讶!这位盲人程序员是如何编码的

你的工作内容是什么?

和大多数人一样:忙的时候写代码,闲的时候和朋友一起发誓。 我做全栈项目,专注于前端。 兼职访问顾问 - 或主管,随你怎么称呼。

你如何使用你的笔记本

我使用的笔记本电脑是运行 Windows 10 的普通计算机。正是其中的软件让这一切变得神奇。 我使用一种称为屏幕阅读器的程序来访问我的笔记本。 屏幕阅读器窃听屏幕上的更改,并以盲文(需要单独的盲文设备)或合成声音向用户显示它们。 这不是你现在看到的各种智能助手的合成声音。 我使用机械声,每分钟可以说 450 个短语。 相比之下,汉语的正常语速为每分钟120-150个短语。 我有一个怪癖:我会说德语和英语,并且我用荷兰语合成器阅读德语,我已经习惯了,因为旧的屏幕阅读器不够智能,无法在语言之间切换。 下面是一个例子,就是读了这一段,我就明白了。

php 复选框-惊讶!这位盲人程序员是如何编码的

德国合成器的声音是这样的:

键盘对我来说不是特别有用,所以我只使用鼠标。 这里大家应该很熟悉我使用的命令:方向键和tab键控制窗口中的联通,alt+tab切换窗口等等。 屏幕阅读器也有很多自己的快捷方式,例如读取活动窗口的不同区域或切换某些功能。

阅读网页和其他低分辨率文档很有趣。 您会看到,屏幕阅读器以块的形式呈现信息。 每个块可以是一行、一个短语、一个字母或文本片段。 举一个反例,如果我在网页上按向上箭头键,我会看到页面上的下一行。 我无法像正常人一样用鼻子阅读屏幕。 相反,我会一点一点地查看内容,或者跳过我不感兴趣的部分。

语音或盲文不概述窗口的显示布局。 信息以线性形式呈现给我。 如果您将网页复制并粘贴到记事本中,您就可以看到我听到的网页是什么样子的。 也就是说,去除多行文本的大部分格式。 但屏幕阅读器可以捕获网页上的 HTML 语法,因此我也可以理解超链接、标题、表单等。事实上,如果一个非复选框元素显示为复选框,我不知道它是一个复选框。 我以后会写一篇文章详细描述这些内容,记住我刚才举的是一个“反人类”的例子。 (译者注:我突然感到羞愧和愧疚,深深明白了一个道理:不要用各种有意义的传统标签来黑布局和风格,也不要懒得使用各种有意义的传统标签,因为CSS的力量。自我鼓励)

php 复选框-惊讶!这位盲人程序员是如何编码的

我花了很多时间在命令行上工作。 事实上,我一般使用浏览器和编辑器,很少使用其他图形应用程序。 与这些为键盘用户构建的图形界面相比,我发现使用命令行来处理手头的工作效率更高。

既然我如此热爱命令行,为什么要选择Windows这个不以命令行闻名的操作系统呢? 答案很简单:Windows 是最方便的操作系统。 NVDA 是我选择的屏幕阅读器,它是开源的php 复选框,并且比其他阅读器维护得更频繁。 如果上天再给我一次机会,我可能会选择Mac系统,因为我认为它是易用性和功能性平衡的标杆。 不幸的是,Mac 的屏幕阅读器 VoiceOver 经历了漫长的发布周期并被遗忘,而且它的导航模型并不适合我独特的工作方式。 实际上,Gnome 桌面有一个屏幕阅读器,尽管用户很少,但维护得相当好,但有一些问题不太适合我的日常工作。 所以,我选择Windows。 GitBash 等诞生于 GNU 的命令行工具填补了 Windows 外部命令行的空白。

你如何编写代码

我花了很长时间才明白为什么你认为这个问题是如此深刻。 还记得我之前说过的关于逐行阅读文本的内容吗? 我也是通过这些方法来阅读代码的。 通常我会跳过无用的台词,或者只听半行来获取内容,但是当我需要了解完整的信息时,我必须像读小说一样阅读所有内容。 实际上,我在阅读整个代码库时遇到了困难。 在这些情况下,我会在脑海中形象化一部分代码:这个组件输入x并返回y,我不需要关心详细的逻辑。

php 复选框-惊讶!这位盲人程序员是如何编码的

这些阅读方法让我和一般朋友的工作方法有些不同。 举个反例,在代码审查时,我喜欢查看原始 diff 输出,而 diff 的并排显示不适合我,而且还会分散注意力。 在更改的代码行上使用符号 + 和 – 比使用不同的背景颜色要好得多,不是因为我不知道颜色名称,而是因为在新行中,读取单词“plus”更好比阅读“用复杂阴影突出显示绿色”花费的时间更少。 (嘿,你的 Gerrit(代码审查工具)呢)

你可能认为缩进和其他代码格式与我无关,因为它们都是基本的视觉问题。 事实并非如此,正确的缩进对我的帮助和普通开发人员一样多。 当我阅读盲文代码时(这比语音效率高得多),我像其他普通程序员一样理解代码的结构。 当我进入有或没有缩进的代码部分时,我也会收到语音警报。 这些信息帮助我在脑海中描绘出代码结构。 事实上php 复选框,我学的第一种语言是 Python(PHP 不算),它强制代码缩进,这对我来说不是问题。 我强烈推荐干净、统一的编码风格,原因有很多,其中之一就是不要让我的生活看起来更困难,好吗?

你喜欢哪个编辑器?

剧透警告:这个答案不是以 V 或 E 开头(我什至在命令行中使用 Vim 来编写 gitcommit 消息和其他注释。我认为我在这场圣战中保持中立)(译者注:Vim 和 Emacs Stem) 一年前我认为 Notepad++ 是最好的,它是一个轻量级、精心设计的文本编辑器。 但一年前我还没有接触过大型Java项目。 当我接触到这些项目的时候,就意味着我应该在Notepad++和rationality之间做出选择。 最终我选择了理性,放弃了Notepad++,转向了IntelliJIDEA。 从那时起,IntelliJ IDEA 就成为我选择的编辑器。 曾经我对各种IDE抱有深深的反感,大多数在纯按键操作下都显得繁琐且低效。 如果我眼力好的话,我早就跳到IDE阵营了。

但你可能会问,你为什么选择 Notepad++。 还有许多其他更高级的轻量级编辑器,例如 Sublime 或 Atom。 原因很简单:屏幕阅读器很难访问它们。 对于 Vim 等文本编辑器也是如此。 我使用的屏幕阅读器在支持命令行程序方面存在问题。 在此编辑器上处理少于提交信息的文本很困难。 不幸的是,可用性决定了我仍然可以使用哪些工具。 虽然工作效率不高,但是问题不大。

你写过后端代码吗?

你应该认为后端开发与视力有关,注定会错过盲人程序员。 基本上是这样。 我从不自己制作概念原型。 我做的项目总是需要立即添加接口和功能。

不过,我也完成了 Angular 和 React 的工作任务。 怎么会发生这种事呢? 现在许多应用程序都是基于浏览器的。 例如,我花了两周时间减少了对 AngularAPP 的国际化支持。 我不需要做任何视觉上的改变。

我发现对于像我这样的开发人员来说,像 Bootstrap 这样的库是天赐之物。 感谢网格系统(Bootstrap 的响应式布局解决方案),我可以自己构建一个粗略的界面。 即便如此,我对界面所做的更改在呈现给用户之前始终必须经过一双耳朵的检查。 所以,总而言之,我可以在一定程度上做一些后端开发,至少不会和表现层有太大的关系。

还有什么没有提到的?

虽然这篇文章里还有很多东西没有表达出来。 正如上面所承诺的,我将尽力写一篇关于制作无障碍网页的艺术的文章,因为说得不够多是我讨厌的事情之一。 我不会半途而废,所以请继续关注。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悟空资源网 php php 复选框-惊讶!这位盲人程序员是如何编码的 https://www.wkzy.net/game/140461.html

常见问题

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务