我们团队的色盲成员


28

我的团队非常依赖于代码中的颜色来概述需要使用的功能(我们为需要注意的代码行加色)。我们有一个色盲的密友,想加入我们的团队。在不使用颜色的情况下,我们能做些什么来突出需要满足的需求?我们的团队中大约有25个人都习惯了线条着色系统,我们发现它是最有效的。


11
他有哪种类型的色盲?
Thomas Owens

33
你输入一个字处理器编写代码.. O_O?
藤蔓

40
将其用作课程:永远不要仅靠颜色。我上大学时编写了第一个(也是最后一个)依赖于颜色的程序。当我在课堂上介绍它时,有人举起手说,他们有一个色盲朋友,他们很可能无法使用它。在这个行业中,您必须要意识到这一点。
riwalk

19
我认为由于色盲而拒绝雇用您的朋友会违反某种联邦或州法规。
crasic 2011年

10
您的系统无法很好地扩展(我很惊讶您遇到这个问题之前只有25个人)。色盲不是非常罕见的情况。每12个人中就有1个人拥有它。正如其他人指出的那样,即使出现偏见也会使您陷入法律麻烦。
juan2raid 2011年

Answers:


44

向他展示您用来突出显示代码的颜色,并让他告诉您他不能区分的颜色。

然后将这些颜色更改为他可以使用的颜色。


9
如果可以将进行着色的内部工具修改为具有用户定义的配色方案,那么它也将起作用。
crasic 2011年

6
尽管这似乎是一个不错的解决方案,但是过分地依赖颜色,即使是那些对他而言可识别的颜色也可能是一个问题。色盲人通常永远不会学会在颜色上清晰地区分事物,因此,即使他们能够轻松区分颜色,也不足以像我们全色视觉人群那样轻易地内化意义。
格雷格·杰克逊

7
选择新颜色只会解决这个问题。理想情况下,除了颜色之外,您还可以使用符号或字体粗细或其他方式。这样做的一个方法是巴尔克和白色,然后加彩后设计
JK。

8
尽管这被选为最佳答案,但老实说它并没有考虑色盲的真正含义。这是一个复杂问题的幼稚解决方案。
格雷格·杰克逊

6
这不能解决问题:当另一个色盲想要稍后加入时会发生什么?
o0'。

56

我经常与之合作的开发人员之一是colorblind。问题不仅在于他不能区分颜色,还在于他对颜色不怎么想。他和其他色盲人都学会了使之成为问题,以至于即使他们能分辨出颜色,颜色也成为区分事物的不良工具。我们之前曾谈到过Xbox游戏-一些写得不好的游戏只能通过颜色来区分要按下的按钮。即使他们选择了他能分辨的颜色,他的大脑也没有设置要注意颜色并在上面区分。

您当前的系统已损坏。关于这一点,没有两种方法。如果他的色盲甚至引发了关于他与您一起工作的问题,那肯定是错误的。也许有一些学习要和他一起工作(例如,如果我的朋友进行视觉设计工作,我的朋友将不得不向我们验证颜色),但是在决策中根本不应该涉及到它。通过帮助您非常轻松地验证应用程序,他还可以成为开发可访问应用程序中非常宝贵的资源。

除了我的色盲朋友之外,我在大学期间从事的一项大型设计项目是针对色盲客户的非常直观的应用程序。我们不认为这是一个限制,而是一个学习的机会。我们发现了一个名为Vischeck的出色工具,该工具可以模拟色盲人们看到的东西(所有种类)。现在和您的朋友一起学习这些技术是一件好事,他可能会在您上船时随它一起滚动。如果您等到某个候选人不能仅仅因为他看不到与您一样的颜色而被聘用(这不会像您这样愚蠢地打动您吗?),您将陷入各种困境麻烦。

现在,这并不是说您必须消除颜色。如果他们为您工作,那就太好了。只是不要使它们成为在团队中传播信息的主要方法,而是使它们成为额外的额外帮助。考虑在代码编辑器中突出显示语法。没有它,该代码是完全可读的。即使是完全不关心色彩的人也可以使用编辑器,而绝对没有问题。这些颜色是为了使使用它们的人们感到方便,仅此而已。


3
好答案。关于您不考虑颜色的观点:我是色盲的,几年前,我们的电视坏了,一直切换到“棕褐色”色调,而不是全彩色。我的妻子完全感到困惑,因为我似乎没有注意到:)我仍然以某种方式仍将草视为“绿色”,将天空视为“蓝色”等。人们发现有些奇怪的地方是,有时我不知道什么颜色-那就是,你可能会指向一个绿色的,我可能会认为它是绿色,黄色,棕色或粉红色的一方-但不能确定其中
Cocowalla

2
我是红色/绿色色盲,我们有这样的电视很多年了,但我从未意识到它坏了。在我居住的锡拉库扎(Syracuse)附近,有一个历史悠久的爱尔兰小镇,交通信号灯倒置(绿色在最上面),我必须非常小心驾驶,以免我闯红灯。闪烁的琥珀色(无论是哪种颜色)也是一个问题,除非我和车上有人在一起,否则我总是会一直为他们停下来(或至少慢下来),因为我无法从闪烁的红色告诉他们。
吉姆·努特

17

我不是律师或人力资源专业人员,但我的话是这样的:“只有大约25人的团队,实施完全不同的系统是不切实际的”,这对ADA规则造成了危险。

除非全色视力是工作的特定要求,否则您不能区别色盲的残障,并且必须进行合理的调适以允许他工作。在歧视诉讼中,不切实际不是辩护,尽管我再说一遍,我不是律师。

诸如使颜色可配置之类的简单操作就足够了,可配置的显示选项只是常识。


1
不切实际的东西怎么不是防御?轮椅上的某人是否应该被接受从事繁重的工作?
罗布

11
Rob:我相信第二段的第一句已经解决了。“除非……是您不能歧视残疾人的一项具体要求”。在您的示例中,繁重的工作是必需的。OP中的颜色编码不是-这里有色盲,甚至有盲人作为程序员工作。
MetalMikester,2011年

14

声音。形状。字体 样式。尺寸。文字评论。

您不能独自想到这些吗?如果您无法提出其他选择,为什么有人要与您合作?

(是的。声音。盲人有很多屏幕阅读器和自适应设备。很多。您找不到一个吗?真的吗?)


1
好吧,显然,与大约25个人组成的团队合作,实施完全不同的符号系统是不切实际的。听起来很有趣,解释一下吗?
dbramhall 2011年

3
形状可能涉及诸如突出显示具有不同边框样式(双线,虚线等)或图标的线条的技术。
FrustratedWithFormsDesigner

7
+1:这是任何视觉设计的基础。您不能仅仅依靠颜色。依靠颜色和其他东西。从图标到文本符号再到样式的任何东西。
Arseni Mourzenko 2011年

8
@dbramhall:“实现完全不同的符号系统是不切实际的。” 假。首先,通常有视力的人确实可以学习新知识。这简单。他们不是天生的愚蠢。第二,这被称为“工作场所住宿”,通常是法律规定的。如果您不足够照顾新员工,又不愿意再培训有远见的同事,则只需将其说明为一种雇用做法。您将无法容纳,因为您拒绝进行任何更改。我发现您的评论引人注目,因为它无视所有相关人员。
S.Lott

10

留下有用的评论是怎么回事?真的,我认为仅留下诸如“这需要一些工作”,“应重构”,“待实施”或“在此处完全破坏,立即修复”之类的注释会比一些疯狂的配色方案有效得多。 。书面评论可以被任何人(即使是盲人,如果他/她拥有屏幕阅读器)也可以立即理解。另外,您可以在常规文本编辑器中进行此操作,而不是新手必须学习如何使用的一些内部工具。


8

这个人是完全色盲的吗?这是非常罕见的。色盲的大多数情况是相当具体的,即红色和绿色看起来相同,但所有其他颜色都可以使用。您可以选择一组明确的颜色,即使对于特定种类的色盲(甚至可能是几种类型)也是如此。

另外,颜色也可以用简单的符号进行补充(无论如何如何向文本文件中添加颜色?)


我认为他有Tritanopia(不引用我),我们正在使用内部开发的工具。
dbramhall 2011年

4
没有you可以选择一组颜色,但是he可以。对色盲敏感的人通常无法想象色盲的外观。这是一些示例图片
用户不知道

7

您应该使用语义标记而不是彩色线。
最简单的方法是使用HTML:

doFoo();
<span class="refactor">doUgglyThing();</span>
doBar();
doBaz();
<span class="debug">makeBug();</span>

然后,您让他修改样式表以满足他的需求。而且这纯粹是文本的,因此适用于版本控制。
如果您愿意花一点时间,可以简单地将一个小型的轻量级HTML编辑器放到JavaScript中,为您完成此操作。
或使用注释突出显示不同的部分,然后编写一个小的显示工具,使您可以自定义格式。这可能是最好的选择,因为这意味着所有这些信息都直接在您的代码库中,并且所有信息都可以保存在一个地方。就像是:

doFoo();
doUgglyThing();//REFACTOR
doBar();
doBaz();
makeBug();//DEBUG

最后,准备使用的选项是使用语义文本编辑器,例如Ulysses。您可以标记和标记不同类型的节,并为节类型分配格式。您还可以评论不同的部分,依此类推。它还具有一个HTML导出器(以及其他功能),因此它实际上非常适合编写文档。


7

添加一个附加系统,该系统传达的信息与您使用颜色提供的信息相同。

可能是:

  1. 符号。
  2. 尺寸
  3. 地点。

还是其他的,真的。但是,这里令人不安的问题是,您似乎认为它们构成了“完全不同的系统”,事实并非如此,您现有的用户可以选择完全忽略它们并依靠颜色(如果愿意)。


1
另外,作为聋哑的开发人员,我对于无法更改或添加最小的细节感到震惊
Arafangion 2011年

7

为每个任务分配一个数字等级,并保持列表排序。

Rank  Description
--------------------------------------------------------------------------
1     Find a way to make our task list readable by the new guy
3     Gain some rep by asking a question on Programmers
9     Convince the manager that 25-people team might need an issue tracker

3

派对晚了,但是:Color Oracle是一种程序,可以在您的计算机上运行,​​并使您的桌面看起来像具有任何不同类型色盲的人。在IDE打开的情况下运行它,并调整用于各种操作的颜色。从某种意义上说,他们根本无法感知任何色差,因此很少有人完全是色盲。您可能可以选择适合此人和您的团队的一组颜色。


1

最简单的方法可能是花几个小时,然后为每种颜色添加一个新符号(lik3#带有红色; @@表示蓝色,等等),然后将其放在彩色文本附近的注释行中。这样,色盲人员就可以搜索所有#并找到所有红线。他无法扫描页面并且颜色突然出现在他身上,但是无论如何文本信息对他来说都是无法做到的(颜色确实是对人类的强大感官体验)。

但我同意您可能应该开始过渡到问题跟踪器;听起来您好像已经拼凑了一些可能效率低下的东西(尽管我当然还没有看到您所拥有的东西)。


1

不必费神,但是实际上,您的代码不需要太多依赖颜色。

通常,不要依赖强制性的编辑系统。
(IDE可能是可以忍受的,但只有在生产率方面给予足够的权衡

建立适当的缩进约定已经非常困难,耗时,存在争执并引起不满。强制使用颜色会使大多数我认识的人骑上路障


0

从评论中,我看到您正在使用内部开发的工具。鉴于此,解决方案很简单。逐行浏览代码,并在每条影响代码显示方式的行上标记为需要进行重大改进。然后,修复您的代码。您的工具提供的价值不在于您选择的特定配色方案,甚至不在于整个团队目前使用的一种配色方案。价值在于您可以以有意义的方式标记代码。这种含义的表达方式应该是完全可配置的。将这份工作视为改善产品质量的可喜机会。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.