它看起来还能运行
- 作者
- Ethan Pier
改到一半,页面还能打开。这才是让我不安的地方。
报错至少有声音。更常见的是:详情页出来了,时间线却缺了一截;反馈按钮可以点,点完既不像成功也不像失败;一篇文章的日期写成了 1970 年——管线没倒下,只是把空的东西顺手填成了一个看起来合法的值。
潮汐的详情页逼我正视这件事。上游偶尔会给一份形状不对的数据:该是链接的地方不是链接,该是数字的地方是一段字,事件的状态写成一个我没见过的词。如果我顺着它往下画,页面仍会亮着。亮着的时候最难查。后来我让这一层在形状不对时直接失败,走可以重试的错误页。假装读完更危险。
反馈表也有过类似的糊。发送中、成功、被限流、网络断了,曾经很容易叠在同一个开关上。叠在一起时,按钮上的字会对不上手里正在发生的事。后来我按互斥来写:同一时刻只承认一种。限流就是限流。不要一边转圈一边说已经收到。
文章的日期也阴过我一次。文件头里写了一天,解析的时候被当成一个带时区的时间。显示时往前或往后错一天。页面照常生成。错的是日历。构建日志仍是绿的。
我逐渐讨厌那些“同时成立”的组合。正在加载,又已经出错,又还留着上一次的正文。人看不懂。程序也不该看懂。能在改动时就拦住的,我希望它拦在还没发出去之前。拦不住的,至少不要静默地画出来。
这没有让我变得更喜欢给每件事起很长的名字。我只是对一种平静失去了信任:什么都没红,可有一块已经空了。
有些错要到真正去改邻接的一块时才冒出来。加一种新的失败,才发现成功态还握着一份不该还在的草稿。补一个字段,才发现另一头仍把它当成可有可无。
页面还能运行的时候,我现在会多停一下。能打开,和已经读完,是两回事。有时只是错还没找到自己的出口。