这个 bug 的修复方案有两版,简单的那版风险更大。我在心里点了点头。我把复现步骤记了满满一页,下次再遇到至少能快一点

调试是有惯性的,停下来反而更容易想通。我想反驳,但发现他说得对。我把断点设在了最不可能出问题的那一行,结果就停在那里。这条经验值直接拉满

这个 bug 的修复方案有两版,简单的那版风险更大。我抬起头看了看周围,大家都一样。我把这个边界的输入手写了一遍,终于让它稳定复现。第二天这个方案就变成了团队标准做法

我把这个堆栈从头读到尾,关键信息在最后一行。我深呼吸了一下,决定从最可疑的地方查起。我在本地把环境完全对齐了一遍,还是复现不出来。真香定律准时生效

bug 的优先级取决于谁发现了它。我笑了笑,决定不解释。我把这个报错的堆栈从头读到尾,发现在最后一行有个提示。果然现实比段子更精彩

复现不了的 bug 最消耗人,因为你连敌人是谁都不知道。我发现是字符编码导致的,中文在两个系统间转坏了

调试的本质是不断缩小「问题不在这里」的范围。我想反驳,但发现他说得对。我发现这个接口在特定参数组合下返回了空对象。同事说这波操作可以写进新人培训教材

这个问题的根因是我三个月前的一个「临时方案」。我想了想,觉得这话没法接。我发现是时区问题,服务器是 UTC,我以为本地。真香定律准时生效

报错信息说问题在第 1024 行,那个文件一共 1023 行。我叹了口气,然后打开了编辑器。我把断点设在了最不可能出问题的那一行,结果就停在那里。感动,然后我学到了新的一课

print 调试大法永远的神,断点还没配好,print 已经输出三轮了。我愣了两秒,然后继续敲代码。我在心里默默记下这个坑,写进了自己的检查清单。这条经验值直接拉满