第一章 凌晨三点的代码与鬼差
烟灰缸里的烟蒂堆成了小坟包,显示器蓝光把我的脸照得像张褪色的纸。凌晨三点十七分,我敲下最后一个分号,编译框弹出绿色的“success”时,后背的酸胀突然炸开,像有根生锈的钢筋从肩胛骨戳到了腰椎。
“操,总算跑通了。”我扯掉耳机,办公室里只剩下服务器的嗡鸣,窗外的写字楼亮着零星几盏灯,像悬在半空的孤魂。作为“997福报厂”的底层码农,这已经是我连续第三周凌晨下班。
手机在桌角震动,是组长的消息:“陈默,客户说登录页的加载动画不够‘灵动’,明天上班前改一版,要体现出‘赛博修仙’的感觉。”
我盯着屏幕上的“赛博修仙”四个字,突然笑出了声。今年二十七岁,银行卡余额够付三个月房租,发际线比K线图跌得还猛,现在还要让我给登录按钮加“灵动”的修仙动画——不如直接让我当场羽化飞升。
抓起桌上的冰可乐灌了半瓶,气泡刺得喉咙发疼。我收拾好背包,把折叠床塞进桌底时,金属框架刮过地面,发出刺耳的“吱呀”声,在空荡的办公室里格外瘆人。
电梯下降时,我对着镜面整理了一下衬衫领口,镜子里的人眼窝深陷,下巴上冒出青色的胡茬,像个刚从网吧逃出来的难民。想起三年前刚入职时,自己还信誓旦旦说要写“改变世界的代码”,现在每天改的都是“让按钮更圆润0.5像素”的需求。
“叮——”电梯门开了,地下车库的冷风卷着机油味灌进来。我打了个哆嗦,快步走向自己那辆二手电动车,车座上落了层薄灰,车把上还挂着上周买的平安符,是他妈托人从庙里求的。
“求神拜佛不如求不加班。”我自嘲地笑了笑,跨上车拧动电门,电动车“嗡”地一声蹿出去,车灯在空旷的车库里划出两道惨白的光。
驶出写字楼大门时,保安室的大爷探出头看了一眼,昏黄的灯光照在大爷脸上,皱纹里像藏着无数个熬夜加班的故事。我抬手跟他打了个招呼,大爷扯了扯嘴角,没说话。
凌晨的街道空旷得诡异,连闯红灯的外卖车都没了踪影。只有路灯像排沉默的哨兵,把我的影子拉得忽长忽短。我骑着车,脑子里还在想那个“赛博修仙”的登录动画——要不把按钮做成炼丹炉的样子?点击时冒点青烟?
就在这时,眼角的余光瞥见路边的公交站牌下站着个人。
那是个穿黑色中山装的男人,背对着马路,身形笔挺得像根竹竿。凌晨三点的公交站,连鬼都不会来等车。我下意识地放慢车速,车灯扫过男人的背影时,突然发现那人的头发泛着不正常的青灰色,而且——没有影子。
后颈瞬间炸起一层白毛汗。我猛拧电门想赶紧离开,却听见身后传来一个嘶哑的声音,像砂纸磨过生锈的铁管:“这位先生,请留步。”
我僵着脖子回头,中山装男人已经转过身来。那张脸白得像宣纸,五官平平无奇,唯独眼睛是纯黑的,没有眼白,像两口深不见底的古井。男人手里拿着一本暗红色的册子,封面上用烫金的字写着两个我从没见过的篆体字,却莫名认出那是“生死簿”。
“你……你是谁?”我的声音在发抖,电动车的后视镜里,我看见自己的脸比那男人还要白。
男人微微颔首,动作僵硬得像个提线木偶:“地府勾魂司,白无常第七十七代执事,编号9527。”他翻开手里的册子,指尖划过泛黄的纸页,“陈默,男,阳寿二十七岁,应于今日凌晨三点四十二分,在建国路与和平大道交叉口,被失控货车撞断三根肋骨,失血过多而亡。”
我的大脑“嗡”的一声,像被植入了死循环代码。我看着男人手里的册子,上面的字迹居然是宋体,还标着宋体四号加粗——这地府的行政效率挺高,连格式都统一了。
“你……你搞错了吧?”我咽了口唾沫,指了指自己,“我身体好得很,昨天体检还说我‘除了肝不太好,其他能活到九十九’。”
白无常抬起头,纯黑的眼睛里似乎闪过一丝波澜:“体检报告?那是阳间的东西。你上周是不是在公司连续加班七十二小时?是不是为了赶项目吃了五天泡面?是不是在代码评审会上被总监骂到心肌缺血还强撑着?”
每问一句,我的脸色就白一分。这些事我从没跟人说过,连他妈都不知道我上周差点在工位上晕过去。
“你的五脏六腑早就被‘福报’蛀空了,”白无常合上册子,语气平淡得像在念需求文档,“按地府最新修订的《阳间过劳死判定标准》,你这种属于‘自愿透支阳寿换KPI’,不在工伤赔偿范围,直接纳入正常死亡流程。”
我突然觉得很荒谬。我加班是为了活着,现在却因为加班活不成了。想反驳,想骂街,想掏出手机给组长发最后一条消息——“你要的灵动修仙动画,老子给你烧过去”,但喉咙像被堵住,发不出一点声音。
就在这时,远处传来货车的轰鸣声,车灯像两柄利剑划破夜空。我猛地回头,看见一辆红色大货车摇摇晃晃地冲过来,司机趴在方向盘上,似乎睡着了。
“三点四十二分,很准时。”白无常看了眼手腕上的表——那表居然是电子表,表盘上跳动的数字是“00:00:00”。
我的心跳瞬间飙到两百,想骑车躲开,但身体像被钉在原地,手脚发软。货车越来越近,轮胎摩擦地面的声音像恶鬼的嘶吼,我甚至能看清车头上“生鲜冷链”的字样——不知道自己的尸体算不算“生鲜”。
“等等!”我突然想起什么,从背包里掏出一个U盘,“我这里有个BUG还没改完!那个登录动画的‘赛博修仙’效果,我想到怎么实现了,用CSS3的动画帧加粒子特效……”
白无常似乎愣了一下,纯黑的眼睛里第一次露出困惑:“人死了,BUG还在。”
“那不行!”我急了,“我写的代码,死也要死在debug的路上!”
货车已经到了眼前,刺眼的灯光让我睁不开眼。我下意识地举起U盘,像举着什么护身符。就在这时,手里的U盘突然发出刺目的白光,烫得我差点扔出去。
白无常猛地后退一步,纯黑的眼睛里居然露出了惊恐:“这是……什么东西?”
我也懵了。这U盘是上周在公司楼下的二手市场淘的,摊主说这是“程序员专用辟邪U盘”,里面存着“能镇住所有BUG的上古代码”。当时觉得是扯淡,十块钱买下来当备用盘,没想到现在居然发光了。
白光越来越亮,货车在离我不到三米的地方突然急刹车,轮胎冒出滚滚黑烟,司机惊醒过来,一脸茫然地看着前方。而我手里的U盘“啪”的一声裂开,掉出一张金色的卡片,上面写着:
【检测到阳间程序员陈默,在死亡瞬间仍执念于debug,符合《地府人才引进计划(2024修订版)》第3.2.1条——“对工作有极端执着,可转化为判案执念者”,特授予“临时判官”资格,即刻生效。】
【任务:接管今晚子时的地府判官工作,处理积压的“阳间过劳死冤魂”案件。完成度超过80%,可兑换“还阳券”一张;未完成,直接打入十八层地狱,永世调试IE6兼容代码。】
我看着卡片上的字,又看了看目瞪口呆的白无常,突然觉得这比组长的需求还离谱。
“这……这啥意思?”我举着金卡,声音发飘。
白无常咽了口唾沫,突然对着我鞠了一躬,态度一百八十度大转弯:“恭喜陈判官!您是今年地府引进的第108位‘特殊人才’!按规定,您可以凭此卡在生死簿上修改自己的死亡时间——只要不超过二十四小时,随便改!”
我愣住了。看着货车司机惊慌失措地打电话,看着白无常毕恭毕敬的样子,看着手里闪着金光的卡片,突然笑了。
改死亡时间?我现在只想改组长的阳寿。
“先别恭喜,”我把金卡塞进兜里,拍了拍白无常的肩膀——入手冰凉,像摸了块铁板,“带我去地府。我倒要看看,那些天天逼着员工加班的‘福报厂’老板,在地府的绩效评级是多少。”
白无常愣了一下,随即露出一个比哭还难看的笑容:“陈判官,您这是……要给地府的判案系统,加新功能?”
我想起自己写代码时的口头禅,脱口而出:“不是加功能,是重构。把那些不合理的逻辑,全他妈重构了。”
远处的货车还在鸣笛,我跨上电动车,对白无常扬了扬下巴:“带路。要是地府的办公系统还是IE内核,我顺便帮你们升级一下。”
白无常犹豫了一下,从怀里掏出一个黑色的共享单车头盔:“陈判官,按规定,去地府得戴这个——最新款的‘阴阳穿梭安全盔’,符合GB24429-2020标准。”
我看着头盔上印的“地府共享单车”logo,突然觉得这地府,好像比我想象的更“现代化”。
戴上头盔,感觉冰凉的塑料贴着额头,意外地很舒服。白无常跨上一辆没有轮子的共享单车,车身上刻着“酆都出行”四个篆字。
“陈判官,坐稳了。”白无常蹬了一下脚踏板,共享单车突然腾空而起,周围的景象开始扭曲,路灯变成模糊的光斑,马路像被揉皱的纸。
我握紧车把,风声在耳边呼啸。看着自己逐渐变得透明的手,突然想起那个没改完的“赛博修仙”登录动画。
或许,我真的要去写“改变地府的代码”了。