在线调查中的一个故障:单词 'yes' 被替换成了 'forks'
在 Pew Research Center,我们经常要求参与调查的人们提供关于他们体验的反馈。调查问题是否清晰?是否引人入胜?是否政治中立?
虽然我们收到了各种各样的调查反馈,但我们对 2024 年在线调查中的一条评论感到惊讶:“你把 YES 拼写成了 FORKS 好多次。”
紧随其后的是几条类似的评论:
- “请检查[the]答案选项。我的每个‘yes’答案都因为某种原因被列为‘forks’。例如,不是 yes/no,而是 forks/no。”
- “我的电脑在你的答案选项中遇到了一些困难。例如,对于是或否的答案,我的显示屏显示的是‘forks’。真奇怪。”
对这些评论感到困惑,我们决定进行调查。我们发现了一个在线调查中真实存在的问题:至少从 2023 年初开始,一个奇怪且令人震惊的技术故障——当然,也是一个搞笑的故障——开始出现在一些组织的在线调查和表格中,包括我们的 2024 年调查。一些 Reddit 用户分享了截图,这些截图来自各种调查,其中本应提供“yes”和“no”选项的问题,实际上提供了“forks”和“no”的选择。
虽然对我们自己的调查的影响(幸运的是)很小,但我们发现这个问题有可能比仅仅是“yes”变为“forks”更为广泛。
在本文的其余部分,我们将更详细地描述这个 bug,并解释我们如何确保在 2024 年调查中收集的数据仍然可靠。
错误的原因
我们发现了导致“forks”错误的两个相互关联的问题。
首先,我们的 2024 年在线调查的底层编程中的某些东西导致 Web 浏览器认为调查网页可能是西班牙语,即使它是英语。从技术上讲,这是由“lightbox popup”引起的,这是一种设计功能,允许广告——或者在我们的例子中,调查说明——在受访者点击提供额外调查说明的链接时在页面上弹出。一些浏览器检测到 lightbox popup 包含不同的语言,从而触发本机自动翻译功能。
对于一些受访者来说,这促使他们的浏览器认为我们的调查是用英语以外的语言编写的(即使实际上它是英语),并询问他们是否希望将页面翻译成英语——或者,我们认为,自动尝试将页面翻译成英语。
我们发现的第二个问题是,Google Translate 包含一个奇怪的错误。如果你告诉它“yes”是一个西班牙语单词,然后要求它将“yes”翻译成英语,你得到的翻译是“forks”。
这两个问题结合在一起,因此在某些情况下,Google Chrome 会自动尝试将我们的调查网页从“西班牙语”翻译成英语。由于调查已经是英语,这基本上没有任何作用,除了“yes”到“forks”的翻译之外。但调查也发生了一些其他小的变化。
翻译还将问题“截至今天,你更lean向 Republican Party 还是 Democratic Party?”改为“截至今天,你更read向 Republican Party 还是 Democratic Party?”(“Lean”是西班牙语动词 leer 的变位形式,意思是阅读。)
其他变化更加微妙,例如我们在复制错误时注意到的首字母大写错误。我们没有看到任何调查参与者提到任何这些其他问题。
我们如何解决这个谜团
在收到关于我们 2024 年调查中“forks”错误的第一个反馈后,我们的供应商——负责编程我们的调查并处理我们与受访者互动的公司——立即检查了调查的编程,并确认代码中任何地方都没有出现“forks”这个词。
我们之前也对调查进行了广泛的测试,然后才将其发送给受访者。这涉及我们的几名工作人员反复进行调查,就像他们是受访者一样,寻找错别字或问题逻辑和随机化中的其他错误。他们在不同的设备和不同的 Web 浏览器上检查了它,以确保一切都按应有的方式显示。这些测试人员都没有在调查中观察到“forks”这个词。
当我们收到受访者关于“forks”问题的其他评论时,我们开始担心并进入问题解决模式。我们采取了以下步骤:
- 我们的供应商反复检查了编程,并毫无疑问地确认“forks”这个词没有出现在编程的任何地方。
- 我们进行了互联网搜索,看看是否有人报告过之前见过这个问题。事实上,有人见过:我们发现 Reddit 上有几个帖子,由参与过其他组织调查并观察到相同现象的人发布。
- 我们供应商的一名员工询问该公司是否有人观察到“forks”问题或收到过调查参与者的报告。没有人。
- 在这一点上,我们觉得我们唯一的选择是找到一种方法来复制该错误。我们最好的猜测是某种用户设置与网页发生了奇怪的交互。最后,我们团队的一名成员在测试调查时看到了“forks”而不是“yes”。
复制该错误为我们提供了一些关于可能导致该错误的线索:
- 我们的工作人员在使用 Google Chrome 时看到了该错误——但她(和其他人)之前已经在 Chrome 中测试过多次,并且没有看到“forks”。
- 该特定测试用例的编程中还有一些其他的怪异之处,例如某些句子开头缺少大写。
- 当我们的工作人员退出调查然后再次加入时,即使使用相同的浏览器,问题也消失了。
- 我们已经进行了数十次甚至数百次调查,然后才看到该错误,因此我们确定该问题必须很少见。
经过更多的实验,我们能够将翻译确定为问题的根源。
我们如何修复错误
一旦我们发现了导致该 bug 的原因,我们的供应商立即通过在调查包装器中添加 HTML 代码来禁用浏览器翻译功能。如果调查参与者尝试使用其浏览器的弹出翻译功能来翻译页面,则什么也不会发生。(与我们的许多调查一样,参与者在开始时选择了他们喜欢的语言。那些选择西班牙语的人被引导到西班牙语版本,我们与专业翻译人员一起开发了该版本。我们只在英语版本的调查中观察到“forks”故障。)
我们还讨论了是否有可能进行更广泛的修复,以防止浏览器翻译弹出窗口完全出现。这是不可能的。但是,供应商提出了另一项预防措施:作为我们调查编程的标准部分,我们的供应商现在将 lightbox 脚本与网页上文本的语言相匹配,以防止浏览器意外检测到错误的语言并触发自动翻译弹出窗口。自动翻译弹出窗口可能偶尔仍会触发,但调查包装器中的 HTML 可防止其更改网页上的内容。
我们如何确保数据的质量
每当调查进行过程中出现问题时——就像这次一样——我们需要确保该问题没有扭曲我们的数据。以下是我们在这种情况下采取的步骤:
- 我们评估了故障的规模。我们想知道有多少人回答调查时看到了它。幸运的是,就我们所知,这只是一小部分。只有 0.2% 的受访者在他们的反馈中提到了这个故障。当然,并非每个看到它的人都可能选择在反馈中提到它,并且也可能潜在的调查参与者可能只是在看到错误时决定不完成调查。
- 尽管如此,因为我们在看到该问题复制之前已经通过了数十次或数百次调查,所以我们有理由相信,只有极少数的调查参与者看到了它。此外,每个在反馈中报告该问题的受访者都明确地告诉我们,“forks”正在取代“yes”,这意味着他们清楚地理解了响应选项的意图和含义,尽管存在错误。
- 我们的下一步是查看数据中是否存在任何异常的响应模式。调查中的每个是/否问题也都在去年的类似调查中提出过。我们比较了每个受影响问题的回答分布(仅查看每年在线回答调查的人),发现 2024 年的回答与 2023 年的回答非常相似。这进一步让我们相信,该问题仅限于极小一部分的调查参与者,该错误并未影响人们回答问题的方式,或者两者兼而有之。
- 我们还检查了中断率,看看该 bug 是否导致受访者登录以完成调查但未完成就停止了。只有 53 人在完成调查之前中断了(占在线登录参与调查人数的 2%)。相比之下,去年没有出现“forks”错误的调查中断了 89 人(或 4%)。
鉴于这些发现,我们没有看到任何证据表明这个奇怪的错误以任何有意义的方式影响了我们的调查数据,因此我们很放心地分析和发布了数据。
如果您遇到类似的问题,我们希望此解释对您有所帮助,并且我们感谢我们的调查参与者提醒我们注意该错误,以便可以对其进行修复。
类别: