这几天线上客户端有个bug修复了多个版本,但是都无法根本解决。今天又花了一天时间才算基本处理好重新进入测试流程。在整个修复的过程中,我又几个地方有比较深的感受。

清晰的思路

首先就是深入理解问题已经背后出现的原因,不能有丝毫的含糊或者猜测,每一次确认都是对问题边界的清晰认识。因为本次是客户端出现的问题,线上有多个版本,出现问题用户的数量还比较多。一开始因为比较忙,不太想去查旧版本的日志,想通过最新版本的“重构优化”来解决,多次的修改总是有一点瑕疵。多种情况在代码中混杂在一起时最常见的情况,多种标志或者状态位变成一个一个补丁,有点缝缝补补还是处处漏风😂。其实引入的变量越多在不断超出我的大脑所能思考组合的情况,问题在不断的扩大。代码很多时候就是在限制边界,在规则边界中正常行走,一个不断扩大的圈子很难找到一条稳定的路,也没有任何方向。

简单就是优雅

代码从来不是让别人看不懂就是水平高。我一直都是坚持,越简单越优雅。问题在思考时需要探寻深度和广度来完善,但是在解决时,需要分解,需要简单直接,有点像庖丁解牛的过程。

AI不是救世主

vibe coding的出现带了了新的解决方式,一开始我让AI去解决这个问题,他会迅速处理,但是当过程中不断出现的小问题,他会越来越执着于缝缝补补,这样的修复是非常危险的。缺少了系统性的思考和实现,这个漏洞有可能越来越大。虽然我们自嘲写代码是一个“体力活”,但是绝不能忘记自我思考和规划的重要性,整体架构和工程的完整,细节的简单清晰让代码变得优雅。

突破不可能

打破自己脑海中不可能的那个念头,即使想要否定,也可以想想是不是存在某种可能。这个是我这几天在和其他伙伴沟通中得出的。这里有个词“认知范围”,虽然很多时候我不喜欢这个词(后面有时间再讲😁)。不可能可能只是当前的认识不够或者有点累了不愿意去多思考一点点,这是非常危险的,失去了进步的可能。

接受不完美

因为同时去年设计对外开放的一个接口有点对接的问题,回过头去看之前的自己设计的接口确实有点难以恭维,造成现在有点难受(尤其是已经有接入放的情况下)。所以只能自己去填坑了。但是这里其实也发现自己有了一点进步,我可以采取一个更好的方式去设计这个,同时也很庆幸有这个"犯错"的机会。希望过几个月可以再有更好的办法,去推翻打破昨天的自己。