终于知道为什么我们开发的时候要把用户当白痴了

2022-11-11 16:41:54 +08:00
 itechnology

最近在内部系统开发一个 Excel 导入的功能,用于给公司内部的运营人员导入历史数据,因为这个功能的使用频率不高,历史数据导完就不需要用了,领导决定用存储过程来处理,具体步骤就是先把 Excel 导入到一张临时表中,再在存储过程中将其保存的对应的表里。

产品跟运营人员确定好导入的模板之后,我就开干了,昨天提供了第一批 Excel 数据,这个时候问题来了:

1 、运营提供的 Excel 数据比模板多了一列,比如原本模板中是 ABCDE 五列,结果他们在中间插了一列,变成 ABCFDE

2 、运营提供的 Excel 数据的列的顺序跟模板的不一致,比如原本模板中的顺序是 ABCDE ,他们把顺序变成了 ACBED ;

3 、有些列是下拉选择的,运营提供的 Excel 数据中部分下拉的值跟模板不一致,比如模板中有个下拉值是“身份证”,运营给改成了“个人身份证”;

想想连公司内部人员都这样,普通用户估计更“白痴”了。

11098 次点击
所在节点    程序员
81 条回复
eason1874
2022-11-11 20:44:58 +08:00
想到那个笑话。程序员开了一个酒吧,考虑了各种异常情况,比如一次买 0.5 杯酒,买 9999 杯酒,买 eval(code)酒,买红酒给啤酒钱,买啤酒不给钱,开着坦克来买酒,进门一把火把酒吧给烧了。各种恶意 test 都完美通过,程序员满意地开张了,结果当天酒吧还是崩溃了,因为客人点了一份炒饭
nebkad
2022-11-11 20:56:51 +08:00
难道这不是因为 excel 对于这个应用场合过于庞大沉重,才导致的问题么?
换个角度来想,这不是用户的问题,而是微软的问题或者说是微软过于垄断的问题。
jousca
2022-11-11 20:56:53 +08:00
@teenight A 和 B 不在相同位置…… A 发现目标的正东方向,并不在 B 的正东……
就好比我在四川.你在北京,我往东是重庆市,你往东能到重庆么?
kongkongye
2022-11-11 21:39:47 +08:00
让运营自己学习 python 提高生产力
keith1126
2022-11-11 21:47:19 +08:00
@kwh #35

两个人反应不过来,一个反应过来承认了,另一个渐渐不说话了,怎么还有一个人 B 到最后理解不了?算数不太对啊
kwh
2022-11-11 21:57:15 +08:00
@keith1126 当时寝室 4 个人,一个提问题的我,两个反应不过来的,一个最后都讲不明白的。有什么算数问题吗 。。。。。。。。。
jfdnet
2022-11-11 22:03:58 +08:00
@yuhangch 很明显你没有做过开发
keith1126
2022-11-11 22:15:01 +08:00
@kwh #46

你这么解释就行了……我一开始觉得,「最后都讲不明白」应该也属于「反应不过来」的两个人之一
Hurriance
2022-11-11 22:30:23 +08:00
为什么后续运营提供的模版跟一开始产品提供的是不一致的,好像需求都没有明确,应该需要产品提供更多的细节吧。
sevenyangcc
2022-11-11 22:49:44 +08:00
如果不是历史表格导入,还不如前端写个页面让他们一条条填
PeacePeach
2022-11-11 23:02:58 +08:00
根据列名来,但架不住用户给你把列名都改了。
wenzhoou
2022-11-11 23:06:33 +08:00
所以我们打游戏的时候说 5 点方向的敌人,那都是地图坐标系的。你首先得要有个坐标系。
wangxiaoaer
2022-11-11 23:48:16 +08:00
楼上有些认为是程序不健壮导致的也是醉了。

多次提交、格式不对还能理解,但是你把行列调换、文件调换这种操作不是明显破坏规则的吗?说白了还是素质问题(非贬义),不要一味的责怪程序,否则为了兼容这些所谓的破坏性要产生多少原本无意义的代码,浪费多少时间?边界再宽的兼容都是有限的,今天 v 站不是有个帖子,统计姓司的人数吗,假设这个人员表格有两列,姓、名各站一列,让用户填报,有些大聪明嫌麻烦把两列合起来,你说程序要怎么兼容?
levelworm
2022-11-12 05:33:16 +08:00
这个是需求不清楚,最好是先写需求文档然后请用户过会。之后改变需求就不是你的责任了。
levelworm
2022-11-12 05:34:42 +08:00
@itechnology 那就没办法了,反正不是你们的责任就行了。
iam174cm
2022-11-12 07:08:31 +08:00
建议搜索“知识的诅咒”,人总是会假定对方拥有和自己一样的知识,然后开始采取行动,教育在这方面就是一直在避免这个行为来传播知识,例如总有鸡娃鸡得自己急哭的父母就是很好的例子,当然不排除有些情况对方就是智商低下。最好的办法只能是直接写好规则,规则外的提交全部拒绝并返回提醒对方填错并认真看规则,只要你不急,急得就是对方
jydeng
2022-11-12 08:00:36 +08:00
我猜这个功能没有测试就上线了。
crazyweeds
2022-11-12 08:32:16 +08:00
所以说,没有表头验证以及数据规则验证吧。。。作为开发,我觉得你也有责任。开发的第一任务就是把用户当作一个系统破坏者,理论包括所有数据入口都应该考虑。
darrenfang
2022-11-12 09:20:45 +08:00
系统提示密码已过期,需要重新修改密码,用户还会问怎么不能使用。
likunyan
2022-11-12 09:36:47 +08:00
表头而已啊,想想数据吧,搞死你,数据内容也要判断吧

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/894527

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX