查bug成就感
去做一些,对别人来说几乎是不可能的事对我来说有相当大的成就感。昨天我就花了接近五个小时的时间去做这种事,但实际上一开始的时候,我并不知道我可以做到。甚至在开始的时候,我想都没想过我要做这种人,因为我只是打算找出我自己的毛病,结果却找出了系统的毛病。这种错乱可能早已存在,托利多这个世界上最有名的称量产品制造公司可能早就知道他们的东西有这样的不足,但是我却是这个单位里第一个发现这个问题的人。为什么别人就没有发现?我却发现了呢?因为一定程度上,我对自己写的程序有信心,我觉得那不可能出错,如果出错了,唯一的可能性只能是,我之前遵循的那条规则以外还有一些特例。
昨天一开始的时候,我只是想核对一下数据,接着发现数据差太远,有些根本没办法核对,造成那个的原因是操作人员在实际执行过程中没有完全按照正确操作去做。这是没办法挽救的,也只能按照他们记下来的那个时间点去计算,几乎可以这么说,那些数据是无法核对的。但另外有一些能核对的却很神奇,因为我那个程序计算出来的数值跟他们记录下来的就只差那么一点点。可能是两公斤,也可能是四公斤,也可能是八公斤,为什么会造成这个问题呢?之前程序之所以不能完全使用是因为第一称和最后一称的问题,但显然这公斤级的问题不是那个,问题到底出在哪里?我找了一条不算大的船检查,只有157斗。然后沿着斗数一个一个往下看,157斗数量没错,净重也没有出现逻辑以外的东西。斗数没错,净重也没有神经病,但为什么累计重量却不一样呢?到了这个程度,靠人肉去看是不行的,所以我直接把净重和累计重量连贴出来,然后用Excel累加一下。结果发现了惊天大秘密,某个数,如果按照上一个斗的累积重量加这一斗的净重得出某个数值。但实际上系统记录的累积重量却比那个数值少了两公斤。于是这也就很好理解为什么我调用的净重计算总是会比他们记录下来的累计重量多那么一点点。抽查了这几天的一些记录。发现了起码四处这样的问题。这些问题出现的频率很难说,有可能是40分钟,也有可能是一个小时。发生这种事感觉挺反人类,因为做一个程序设计的,不是应该首先得出净重,然后用净重去计算累计重量吗?但显然他们可能不这么干。至于托利多编程的人是怎么想的,真的不知道。如果有一天客户要求打印每一斗的详单,这该怎么办呢?当然不是每个死变态都会把净重全部加一遍,看一下跟累计重量是不是一致,因为所有人都会默认,累计重量就是从净重加出来的,实际上从这个系统看来,却不是这样。这个问题简直就是未解之谜。两公斤刚好是散粮称的最小刻度,一跳就是两公斤了。如果几百吨的船,出现两公斤的误差,完全可以接受。如果我们的人最终打单的时候选择选择我们自己写的查询程序,只要之前他的操作,一直都没错,也没有问题。这种事情居然被我发现了,我莫名的感感到很大成就感。我们单位的中控那里一共有四台散粮称。出现这个状况的貌似只有其中一台,其余两台用过的,对了一些可核对的数据,都没有问题。四台散粮称的程序完全一致,所以发生这种毛病也就只可能是某一台秤的某个传感器不知道哪里出问题了。出问题这很正常,毕竟这套设备买回来已经接近十年了,虽然从前我们用得不多,但是电子元件这种东西即便你不用,过了好长一段时间,也是会有毛病的。有毛病不是问题,重要的是你得把它发现出来。然后才好说后续要怎么办。
折腾的人生是痛并快乐着的。