【发布时间】:2009-04-05 08:28:10
【问题描述】:
用户有时会提出程序员设计和实现的最有趣、最奇怪和最奇妙的要求。
今天我读到老板的一份备忘录,我们需要“能够轻松快速地导入任何 Excel 或访问数据,无论大小如何。”
在同一份备忘录中,我们要求“知道是否有人未经授权访问了系统” - 就像黑客要将他的电话卡夹在某个索引和外键之间一样。
我觉得我的老板一直在看太多的《星际迷航》……:)
你遇到过的最有趣的用户请求是什么?
【问题讨论】:
标签: request
用户有时会提出程序员设计和实现的最有趣、最奇怪和最奇妙的要求。
今天我读到老板的一份备忘录,我们需要“能够轻松快速地导入任何 Excel 或访问数据,无论大小如何。”
在同一份备忘录中,我们要求“知道是否有人未经授权访问了系统” - 就像黑客要将他的电话卡夹在某个索引和外键之间一样。
我觉得我的老板一直在看太多的《星际迷航》……:)
你遇到过的最有趣的用户请求是什么?
【问题讨论】:
标签: request
“日历真的很难用,因为每个月的天数都不一样。你能不能把它们改成一样的天数?”
【讨论】:
我的客户要求在他的网站上,当前的白色太正常了。我引用“我想要 Facebook 和 Google 的亮白色”
我想知道这是否可行:
main.css
body {
background-color: #ffffff !glossy;
}
【讨论】:
客户:“我真的很喜欢我的网站和 Google,但是当我的笔记本电脑没有互联网连接时,我需要它们。你能将它们刻录成 CD,以便我可以离线使用它们吗?”
我:“我可以制作您网站的离线版本,但功能有限。但我无法让 Google 离线使用。通过硬件和月度合同,可以在任何地方以月费获得互联网一张数据卡。您必须通过 ATT 或 Sprint 或类似的方式每月支付大约 60 美元。”
客户:“我开始对你的能力感到失望。”
【讨论】:
“我们知道服务器有时会宕机,但我们希望它永远不会宕机”
【讨论】:
“您能确保我们的销售额至少增长 131% 吗?这将使我们领先于去年。”
【讨论】:
“我们需要在选中启用按钮点击的复选框后才能点击按钮。”
【讨论】:
同一个人多次发生以下情况......
数据输入操作员(在远程站点):你能修理我的终端吗?它不会打开。
我:你上次打电话遇到这个问题时,它被拔掉了,你能检查一下吗?
数据输入操作员:已插入!
所以我开车去远程站点,我发现了什么?当然是不插电的终端!我插上电源,它工作得很好。
【讨论】:
项目经理:“我们需要你列出这个项目的所有未知风险。”
【讨论】:
我们的一个程序可以让普通人操作相当复杂的视频分发系统。它使用视频源(VCR、DVD 播放器等)的代表性图片直观地指示后端发生的情况。这些图形非常详细;录像机上有一个小小的琥珀色显示屏,以 7 段 LED 字体显示“12:00”。一位用户要求我们让它闪烁。另一个要求我们让它显示当前时间。
刘海放在桌子上
【讨论】:
我的编程团队编写了一个与旧会计系统交互的内部网。基本上,我们正在编写一个漂亮的 ASP.NET 前端来保护用户不必与终端系统交互。
无论如何,我们的一位测试人员注意到我们的登录代码可以接受任何密码,只要前 8 个字符正确即可。测试人员使用密码“Password”创建了一个用户,但应用程序将验证“Password1”、“PasswordMonkey”、“PasswordFakeFakeFakehahahah”。因此,我们的测试人员将此记录为缺陷。一些调查显示,遗留系统将密码存储在固定宽度的 8 个字符字段中,它只是悄悄地将查询截断为 8 个字符。快速测试表明,这个错误也存在于会计系统中,并且被忽视了 20 年。
我们无法修改由第三方供应商维护的遗留应用程序,所以我写了一个简短的if (password.Length > 8) { return false; } ——毕竟,超过 8 个字符的密码不可能是正确的.错误已修复,QA 签字。
因此,当我们的应用程序投入生产时,我们会从我们的一位客户的总裁那里收到“紧急!!用户无法登录他们的帐户!!!”类型的消息.事实证明,州法律或公司政策要求所有密码长度至少为 12 个字符,并且在修复后没有用户能够使用我们的产品。
我们解释说,会计系统根本不会存储超过 8 个字符的任何内容,如果用户只输入前 8 个字符,那么一切都会很好。 “不可接受!”好的,那么我们可以在文本框上设置一个最大长度,将输入限制为有效的字符范围。 “笨蛋!以前工作得很好,现在修好了!”我们的客户与我公司的总裁大吵一架,威胁我们如果不修复应用程序就改变供应商。
所以,我“修复”了应用程序注释掉了健全性检查并重新引入了错误。让 ASP.NET 前端的身份验证代码与终端后端的身份验证相同,这并不是一个不合理的要求,但故意重新调试应用程序确实令人不安。
【讨论】:
看看这个名为Clients From Hell的博客
那里有一些非常“好”的。
【讨论】:
“我刚刚删除了一条客户数据记录。你能从回收站中恢复它吗?”
有些人不明白,当一条记录被删除时,它就被删除了。这就是“已删除”的意思,尤其是当他们没有要求我们构建“取消删除”功能时。
【讨论】:
“我希望没有人可以截取此网页的屏幕截图。”
说真的,这是客户的需求。
然而,最变态的是,我真的找到了解决方案(一个让我更讨厌“Javascript”......)。
哦,解决方案是猴子证明的。
【讨论】:
客户:“你确定你推送了最后一个副本编辑吗?”
程序员:“是的,它是实时的,我测试了它。”
客户:“我刚刚看了,它仍然显示旧的副本文本。”
程序员:“你试过清除浏览器缓存吗?”
客户:“那是什么?我该怎么做?你不能让网站帮我做吗?”
【讨论】:
我们的一位客户将他的信用卡放入 FDD(软盘驱动器)中使用;
【讨论】: