随着工作接触到的项目增多,越来越长见识了。对于程序员的廉耻感这个问题,总觉得有必要说两句。

背景,两件事:

  1. OTT的搜索引擎,整个项目的部署文档撰写不清不楚导致测试同学搭建测试环境时满脑袋问号;
    接口文档的参数设置的莫名其妙:

    检索方式(由12位二进制(形如:p11p10p9p8p7p6p5p4p3p2p1p0)组成,其中每位表示一种检索方式,每位取值为1时表示支持此种检索方式,否则表示不支持此种检索方式。p0:表示按汉字首字母检索,p1:检索节目名称,p2:检索演员,p3:检索导演,p4:检索关键字,p5:检索标签,p6:检索年份,p7:检索出品地区,p8:按演员首字母,p9:按导演首字母,p10~p11:待定)  ,当p2或p3位为1时精确搜索,为2时模糊搜索

    这参数,说了是二进制,特么后面跟我说为2的时候模糊搜索???这什么玩意儿?

    更甚者,对于音频码率用了29位的二进制字符串来对应不同的码率,而匹配和解读规则也是反人类的读取映射时从右往左,比较时从左往右……
    这踏马设计出这么个玩意儿一点都不觉得可耻么?
    然后部署的时候,建立索引是执行export,export是啥?导出啊,你们家导出就是建立索引是吧……
    检索接口叫RetrievePrograms,Retrieve啥意思?是取回啊哥哥,你用个filter过滤,也比取回好吧……
    各种奇葩细节刷新三观。

  2. UPC系统从5.3.2交出代码后,相关接手的同学就把其中一个驻地当时处于测试通过的特性,合漏了……历时半年,期间驻地发出过疑问,然而未被该同学注意到,直到驻地十一月提出要上线该功能时,才重新翻代码给合到了正在测试的5.10.0的分支中。直到11.15我再次费时间协助驻地在测试环境测试通过,内心不止一句MMP可讲。

作为一个程序员,就不说系统架构你设计的靠谱了,至少参数或者系统逻辑总应该设置成浅显易懂的吧,这代码是给人看的,逻辑也是给人理解的,搞的各种反人类和不易理解,这不是显示自己很牛逼,反而,这是让我觉得傻逼到我见闻上限的行为。It works就走是一句玩笑话,然而,好像对应的研发同学们当真了。

设计出这样的系统架构参数和逻辑,后期维护中也不思进取不思改进,反而最终的结果就是甩个烂摊子过来。在浩哥主导下,根据浩哥整理的文档,我在保持傻逼接口参数的前提下,完全重写整个系统。将可以理顺的逻辑都绘制成流程图,将系统架构变的简单容易部署并提供详尽的部署文档。不知旧系统的相关同学是否内心有一丝的惭愧。

同样,合漏代码的这种行为,半年时间都不去弥补,驻地找上门来才开始补救,完全忘记驻地的需求是总部的追求的理念。是失职,是耻辱。

一个合格的程序员,廉耻感还是要有的。一个程序员,应当确保不那么反人类,并且让自己负责的系统更适合人使用,更易用,少给用户带来问号,多给用户带来便捷。

PS:周末突然想起上周配合运维测试诊断某驻地的问题,整体流程略显复杂,遂给搜索引擎后台加入了一个功能模块专门为此提供数据支撑,一次点击省去了若干人工查询。
如果所有程序员都愿意为了方便他人使用而不断精炼改进自己的系统,天下何来垃圾系统~

Related Posts: 谈谈程序员的廉耻感 :

avatar