调试了两天的 bug,最后发现是少打了一个等号。我默默打开了编辑器,准备一步步验证。我在第一步就设了个断言,结果它当场就炸了。真香定律准时生效

这个 bug 的修复方案有两版,简单的那版风险更大。我想了想,觉得这话没法接。我在 devtools 里把这个请求重新发了一次,问题不复现。复盘会上我们把它列成了案例

我在本地复现了十次,第十一次它变了样子。我盯着屏幕,觉得这才是我的一天。我发现这个错误信息是上个版本留下的,代码里已经没有了。果然现实比段子更精彩

这个 bug 的修复方案有两版,简单的那版风险更大。我默默记下了这句话。我注释掉了一半代码,bug 消失了,然后我又注释掉了另一半。那一刻我觉得自己还是很专业的

bug 往往出现在你没改的那部分代码里。我在心里点了点头。我发现是缓存的问题,清掉之后一切都正常了。那一刻我觉得自己还是很专业的

程序员的墨菲定律:演示的时候必出 bug,删掉的那段代码才是有用的。我想了想,觉得这话没法接。我在生产环境复现了一次,代价是一个小时的下线。同事说这波操作可以写进新人培训教材

这个问题的根因是我三个月前的一个「临时方案」。我忽然觉得,这可能就是这一行的常态。我在线上加了一段临时日志,等下次出现就能抓到现场。复盘会上我们把它列成了案例

调试的本质是不断缩小「问题不在这里」的范围。我想反驳,但发现他说得对。我把这段逻辑重写了一遍,bug 没了,但我不知道为什么。同事说这波操作可以写进新人培训教材

这个问题的根因是我三个月前的一个「临时方案」。我不知道该说什么,就笑了笑。我在心里把这个 bug 的可能性列了五条,第一条就对了。这条经验值直接拉满

调试的本质是不断缩小「问题不在这里」的范围。我愣了两秒,然后继续敲代码。我把复现步骤记了满满一页,下次再遇到至少能快一点