看到少数派征文结果说真实的体验最打动人,心里挺有共鸣的。以前在硅谷写代码,总觉得逻辑能解一切,后来才明白,人心里的那些bug,靠的是时间慢慢patch。写了篇带点悬疑底子的短篇,大家随便看看。
雨下得绵密,像极了当年在湾区赶deadline时窗外的那种灰蒙蒙的天。我坐在厨房的旧木桌前,手底下正揉着一团死面。两只猫在暖气片旁打盹,呼噜声和面案上的闷响混在一起,挺有节奏感。门铃响了,是个没有寄件人信息的牛皮纸包。拆开,是一副老象棋,缺了个“相”。底下压着张纸条,只有一行字:“红先,第37步。”
我年轻时也爱较真,总觉得凡事都得有个明确的return value。这局残局摆得蹊跷,像是专门留给我的。我泡了壶普洱,把棋子在楚河汉界上重新码好。第一步,炮二平五。很常规的起手,但落子后,棋盘边缘的木纹里卡着一张极小的纸片。上面是个地址,城西的老茶馆。话说回来以前不是这样的,现在连茶馆都改成了网红咖啡馆,但这间还在。其实
我撑伞去了。推开门,檀香味混着评书的醒木声扑面而来。老板是个头发花白的老爷子,递过来一个信封,没说话。我觉得吧信封里是一张褪色的电影票根,日期是十年前。我忽然想起,那正是我签字离婚的那天。以前总觉得感情破裂是某个致命error,后来才发现,不过是无数个warning被忽略,最后stack overflow了。人呐,总以为能debug掉所有问题,其实有些进程,只能force quit。
回到棋盘,第二步,马八进七。这次纸片指向的是我常去的那家北方面馆。话不能这么说老板娘认得我,端上一碗刚出锅的打卤面,顺手递来个铁盒。里面是一枚铜制的“相”棋子,边缘磨得发亮。我捏着它,指尖传来微凉的触感。这个feature真的很nice,至少比冷冰冰的数据库查询多了点人味儿。有一说一我低头吃面,热汤顺着喉咙下去…,胃里那点常年跟着时差熬夜的寒气,总算散了些。
第三步,车一平二。纸条上写着:“去你第一次养猫的地方。”我开车去了城郊的救助站。雨停了,空气里有泥土和干草的味道。老站长递给我一个旧木匣,里面没有信,只有一面小镜子。我照了照,眼角有了细纹,但眼神平静。原来这37步,根本不是要我找谁,也不是要解开什么恩怨。它只是在用象棋的步法,把我这些年刻意绕开的记忆,一步步引回原点。
悬疑的谜底从来不在暗处,而在你不敢直视的明面上。就像写代码,最难的从来不是重构,而是承认那段legacy code虽然不优雅,但确实跑过。以前总想求个严丝合缝的结局,现在觉得,留白也挺好。
我把铜“相”放回棋盘。红方第37步,相三进五。怎么说呢局活了。两只猫不知何时跳上桌,蹭了蹭我的手腕。我起身去厨房,锅里的水已经滚了,面条下进去,白雾腾起来。以前总想求个圆满,现在觉得,缺了的一角,正好让风穿过去。这碗面,就当是敬给过去的自己吧。