总裁妻子冻结我所有研发权限,我当场离职,她嘲讽:我初恋也能干!
序章
我叫陈远,今年三十四岁,在明科科技做了五年研发总监。
那天下午五点的研发复盘会,会议室里坐了二十多号人,投影仪的白光照在桌面上,空气里混着咖啡和打印机碳粉的气味。我站在讲台旁边,手指还没从翻页器上拿开,刚讲完第三季度的核心算法突破数据。
门被推开了。唐若穿着一件驼色的羊绒大衣走进来,身后跟着两个助理。她走到会议桌顶端,把手里的平板电脑搁在桌面上,屏幕亮着,上面是公司内部管理系统的界面。她抬头看了我一眼,说:“陈远,你的研发系统权限我已经全部冻结了,项目组暂时由赵明接管。”
会议室里的键盘声停了。她顿了顿,又补了一句:“你那个算法没什么大不了的,我初恋下个月从硅谷回来,他也能干。”
我站在那里,手指还搭在讲台的边沿上。投影仪的光打在我脚前的地板上,白的,明晃晃的。我能听到自己腕表秒针走动的声音,很轻,但在安静的会议室里能听见。
我松开翻页器,从讲台上拿起自己的笔记本。纸张摞齐的时候发出嚓的一声,我把笔记本电脑合上了。我说:“好,那我走。”
走到门口的时候我停了一下,回头看了她一眼。她站在会议桌顶端,背挺得很直,目光定在我站过的那个位置,脸上的表情跟她平时主持董事会时一样,看不出什么多余的东西。
我说:“唐总,祝你初恋顺利。”
门在我身后关上的时候,我听见会议室里有人倒吸了一口凉气。
第一章 五年的东西
我的工位在研发中心五楼最里面靠窗的位置。窗户朝南,能看到楼下园区里那排银杏树,每年秋天叶子黄透的时候,整排树像点着了火,金灿灿地烧过去。
我走回工位的时候,外面的天已经开始暗了。秋天的傍晚来得早,五点四十五分,太阳已经沉到对面那栋楼的后面去了,窗外的天是青灰色的,银杏树的叶子在风里翻着白,一闪一闪的。
工位上放着三样东西。一台台式电脑,旁边架着两块外接显示屏,屏幕还亮着,上面是我的代码界面,光标在屏幕中间一闪一闪的,停在我离开前的最后一行。一盆绿萝,盆里的土还是湿的,中午刚浇过水,叶子在空调风里轻轻晃着。一个马克杯,陶瓷的,杯壁上印着公司五周年庆的logo,里面剩了半杯凉透了的咖啡。
我坐下,把笔记本电脑放在桌面上,没有打开。我拿起那个马克杯看了一眼,里面咖啡液面上浮着一层薄薄的油脂膜,倒映着天花板上日光灯的白光。我把杯子转了一圈,杯底的咖啡渍已经干了,留下一圈深褐色的印痕。
隔壁工位的同事林峰探头过来,压低声音说:“远哥,什么情况?刚才开会……”我摆了摆手,他后半截话咽回去了。他看着我,嘴唇抿了一下,又张开了:“那你的项目组……”
我说:“唐总说了,赵明接手。”
林峰的表情在那一瞬间变了一下。他张了张嘴,又闭上了。他的手指在桌面边缘上轻轻叩了两下,那种叩法是他在紧张的时候才会有的动作,指腹一下一下敲在桌沿上,发出沉闷的笃笃声。
我说:“老林,帮我把最近三个月的研发日志导出来一份,我这边系统权限已经没了。”
他点了点头,坐回自己的工位敲键盘去了。我转过身,面对着那两块显示屏。屏幕上代码行的颜色在暗下来的环境光里显得格外刺眼,绿色白色橙色,一行一行排列着。光标还在原地闪,频率稳定,一秒一次。
我伸手握住鼠标,把那个文件窗口最小化了,又点开了系统设置页面。页面上弹出来一个红色的提示框,上面写着一行字:“您的账户权限已被管理员冻结,如有疑问请联系系统管理员。”提示框下面只有一个确认按钮,我点了,框消失了,又回到了设置页面的默认界面。我试了试其他几个功能入口,无一例外,所有需要权限的门都关着。
我靠在椅背上,两只手搭在扶手上。椅背的皮革因为使用多年已经磨得发亮,靠上去的时候能感觉到腰部那个凹陷的位置被填得刚刚好。这把我坐了五年了,从研发工程师坐到了研发总监,从二十九岁坐到了三十四岁。我刚来的时候这把椅子还是新的,皮革上压着整齐的出厂纹路,现在那些纹路已经被磨平了,变成了一层光滑的皮面,在日光灯下微微反着光。
五年前我进明科的时候,公司还在租的写字楼里办公,研发部只有八个人。那时候唐若还不是总裁,她爸唐振国还在位子上。我面试的时候坐在一个隔出来的小会议室里,椅子是塑料的折叠椅,桌面上铺着一张印着旧logo的鼠标垫。唐若坐在桌子对面,穿着白衬衫,头发扎着马尾,像个刚毕业的研究生。她问了我三个技术问题,我回答了三个,她听完之后翻了翻我的简历,说:“你明天能入职吗?”
我在明科待了五年,带着研发团队从八个人扩到了五十多个,拿了二十多项技术专利。去年公司上市,唐若接了她爸的班当总裁,她在内部发布会上提到我,说“陈远是我们研发的顶梁柱”。那时候掌声响了很久。
现在我坐在那把皮椅已经磨光的椅子上,所有的权限都锁死了,我的名字从项目组的系统里被剔除了,登陆记录停在了今天下午四点五十三分。半个小时之前我还在讲台上讲着下一代的算法框架,现在我只是一个连自己代码都打不开的前员工。
林峰把U盘递了过来。小小的黑色U盘搁在他掌心里,上面贴着一张白色标签,手写着“研发日志备份”几个字。我接过来攥在手心里,塑料外壳被我的体温捂热了。我说:“谢了。”
林峰说:“远哥,你要是需要……我回头把代码……算了,系统都锁了。”他后面的话没有说完,但我知道他要说什么。他的手在桌面上拍了一下,力道不重,但声响清晰。他说:“赵明那人不靠谱,他上个月连测试环境都能搭错。”
我站起来,把笔记本电脑装进背包里。拉链拉上的时候声音很大,在安静的办公室里格外清晰。旁边几个工位的人都侧过头来看了一眼,又转回去了。办公室里的空气跟平时下班前差不多,键盘声、翻页声、杯盖合上的声响,但底下压着一种说不清的东西,像气温骤降之前那种静。
我把那盆绿萝端起来看了看。根部从花盆底部的小孔里钻出来了,在空气里卷曲着,干枯发黄。我本来想带走,想了想又放回去了。绿萝是公司的绿萝,根扎在公司的花盆里,留在工位上也许还有人浇水。我拿走了它,它也活不了几天。
我把马克杯里的咖啡倒进了水池,杯子冲了一下放回桌面。杯子底部已经洗掉了咖啡渍,露出原来白色的瓷面,logo上的五周年字样被水冲得亮了一些。
我背起背包往外走。走到门口的时候林峰在后面喊了一声:“远哥,回头联系。”我抬手摆了摆没有回头。走廊的声控灯因为感应到我的脚步声亮了起来,灯光白惨惨的,照着灰色的地毯和米白色的墙壁。我走到电梯门口按了一下按钮,电梯正在从一楼往上走,楼层数字一格一格地跳:2、3、4。叮的一声,门开了。
电梯里已经有一个人了,是行政部的赵姐。她看见我愣了一下,笑了一下说:“陈总监今天这么早走?”我说:“嗯,有点事。”电梯往下走的时候她站在我旁边,手里拿着一个快递纸箱。她看着电梯门上贴的公司公告,那是上周刚贴上去的团建通知,黄色的纸,黑字,写着“全体员工参加”。她说:“陈总监,你脸色不太好,是不是最近太忙了?”
我说:“没事,就是有点累。”
她看了我一眼,没再追问。电梯到了二楼,她出去了。门重新合上,电梯继续往下走。我看着楼层数字跳到1,电梯停了,门开了。一楼大厅的灯还亮着,前台后面的值班人员正在整理文件,抬头看了我一眼,冲我点了点头。我走过大厅的时候脚步不快不慢,门口的感应门自动滑开了,外面的风吹进来,凉飕飕的,带着园区里草木和泥土的气味。
我站在公司门口停了一下。园区的主路上停着几辆还没开走的车,路灯已经亮了,昏黄的光把路面照得发暖。左边的研发中心大楼窗口还有几盏灯亮着,是我刚才下来的那一层。右边的行政楼已经暗了大部分,只有总裁办公室那一扇窗亮着,灯光白亮亮的。
我看了那扇窗户一眼,两秒,然后转身往停车场的反方向走了。我的车还停在车位上,我没有去开。我背着那台笔记本电脑沿着园区的路走了出去,走到门口的时候保安坐在传达室里冲我看了看,我说:“出去一下。”他点了下头,没多问,按了开门的按钮。
出了园区之后我沿着路边走了大概一站地。路两旁种着法国梧桐,叶子开始黄了,在风里哗啦哗啦响着。有一片叶子从头顶飘下来落在我肩膀上,被我伸手拂掉了。路边有个便利店亮着灯,一个穿着围裙的店员正在往门口的冰柜里摆饮料,我在便利店门口停了一下,走进去买了一瓶水。
水是凉的,瓶盖拧开的时候发出轻微的咔哒声。我站在便利店门口喝了两口,凉水顺着喉咙滑下去,胃里激了一下。店门口那盏灯的光落在我脚前的地砖上,暖暖的橘黄色,有几只蛾子绕着灯罩扑棱棱地飞。
我走到路边的长椅上坐下来。长椅是铁艺的,靠背上有镂空的花纹,坐上去冰凉。风从椅背的孔洞里穿过来吹在后背上,凉意透过外套渗进皮肤里。我把水瓶搁在椅子扶手上,看着面前这条街上的车流。
车一辆一辆地过去,灯光明灭不定,引擎声低沉又断续,像一条缓慢流动的河。对面有家面馆亮着暖色的招牌,有人推门进去,门关上之前从里面涌出一团热气,在冷空气里化成一团白雾。那团雾散得很快,几秒钟就不见了。
我坐在那张长椅上,手握着冰凉的矿泉水瓶,看着那团雾气散掉的地方。手机在口袋里震了一下。我掏出来看,是一条系统通知,明科内部系统发来的,写着:“您的邮箱权限已锁定,后续请通过人事部门联系。”署名是IT运维部门的自动回复。
我把这条通知读了两遍,锁了屏幕,把手机放回了口袋。矿泉水瓶壁上凝了一层细密的水珠,在路灯的光里亮晶晶的。
我在那张长椅上坐了大约二十分钟,然后站起来继续往前走。背包里那台笔记本电脑隔着布料贴着后背,有一点点分量。夜风灌进领口的时候我拉了一下外套拉链,拉链头拉到最后的位置卡了一下,又推了一下才拉上去。
路上经过一家还没关门的小文具店,门口摆着几盆干花和一堆杂物。我站住了,想起来那盆绿萝还在工位上。根已经从盆底钻出来了,留在那儿大概也没有人会浇水。我推门进去,买了一包花土和一个小花盆。花盆是陶土的,暖褐色,手掌刚好可以握住。塑料袋拎在手里,塑料的提手在指间勒出一道浅浅的印痕。
回到租住的公寓时,防盗门上的锁被我转动时发出顺畅的咔嗒声。我开了玄关的灯,把背包放在鞋柜旁边,花盆和花土放在餐桌上。桌子上还摆着昨晚吃剩的方便面碗,碗底的汤汁已经凝了一层薄皮,油花在上面结成白花花的膜。我把碗收进厨房扔了。
我坐在餐桌旁边,把笔记本电脑拿出来放在桌面上。打开的屏幕上,任务栏角标里弹出了一个提示框,红色感叹号后面是一句话:“您的明科账户权限已被锁定,请手动注销本地缓存。”我点了确认,屏幕上弹出一个清理进度条,走了几秒就消失了。桌面背景还是五年前那个系统自带的蓝色风景图,山和水的轮廓在屏幕光里安安静静地卧着。
我把电脑合上,靠在椅背上。天花板上那盏灯的光是冷白色的,把餐桌上的陶土花盆照得颜色很正,像烤过的土,泛着哑光。我伸手拿起那个花盆在手里转了转,陶土表面磨砂的触感在指腹上清晰而温暖。
窗外的风又大了,把阳台窗户吹得哐当响了一声又停住了。我坐在那张椅子里,手里握着那个陶土花盆,想着五年前的面试,想着去年上市发布会上的掌声,想着唐若站在讲台上说“陈远是我们研发的顶梁柱”时那个表情,想着今天下午会议室里她说“我初恋也能干”时平淡的语调。
我把花盆放在桌面上,站起来去阳台把窗户关紧了。关窗的时候我看见对面楼的窗户里有人家的灯光,暖黄色的,有人影在窗帘后面晃动。阳台上的晾衣架是空的,风穿过架子的铁管时发出呜呜的低响。
我关好阳台门回到屋里。餐桌上的电脑屏幕暗着,反射出我自己的轮廓。陶土花盆旁边搁着那包花土,塑料袋口扎着,里面深褐色的土在灯光下看起来湿润而有生气。
我伸手把那包花土拆开了,倒了一些进花盆里。土落进花盆的时候发出细碎的沙沙声,在安静的房间里格外清晰。我用手掌把土面按平了,指尖上沾了些土末,深褐色的,带着一点湿润的气味。
窗外对面楼那盏暖黄色的灯关掉了,那扇窗户变成了暗的。我看着它暗下去,然后把花盆放在了窗台上,让它在月光里待着。
第二章 初恋
第二天是星期六。
我醒得很早,窗帘缝里漏进来的光是灰白色的,还不到六点半。我躺在床上看着天花板上那道细长的裂纹,跟我刚搬进来时一样,从灯座旁边一直延伸到墙角,窄窄的,像一条干涸的河。
手机屏幕亮了一下,我拿起来看。是林峰发来的消息,他凌晨两点多发的,字不多:“远哥,赵明今天一早进你办公室了,把你的资料柜撬了,行政那边说这是系统权限转移的正常流程。我就是跟你说一声。”
我看了两遍这条消息。屏幕的光在昏暗的房间里亮着,把被子上的褶皱照得很清楚。林峰凌晨两点多还在公司,大概是加班,或者是帮我盯着什么。我回了一句:“没事,让他撬。”发完之后我把手机放回床头柜上,翻了个身面对着墙壁。墙壁上贴着前年公司年会发的福字贴纸,红色的纸已经褪成了淡粉色,边角卷了起来。
我起来洗漱。卫生间水龙头拧开的时候水流冲出来打在白色瓷面上,哗啦一声,在清晨的安静里显得很响。我用手接了一捧水扑在脸上,凉得我闭了一下眼睛。毛巾挂在架子上,边缘已经洗得发硬了,挂在脸上有种粗糙的摩擦感。
煮了粥,坐在餐桌边慢慢喝完了。粥熬得稀,米粒沉在碗底,舀起来的时候又散回去。窗台上那个陶土花盆还在那里,土面还是昨晚我按平的那个形状。我看了看它,又看了看那包没拆完的花土,把它封好了放在角落。
上午十点的时候,电话来了。
我看了来电显示,是唐若的私人号码。我握着手机等它响了第五声才接起来。她在那边声音跟平时一样,不高不低,每个字都咬得很清楚:“陈远,你的离职手续人事那边已经启动了。按照合同,核心技术岗离职有竞业限制,明科会按规定支付竞业补偿。另外,你的研发资料和设备需要你在两周内完成交接。”
我靠在厨房台面上,手指握着手机边缘,指甲盖在手机壳的磨砂表面压了一下。我说:“唐总,我的系统权限昨天下午就已经被冻结了,交接需要的东西我拿不出来。”
她在那边安静了一瞬。空气里能听见她办公室里轻微的空调风声,嘶嘶的,匀速持续着。她说:“赵明会跟你对接。你手里的算法框架和底层逻辑,他需要你提供一个完整的技术文档。”她顿了顿,像在斟酌措辞,然后补充了一句:“我这边的安排,也是为了项目的延续性考虑,希望你理解。”
我说:“那个算法框架是我写的,底层逻辑也是我搭的。你们要文档可以,但不能用在我的项目里。那是我自己做的技术架构。”
她笑了一声。那种笑很短促,从听筒里传过来的时候带着一点电流的杂音:“陈远,你的项目?那是我爸公司的项目,是明科的项目。你拿了五年的工资和年终奖,你跟我谈你的项目?”
厨房窗台上那个陶土花盆在上午的日光里安静地站着,土面干了一层浅色的壳。我握着手机,指腹贴着屏幕边缘。我说:“唐若,你爸当年让你来招我的时候,跟你交代过什么,你还记得吗?”
电话那头沉默了几秒。她开口的时候声音低了一些,像线被拉紧了一瞬又松开了:“陈远,我不想谈过去的事。你现在需要做的是配合交接,否则合同里竞业条款和保密协议的部分——你自己清楚。”
我说:“清楚。那你清楚我的研发日志里每一个commit记录都是我自己写的吗?清楚我把那个框架从零搭到现在的程度,加了什么改了什么都记在系统里吗?”
她没有回答。电话那头只有空调风声和偶尔纸张翻动的沙沙声。过了几秒她开口说:“周一上午九点,你回公司做交接。赵明会联系你。就这样。”电话挂了。
我把手机从耳边拿下来,屏幕还亮着,通话结束的界面显示通话时长两分三十八秒。我把手机放在餐桌上,拿起来又放下了。厨房窗台上的花盆在阳光里投了一小片影子,落在台面上,安安静静的。
下午一点的时候,一个陌生号码打了进来。我接了,那边是个男人的声音,陌生但带着一种自来熟的客气:“陈工你好,我是赵明。唐总应该跟你说了,下周一咱们对接一下项目文档的事。你看你那边方便不?”
我说:“方便,上午九点。”
他在那边笑了笑,那种笑像在办公室里对着同事展开的,客气有余温度不足:“行,那到时候直接来研发中心五楼,咱们在你原来那个办公室碰。”
他说“原来那个办公室”的时候,语调没有起伏,像在说一件跟自己毫无关系的事。我说:“好。”
下午时间过得很慢。我坐在客厅沙发上,窗外的阳光从西边斜照进来,在地板上慢慢移动。我看着光斑从沙发脚爬到茶几腿上,又从茶几腿爬上茶几面。那个过程很慢,慢到如果不一直盯着几乎看不出变化,但时间确实在走,一寸一寸地走。
我在沙发上坐了很久,没有看书,没有看电视,没有看手机。就坐在那里,看着光斑移动。等到光斑从茶几上消失了,天开始暗下来,我才发现自己一直攥着手机没有松开过。
晚上去楼下超市买东西的时候,在货架之间碰见了同楼的邻居老王。他推着购物车,车里放着一袋米和几瓶酱油,看见我打招呼说:“陈工,周末没出去?”我说:“没有,在家歇着。”他说:“那好好休息,你们搞技术的太辛苦了。”我说:“还行。”
他推着购物车走了。我站在货架前面看着那一排排的方便面,红红绿绿的包装袋挤在一起,在超市的灯光下颜色鲜艳。我拿了两包放进购物篮里,又拿了一盒鸡蛋和一袋速冻饺子。
结账的时候收银员是个年轻姑娘,扫完最后一件东西说:“一共四十三块八。”我掏出手机付了。她递过来小票的时候看了我一眼,那个眼神很普通,就是每天对着几百个顾客的那种例行目光,但我注意到她多停留了一瞬。
我拎着购物袋回家,爬上楼梯的时候袋子里的鸡蛋碰在楼梯扶手上发出一声轻响,我又拎高了点。进了屋把东西放好,打开一包方便面煮了。水烧开的时候腾起的热气模糊了厨房的窗户玻璃,我在那片雾气里站了一会儿,把面饼放进锅里煮了三分半钟捞出来。
我端着面碗坐在餐桌边。窗台上那个陶土花盆的影子被灯光拉长了,投在墙面上,形状像一个小小的山丘。我吃着面,汤有点咸了。我吃完面去洗碗,水龙头开得很大,水冲在碗面上的声响盖住了屋子里所有的安静。
洗完碗我走到窗台前面,蹲下来看着那个花盆。花盆里的土面干裂出几道细纹,在灯光下像一张缩小的干涸河床。我伸手用手指在土面上按了一下,土粒在指腹上散开,干燥而细碎。
我站起来看着窗外。对面楼的窗户里亮着灯,有的人家在吃晚饭,有的人家在客厅看电视。那些光从一个个方形的窗口透出来,像棋盘上散落的棋子。我看了一会儿,拉上了窗帘。
周一早上八点四十分,我到了公司园区。
保安看见我,眼神里有一点诧异但没多说什么,抬了一下栏杆放我进去了。我走过园区主路的时候银杏树的叶子落了一层,在晨光里铺成金黄色的地毯,踩上去的时候叶面碎裂的声音细碎而清脆。
电梯到了五楼,门开了。走廊里有人端着咖啡走过,有人从我身边经过时点了一下头又快步走开了。我走到研发中心五楼那扇熟悉的玻璃门前,里面的布局跟三天前一样,工位上的人跟三天前也差不多,只是我自己站在门外的身份不一样了。
林峰看见我从座位上站起来,快步走过来,压低声音说:“远哥,赵明在你办公室里等着。他把文件柜钥匙换了,资料全部重新归档了。”他说到最后一句话的时候眉头皱了一下,那个表情里有他平时不常有的认真。
我点了点头,推开办公室的门。那间办公室我用了三年,墙上还贴着我贴的几张技术架构图,桌面上多了两盆新的绿植,是赵明的风格。我原来那把椅子被挪到了一边,换了一把更高的黑色转椅,赵明坐在那把椅子上,听见推门声转过头来,脸上挂着一个标准的职业笑容。
他站起来伸出手:“陈工,来了,坐。”他指了指办公桌对面的那把旧椅子,那把我坐了三年的椅子,现在被放在角落里,椅背上搭着一件我不认识的外套。
我在那把旧椅子上坐下来。椅子还是原来的触感,坐下去的时候腰部那个凹陷被填得刚刚好,皮革上已经被磨得光滑冰凉。窗外的阳光从百叶窗的缝隙里照进来,在桌面上切出一道一道平行的亮带。
赵明坐下来,把一份打印好的清单推到我面前。清单上列了十二项技术文档和测试报告的名称,每一条后面标注着具体的版本号和编写日期。我扫了一眼,全都是我写的,最早的可以追溯到两年半以前。他的手指在清单上点了点,说:“唐总说了,这些材料你提供了就行。你的算法框架,我这边重新搭了底层,很快能跟上进度。”
他说“重新搭了底层”的时候,语气里带着一种轻松的笃定。我看着他,他的手指从清单上拿开了,在桌面上轻轻敲了两下。我能看到他领带夹上的明科logo在窗口的光线里反了一下光,又暗了。
我把那份清单折起来放进了口袋里。我说:“赵明,清单上的东西我会提供。但是,那个底层架构你搭不出来的。”
他看着我,脸上的笑容还挂着,但那种笃定的东西稍微退了一下:“陈工,你这是不相信我的技术能力?”
我没有接话,只是把清单从口袋里重新拿了出来,展开在桌面上。我指着清单上第三条:“这个测试报告的源数据在数据库第九张表里,你权限够的话可以直接查。但你查完之后会发现第九张表的内容是半年前的旧版本。最新的测试数据在其他地方。”
赵明低头看了一眼我手指点着的那个位置,他脸上的笑容完全收住了。
窗外的阳光从百叶窗的缝隙里穿过来了,落在桌面上那把新椅子的扶手上,白亮亮的。那把椅子在光里泛着崭新的皮革光泽,还没有被任何人的体温捂热过。
我站起来,把那把旧椅子轻轻推了一下让它归回了原来的位置,椅脚在地板上蹭过时声响轻而持续。我说:“赵明,交接材料我周一发到你邮箱。其他的,你自己慢慢找。”
我转身走出了那间办公室。走廊里的声控灯亮了,把灰色地毯照得颜色均匀。电梯门开了又合上,楼层数字一格一格地跳下去。
第三章 旧代码
周一晚上八点,我坐在公寓的餐桌前,面前摊着笔记本电脑和那个黑色U盘。U盘插在USB接口上,指示灯亮着蓝色的小光点,在桌面昏暗的环境里像一个微缩的信号灯。
我把U盘里林峰导出来的研发日志复制到了本地。文件夹的图标一个个排列在屏幕上,按日期排序,从三个月前到今天。我点开了最近的一个文件夹,里面是几十个代码文件和一个说明文档。我翻了翻文件名,大部分跟我记忆中的对应,但有一部分我认出来不是我的。
我找了一个最旧的版本文件打开。窗口弹出来的时候,代码行在屏幕上展开,密密麻麻的,注释行用绿色标记,每一行开头都写着我的名字缩写。我看着那些缩写在屏幕上一行一行地排列过去,光标在最后一行旁边一闪一闪的。
窗台上那个陶土花盆里的土还是干裂的,两天没有浇水了。我起身接了一杯水,浇了进去。水渗进干土的时候发出细碎的嘶嘶声,土面慢慢变深了,从浅褐色变成深褐色。水渗到底部之后从花盆底孔渗出来一滴,落在窗台上,圆形的一小颗,像冬天玻璃窗上凝的露。
我回到餐桌边继续看代码。翻了大概半个小时之后,在一份旧版本的架构设计文档里找到了我想要的东西。那是我两年前写的一份底层调用的接口文档,里面用绿色注释标注了一行备注:“此接口调用暂保留旧路径,三个月后切换至新架构,届时需将所有调用链路更新。”
那行备注是绿色的,排在其他注释行中间,不仔细看很容易忽略。我在那行备注上停住了光标。这个接口从旧路径到新架构的切换,我去年完成了大部分,但最后的一小部分因为优先级调整被搁置了。那个被搁置的部分,正是连接当前核心算法的关键一环。如果没有完整迁移,新版本跑在旧架构上会出兼容性问题,运行结果会偏离预期。
我把那行备注截图保存了,又往前翻了几页代码确认了相关的调用位置。屏幕上那些代码行在深色背景里排列着,绿色的注释、白色的正文、橙色的关键字,每一行都是我写的,每一行都经过我的手从键盘上敲出来存进系统里。
手机在桌面上亮了一下,是林峰发来的消息:“远哥,赵明今天下午召集了全组开了技术评审会,他把你原先的架构图改了三处,在会上说下周初版就能跑通。组里几个人看着没说话。”
我回:“他改的是哪三处?”
林峰回了一串文件路径截图,红色箭头标出来了改动的位置。我看完那三处改动,在椅子上坐了一会儿。那三处改动都不是关键性的技术优化,而是为了绕过某些复杂模块做的简化处理。赵明把复杂的东西简化了,跑通确实会快,但跑通之后的结果精度会降一个量级。
我给林峰回了一条:“让他跑吧。”
发完之后我关了手机屏幕,看着桌面上那张截图。窗外的月光从窗帘的缝隙里透进来落在桌面上,在那张截图旁边形成一小片银白色的区域,跟屏幕的蓝光叠在一起,颜色混成一种深浅交织的灰蓝色。那盆被浇过水的花盆在窗台的月光下安静地站着,土面的颜色在暗处看起来跟白天不太一样了,更深了一些,带着水的重量。
周二上午,我没有开电脑。我去了趟花卉市场,买了一株新的绿萝,比工位上那盆小一些,但叶子油绿油绿的,根也壮实。店主是个戴草帽的老头,他把绿萝从育苗盆里挖出来包好递给我,说:“这好养,浇水别太多,见干见湿。”我把绿萝带回公寓,换进了窗台上那个陶土花盆里。花盆里的土已经被水浸透了,我用手把土面拨开一些,把绿萝的根埋进去,压紧压实。绿萝的叶子在窗台的阳光里伸展了一下,像刚睡醒的人在伸懒腰,叶尖微微颤了颤就停住了。
下午我出门买了几样东西。一盒新的签字笔,一本牛皮纸封面空白笔记本,一台便宜的打印机。把打印机从超市扛回公寓的路上,箱子角硌着我的肋骨,一步一硌。上楼梯的时候我不得不把箱子换了个方向抱着才觉得好受些。
到家之后我把打印机装好连上了电脑。墨盒装进去的时候发出咔嗒一声,蓝色的指示灯亮了。我把那个U盘里的研发日志和那个关键的接口文档打印了一份。打印纸一张一张从出纸口滑出来的时候,上面的字在午后的阳光里清晰分明。
我坐在餐桌边,把打印好的文件按时间顺序排好,用订书机一沓一沓地装订起来。订书机的针脚穿透纸页的时候发出清脆的咔嚓声,在安静的房间里一下一下地响着。五份文件装订完了之后摞在一起,放在桌角上,白色纸页的边角在光照里叠成整齐的阶梯。
周三下午,林峰打来了电话。他的声音比平时快一些:“远哥,赵明的初版跑完了。”我听着他顿了顿,咽了一口什么的声音顺着听筒传过来,“结果差太多了,精度偏离了将近四成,测试组那边不签字。赵明在会上说数据有问题,让测试组重新出样本。”
我说:“数据没问题。”林峰那边安静了一下,然后说:“我知道。但是远哥,唐总今天下午来研发中心了,在赵明办公室待了快一个小时。她走的时候脸色不怎么好看。”
我站在窗台前面,看着那盆新绿萝。它在陶土花盆里站了三天了,新叶子已经适应了新的盆土,在下午的光线里绿得透亮。我说:“老林,那个接口的旧路径,你知道在哪里吧?”
林峰在电话那头的呼吸声变轻了。他说:“我知道。你去年跟我说过那个切换的事,当时说等优先级调整完再动。后来你没再提,我也没问。”
我说:“那段代码还在吗?”
电话那头沉默了几秒,像他在回忆什么。然后他说:“在。你写的东西,我没删过。”
窗外的阳光正照在打印机出纸口那张刚印出来的文件上,纸面上的字在光照里墨色分明。我握着手机,看着那张纸上的代码片段:“那个旧路径的接口文档,我发给你。你找个机会让测试组的人看到就行了,不用你做别的。”
林峰在电话那边停了两三秒,然后说:“好,我知道了。”
电话挂了之后我把手机放在窗台上。新绿萝最顶端的那片嫩叶在风里轻轻晃了一下,叶尖擦过我的手指,触感微凉而柔软。我用指尖碰了一下那叶片,又收回了手。
周四上午,我去了一趟快递站。用牛皮纸信封把那份装订好的接口文档复印件包好,封口贴上胶带,地址栏填了明科研发中心测试组的地址。寄件人一栏我空着没写。快递员说:“寄件人得写。”我想了想,写了一个“旧人”。他把信封收进快递袋里,撕下来一张底单递给我。底单上的字随着他按压的力道清晰地印在了纸张上,我折好放进口袋里。
从快递站走回家的路上,风从街口灌进来把梧桐树的叶子吹得漫天飞。有一片叶子打在我额头上又弹开了,落在地上翻了个面,被风推着沿着路面滑出去一段。我低头看了看那片叶子,是枯黄色的,边缘卷曲着,叶脉干瘪而清晰。
那段时间我几乎没有出过门。每天早上起来第一件事是给绿萝浇水,看看它的叶子有没有新的变化。一周过去了,它长出了两片新叶,嫩绿色的,叶面带着一层绒毛,摸上去像极细的天鹅绒。我把那两片新叶拍了张照片,存进了手机相册。
周五下午,林峰的电话又来了。
他说:“远哥,测试组那边拿到了那份接口文档了。他们跟赵明对质了,说数据偏离是因为新架构没把旧路径完全切走,底层调用还是老的链路。赵明在会上当众说了句‘这是陈远写的文档’,话一出口全场都安静了。”
我站在窗台前面,听着电话里林峰的声音。他的语速比前几天慢了一些,每句话之间的停顿也更清晰了。他说:“唐若今天下午也来了。她把赵明单独叫出去了,回来之后赵明的脸白得吓人。他那个初版被撤了,唐若在系统里把权限重新开通了一次,但你原来的那个研发账户还是锁着的。”
我看着窗台上那盆绿萝。阳光正从窗外照进来照在叶子上,把叶片上的绒毛照得发亮,像蒙了一层细碎的光粉。我握着手机,手指在手机壳边缘慢慢滑过,感受着磨砂表面在指腹下的纹理。
我说:“她不会开我的权限的。她说过她初恋能行。”
林峰在那边沉默了一下,然后说:“远哥,你真的要走?”
我站在窗台前面,阳光落在我握着手机的右手手背上,暖融融的。我侧过头,目光越过窗沿落在外面的街道上。楼下有个骑三轮车的大爷正在把一车废纸板卸下来,纸板一摞一摞地堆在路边的墙根下,堆得整整齐齐的。他弯腰的时候影子落在地上,短短一团,随着他的动作移动。
我说:“已经走了。”
挂了电话之后我把手机放在窗台上,伸手碰了碰绿萝那片最嫩的叶子。叶面在我的指尖下微微颤了一下又恢复了静止。我转身回到餐桌边坐下来,翻开那个牛皮纸封面的笔记本,第一页上面写着今天的日期。我在日期下面画了一条线,线的下头空着,暂时没有写字。
窗外的天空是那种秋末冬初特有的灰蓝色,干净而高远,几缕薄云横在天幕上,像手指在天鹅绒表面划过的痕迹。有两只鸽子从窗外的空中掠过,翅膀扇动的声音隔着一层玻璃传进来变得很轻,像远方什么东西被风送过来又带走了。
第四章 新架构
赵明的初版架构在测试组被驳回之后,研发中心的氛围明显变了。
林峰后来跟我陆续说了一些消息。赵明又开始改架构图,这次改得比以前更谨慎了,连午休时间都坐在办公室里对着代码一行一行检查。组里几个核心工程师私下开了个小群,林峰也在里面。他们拿我的旧版本和赵明的新版本做了对比,发现赵明虽然补上了接口的问题,但其他几个模块的逻辑重构也不够彻底。
林峰在电话里说:“远哥,你的那个架构他拆不动。”我说:“不是他拆不动,是他看不懂底层的那部分逻辑。那部分逻辑是我用自己写的一套工具链生成的,整个工具链都在我的系统账户里。他拿不到那个,再怎么改也只是在原架构的表层打补丁。”
林峰在电话那头沉默了几秒,像是在消化这句话的意思。然后他说:“那你的账户一天不恢复,整个新架构就一天没法真正落地。唐若知道这个事吗?”
我说:“她知不知道都一样。她说了不要我做,那我就不会回去做。”
那盆绿萝在窗台上又长了一周,新叶子多了四片,整个植株比刚买回来的时候大了一圈,叶片油绿厚实,在冬日上午的阳光下泛着健康的光泽。我每天给它浇水的时候都会蹲下来看一会儿,看那些叶片朝向光源的方向微微倾侧过去,像在跟着光慢慢移动。
第二周周二,我收到了人事那边寄来的正式离职文件和竞业限制协议。牛皮纸信封厚厚一沓,拆开的时候纸张的边角很利,割了一下我的食指侧面的皮肤,留下一条细小的白印子。我翻到竞业协议那一页看了看,上面写着离职后十二个月内不得入职同行业竞争公司。
我拿起笔在签字栏写了自己的名字,把协议寄回去了。寄出去的时候快递员问我:“里面是重要文件吧?”我说:“算是。”他拿胶带把封口又加固了一层,说:“那给你包结实点。”
回家之后我在餐桌边坐了一会儿。桌面上摊着那份协议的复印件,白色纸页在午后的光线里映出淡淡的人影轮廓。窗台上绿萝的叶子在安静的环境中轻轻颤了一下,像是被什么看不见的气流拂过了。
我打开笔记本电脑,新建了一个文档。光标在空白页面上闪了一下就不动了,等着输入。我盯着那片空白看了几分钟,手指放在键盘上,没有按下任何键。
我关掉了文档,打开了浏览器。搜索栏里我输入了几个关键词,是关于技术架构的开源框架和一些新的研究方向。搜索结果一条一条列出来,蓝字标题下面跟着灰色的描述文字。我往下翻了翻,看到一篇关于分布式计算的论文,作者署名是国外一个大学的研究团队,发表日期是上个月。
我点进去看了摘要。几段话读下来,我的手指在触摸板上停住了。论文里提到的一种新的数据结构优化方法,跟我两年前写的一份内部研究笔记的思路高度相似。那份笔记我没有公开发表过,只是存在明科的内部知识库里。我继续往下看,论文后面的实验数据和对比图表跟我的笔记内容有一些差异,但核心逻辑有重合的部分。
我把论文全文下载下来保存了,又去那个大学的官网查了一下作者信息。作者栏写的是一串英文名字,但我注意到其中一个署名缩写,格式跟我当年在明科内部笔记里用过的署名缩写一模一样。那种缩写方式不是通用的,是我自己编的,字母组合没有规律。
我关了浏览器,坐在椅子上盯着桌面上的电脑外壳。外壳是深灰色的铝合金材质,边角被我的手掌磨出了几道细微的亮痕。
那天晚上我接到了唐若的电话。她打来的时候是九点多,我正在煮面,锅里的水刚烧开冒着滚烫的白汽,手机响的时候我擦了一下手才接起来。
她的声音听着比上次疲惫了一些,像嗓子底下压着什么没说出来:“陈远,赵明那边说你的底层工具链不在系统的档案记录里。那份工具链你存放在哪里的?”
我把火调小了一点,锅里的水面平静了下来。我说:“在我脑子里。”
她那边停了两秒。我以为她会说点什么,但她只是沉默了。那种沉默跟以往不同,里面没有命令也没有催促,只是一段空白。过了几秒她说:“陈远,你把工具链留在明科,我不追究你用公司资源做个人开发的事。”
我站在厨房里,手里握着锅铲,锅里的水又慢慢沸腾起来了,气泡从锅底升起来翻到水面上破裂成细微的水汽。我说:“工具链是我入职之前自己写的,没有用公司任何资源。明科的档案里没有记录,是因为它本来就不属于明科。”
电话那头安静了很久。我把火关了,面条在锅里慢慢泡着,水汽从锅边溢出来模糊了手机的屏幕。她说:“你什么时候写的?”
我说:“你爸让我来面试那个月写的。写完之后带过来了,一直都是个人工具。”
她挂电话的时候没有说再见。听筒里的忙音响了两声我就按掉了。我把手机放在灶台边上,把面条捞进碗里,浇了调料,端到餐桌边吃了。面条已经泡得太软了,筷子夹起来的时候一碰就断,但我还是把它吃完了。
吃完面我去洗了碗。拧开水龙头的时候自来水冲在手指上已经凉了,冬天了,水管的温度跟着室外降了下来。我站在水池前面冲了一会儿,水从指间流过的时候带走了一层碗底的油渍,滑进下水道时发出低沉的咕噜声。
窗台上那盆绿萝在夜风里轻轻晃动着叶片,我伸手关了客厅的灯,屋里暗下来之后月光从窗外透进来,落在陶土花盆的边沿上,把盆沿照出一道银白色的弧线。绿萝的叶片在月光里变成深浅不一的灰色,一片叠着一片,安静地展开着。
我回到餐桌边,在黑暗里坐了一会儿。
月光从窗外漫进来,落在桌面上那片还亮着的电脑屏幕上,光线弱到几乎看不见任何字。但我没有开灯,就那么坐着,看着窗台上那盆绿萝在夜风里轻轻摆动的叶子。叶片的形状在月光里被简化为一个个柔软的弧线,边缘微微反着光,像被镀了一层极薄的银粉。
那天晚上我睡着之前想了一件事,一件我之前没有认真想过的事。那份分布式计算的论文作者署名缩写跟我五年前用过的缩写一致,但那个缩写我没有在任何公开场合使用过,只在我个人的笔记和代码注释里出现过。
如果论文作者之一真的是明科内部的人,那意味着我离职之前,明科的知识库已经被有意地使用了。而唐若说她的初恋从硅谷回来,时间和论文发表的日期在时间线上是吻合的。
我把这些念头在脑子里放了一遍,没有下结论。窗外的夜风吹着阳台窗户的锁扣,发出轻微的金属碰撞声,一下一下的,像有人在远处的铁皮屋顶上轻轻敲着什么。
第五章 论文
那篇论文我翻来覆去看了三遍。
第一遍看的时候注意到署名缩写的问题,第二遍看的时候对照了我的内部笔记内容,第三遍看的时候我打开了一个空白文档,把论文里的核心推导步骤跟我的原始笔记做了逐行对比。
对比完最后一行的时候已经凌晨一点多了。我靠在椅背上,手指离开了键盘。屏幕上的对比表格排得密密麻麻的,左边是我两年前写的原始推导,右边是论文里发表的版本,中间标注着差异和重合的部分。重合度高的那些段落,结构顺序都几乎一样,只是换了变量符号和表述方式。
我看完那个对比表格之后没有保存文件,直接把文档关掉了。电脑发出提示音问我要不要保存更改,我选了不保存。
手机在桌面上亮了一下,是林峰发来的消息,凌晨一点十一分:“远哥,你知道吗?赵明从明科离职了。”
我盯着那行字看了几秒。屏幕上光标还在那条消息后面一闪一闪的。
林峰又发了一条:“今天下午的事。他把自己办公室清空了,走的时候什么也没说。唐若没露面,听说她今天一天没来公司。远哥,这事是不是跟你那个工具链有关系?”
我打字回他:“工具链的事,跟赵明离职没有直接关系。”我没有提论文的事。
林峰回了个“哦”字,过了半分钟又发了一条:“那唐若那个初恋呢?我听说他下周就回国了,唐若的秘书在给他安排办公室。”
我看着那条消息,把手机屏幕按灭了。手机的光消失之后屋里重新暗下来,只有窗外透进来的路灯光在墙角投了一道淡黄色的长条。绿萝的叶片在黑暗里只能看见大致的轮廓,一片一片叠在一起,像一丛静止的暗影。
第二天早上我起来得晚,阳光已经从窗帘缝里透进来照在枕头上了。我坐在床沿上醒了一会儿神,起来洗漱煮了粥。
吃粥的时候手机响了,是一个座机号码,区号是本市的。我接起来,那边是个男人的声音,普通话标准,语速中等,带着一点科技行业常见的利落感:“陈远先生吗?我叫宋涛,原来在明科技术部工作,两年前离职的。我冒昧给你打电话,是因为我最近看到了一篇论文,想跟你聊聊。”
我放下粥碗:“宋涛?我不记得认识你。”
他在那边笑了一声,那种笑声不像是客套,更像是确认了什么之后的放松:“你不认识我,但我认识你。我在明科的时候是知识库管理员,你两年前存入内部系统的那份研究笔记,是我分拣归档的。那份笔记的署名缩写,最近出现在了一篇国外的学术论文里。这事你知道了吗?”
我说:“我知道。”
宋涛在那边沉默了一下,然后他开口,语速比刚才慢了一些:“陈远,那份笔记在存入系统之后的半年内,只有两个人调阅过。一个是赵明,一个是唐若的私人助理。调阅记录在系统日志里,我刚才从备份里翻出来了。”
他顿了顿,声音低了一些:“调阅的时间点,正好在那篇论文开始投稿之前。陈远,我觉得这事你该知道。”
我握着手机站在窗台前面。阳光从窗帘的缝隙里穿进来,落在陶土花盆的边缘,在盆沿上形成一道细细的金色光带。绿萝的叶片探进那条光带里,叶脉被光照得透亮。
我说:“宋涛,你为什么告诉我这个?”
电话那边安静了两秒。然后他回答:“因为那份笔记是我归档的,上面没有任何明科的标记,那是你个人的东西。有人在未经你同意的情况下把它拿出去了,我不觉得这是对的。”
窗台上的光带在慢慢移动,从花盆边沿移到了绿萝最大那片叶子的中央,把整片叶子照成半透明的绿色。宋涛又说:“而且,陈远,我离职前最后一周,在系统里发现了一条异常记录。你的个人账户在离职当天被访问过一次,访问人的权限级别是总裁办公室。我当时没有上报,因为我不确定那意味着什么。现在我觉得该让你知道。”
窗外的阳光照在绿萝的叶片上,叶缘在光照里呈现出半透明的质感。我说:“宋涛,你有那些日志记录的备份吗?”
他说:“有。我自己备份的。”
我放下粥碗,走到桌边拿起笔,在笔记本上记下了一行字:“知识库日志备份——宋涛。”笔尖划过纸面时发出沙沙的声响,在安静的房间里格外清晰。
挂了电话之后我在窗台前面站了很久。绿萝的叶子在上午的日光里静静舒展着,最顶端那片新叶完全展开了,叶片表面的绒毛在特定角度的光线里像一层极薄的霜,被光一照就看不太清楚了。
我把手机放下,重新端起那碗已经凉了半截的粥,一口一口喝完了。粥凉了之后米粒显得更硬一些,在嘴里一粒一粒的,得慢慢嚼。
第六章 公开
接下来三天,我没有接到任何来自明科方面的电话。
林峰每天会发几条消息过来,说公司里的情况。赵明离职之后研发中心暂时没人牵头,几个项目组并行运转着但各管各的,测试组那边积压了好几个版本没审。唐若这两天来过公司一次,待了不到两个小时就走了。林峰说她走的时候表情没什么变化,但接电话的次数比平时多。
第四天,那个所谓的初恋来了。
林峰的消息是中午发来的:“远哥,唐若那个初恋到了。姓方,叫方舟。今天上午在研发中心转了一圈,跟几个组的人聊了聊技术方案,下午进了唐若办公室一直没出来。”
我看完这条消息锁了屏幕。手机放在桌面上,屏幕暗下去之后倒映出天花板那盏灯的轮廓,模糊的圆形光斑。
窗台上的绿萝长势很好,新叶子从茎秆上冒出来卷成细长的一卷,尖上带着一点水珠的残留。我伸手碰了一下那卷新叶,还没完全展开的叶面比展开的要厚一些,摸上去有一层蜡质的触感。
下午三点,我收到了一封邮件。发件人是方舟,地址是明科的内部域名。邮件正文很短,只有三行字:“陈远先生你好,我是方舟。我了解了你离职前后的事。你写的那个工具链和底层架构,我想跟你当面聊聊。明天下午两点,明科对面那家咖啡店,你看方便吗?”
我看了那封邮件两遍。光标在屏幕上一闪一闪的,邮件正文的三行字安安静静地排在那里。
我回了一封:“方便。”
第二天下午,我到那家咖啡店的时候差十分两点。咖啡店在明科园区正门对面的街上,隔着一条马路,透过玻璃窗能看见明科的大楼和楼前的银杏树。树叶已经落了大半了,剩下的几片挂在枝头在风里晃着,像残余的金色小旗。
我点了杯美式,在靠窗的位置坐下。咖啡端上来的时候,杯子里的液体表面泛着一层细密的泡沫,热气从杯口升起来在冰凉的玻璃窗上凝成一小片雾气。
两点整,咖啡店的门被推开了。一个男人走进来,穿着灰色高领毛衣,外面套一件黑色的大衣。他扫了一眼店里,目光落在我这边的方向,然后走过来,在大衣脱掉后把衣服搭在椅背上,在我对面坐下。他看起来跟我差不多年纪,头发剪得短而整齐,下巴的轮廓清晰。他坐下来的时候从大衣口袋里掏出一个牛皮纸信封放在桌面上,信封的封口已经打开了。
他说:“陈远,我是方舟。谢谢你能来。”
我端起杯子喝了一口咖啡,苦味在舌尖上散开。我说:“方先生,你邮件里说想聊工具链和底层架构。”
他点了点头,手指在那个牛皮纸信封上轻轻按了一下又拿开了。他开口的声音不算高,但每个字都清楚:“我看了你的工具链逻辑结构。虽然我没有拿到完整的代码,但赵明走之前留下了一部分中间层的调用记录。我从那些记录里推断出了你的设计思路。坦率说,那个架构我写不出来。”
他说这句话的时候看着我的眼睛,没有闪躲的意思。他说:“我今天来不是替唐若谈什么条件。我是想知道,你愿不愿意回来把那个架构做完。”
咖啡店里背景音乐在放一首老歌,英文的,旋律舒缓。我看着他放在桌面上的那个信封,封口处露出一截白色纸片的边缘。我说:“方先生,你从硅谷回来,就是为了替明科找我回去做架构?”
他笑了一下,那笑容很浅,没有温度但也不算冷:“我回来有一部分原因是为了工作,有一部分原因是为了别的事。唐若说让我接手研发的时候,我答应了,因为我不知道她说的‘接手’意味着什么。来了之后我才发现,赵明已经折腾了快一个月了,研发组停摆,核心代码没人维护。那个架构从一开始就是你搭的,你走了谁也接不住。”
他顿了顿,手指在桌面上轻轻叩了一下:“我不会做那个取代你的人。”
窗外的风把路边剩下的银杏叶吹起来几片,贴在了咖啡店的玻璃窗上,贴了一瞬又被风吹走了。我低头看着自己面前的杯子,咖啡液面已经平静了,泡沫散了大半。
我说:“方先生,你知道那篇论文的事吗?”
方舟的表情在那个问题上停了一下。他看着我的目光里亮了一下,那种亮不是意外,更像是一个他本来就在等待的讯号。他说:“我知道。那篇论文的署名里有一个缩写,用的是你的个人标记,对吧?我来之前查过知识库的调阅记录。那篇论文的发表时间跟调阅记录的时间吻合。”
他在说“调阅记录”的时候,手指从桌面上抬起来,指着桌上那个牛皮纸信封:“这里面是我从系统日志里导出来的完整调阅记录副本。包括什么时候、谁调阅的、调阅了哪份文件。唐若的私人助理那条记录在里面,时间戳对得上。”
他顿了一下,喝了一口自己面前的咖啡。杯壁碰撞桌面的时候发出细微的声响。他说:“陈远,我今天来,还有一件事。那篇论文的共同作者里,有一个名字你查过没有?”
我看着他从信封里抽出几页纸推到桌面中间。打印纸上面印着系统日志的截图,时间、账号ID、操作类型、文件路径,一列一列排下来清清楚楚。最上面一条记录的账号ID对应着一个我没有见过的名称缩写,操作时间在论文投稿日期之前的一周。
方舟的手指落在那条记录上,指尖压着纸面:“这个账号,是唐若私人助理用的一个测试账号,系统里没有正式的权限登记。它调阅了你的笔记之后,第二天你的账户就被锁了。”
他收回了手指。咖啡店里的背景音乐换了一首,节奏比刚才快了一些,女声在唱着什么,隔着杯子和桌面传来变得有些模糊。方舟看着我,他面前那杯咖啡的液面在窗外的光照里反着光,亮亮的。
他说:“陈远,你那份工具链确实是你自己的东西。我站在你这边。”
我没有马上回答。我伸手拿起桌面上的那几页纸看了一眼,纸张上打印的字迹在透过玻璃窗照进来的日光里清晰分明。那些时间戳和账号ID在纸上排成有规律的阵列,每一条记录都对应着一个具体的操作。
我把那几页纸折好放进了自己的外套口袋里。纸张的棱角隔着布料贴着胸口的位置,凉凉的。
方舟端起了自己的杯子:“你打算怎么办?”
我看着窗外马路对面那栋楼。银杏树的枝条在冬日下午的天光里细密地伸向空中,那些残余的叶子在枝头轻轻颤着。明科的招牌在楼顶最上面,蓝底白字,被午后的阳光照着,反着光。停车场上停着那辆黑色轿车,在空出来的车位上格外显眼。
我说:“我需要考虑一下。”
方舟点了点头,没有再说话。他把自己那杯咖啡喝完站起来,把大衣重新穿上。他走到门口的时候回头看了我一眼,没有多说什么,拉开玻璃门出去了。门合上之前一阵凉风从门口灌进来吹在我桌面上,把那张空了的咖啡杯垫吹得翻了个面。
我坐在窗边,把那杯已经凉了的美式慢慢喝完了。透过玻璃窗能看见方舟穿过马路往明科园区大门走去,黑色大衣的下摆在风里轻轻掀起来又落下去。他走进大门之后拐了个弯,被楼体挡住了。
我站起来把杯子放到回收台上,推门走出去。风迎面扑过来比来的时候更冷了,我把外套的拉链拉到最上面,沿着人行道往回走。路边那些银杏树的枝干在风里摇晃着,最后几片叶子从枝头脱落下来打着旋落在脚边的地面上,像最后几枚旧硬币掉进了透明的水里。
第七章 对质
那几页系统日志的复印件在我口袋里放了整整两天。
我没有反复拿它们出来看,但能感觉到纸张的棱角隔着布料贴着胸口的位置,在我走路或弯腰的时候轻微地硌一下。那是一种持续的存在感,不用特意去想也能感知到。
第三天下午,我给林峰发了一条消息:“帮我查一个事。唐若私人助理在系统里的测试账号现在还能用吗?”
林峰隔了大概十分钟才回:“那个账号上周被停用了。远哥,你查这个干什么?”
我回:“想确认一件事。”
又过了一天,我给唐若发了一条消息:“周五下午三点,我们面谈一次。你办公室。”消息发出去之后过了二十多分钟,她回了一个字:“好。”
周五下午,我穿了件干净的衬衫出了门。冬天的风很硬,灌进领口的时候我缩了一下脖子。公交车窗户上结了一层薄薄的霜花,我在靠窗的位置坐下,看着窗外一路的街景缓缓后退。那些店铺的招牌、路边的树、等车的人群,都覆着一层冬日下午特有的灰白色的光。
到明科楼下的时候,前台换了人,一个我不认识的年轻姑娘抬头问我来访登记,我说了名字和预约对象,她打了个电话确认之后给我办了临时访客卡。卡是浅蓝色的,正面印着“访客”两个字,背面是一张磁条。
电梯到了顶层,走廊里的地毯颜色跟我记忆中一样,深灰色的,踩上去脚底无声。唐若的办公室门开着半扇,能看见她坐在那张宽大的办公桌后面,正在低头看一份文件,手里握着一支笔。
我敲了一下门框。她抬起头来,看见是我,把笔放下,合上了面前的文件。她指了指对面的椅子:“坐。”
我坐下来。办公室里的暖气很足,跟走廊里的温度有一个明显的落差,进来之后能感觉到脸上的皮肤被热空气包裹着。窗外的天色是那种冬日下午特有的淡灰色的亮,透过落地窗铺在地毯上,在脚边形成一片均匀的光区。
唐若看着我,她的脸在日光下比上次开会时显得柔和了一些,也许是因为办公室里只有我们两个人,那种紧绷的姿态被放下来了几分。她说:“方舟来找过你了。”
我说:“是。”
她说:“他跟我说了。他说你的工具链架构接不上,要我让你回来。陈远,我今天叫你来,不是要你回来。我叫你来是想跟你说清楚一件事。”
她把桌面上那份合着的文件推了过来。封面是白色的,上面没有标题,只有一行手写的日期。她的手从文件上拿开了,搁在桌面上,十指交叉。她说:“那份论文,署名里用了一个缩写。那个缩写的用法,只有我见过。因为你写第一版笔记的时候,我在你电脑旁边坐着,你跟我说过那个缩写是你自创的,全世界只有你一个人知道该怎么拼。”
我坐在椅子上没有动。窗外的光落在我的手背上,把皮肤上的细纹照得很清楚。我说:“唐若,所以那份笔记是你拿出去的?”
她看着我。她的目光没有闪躲,但也没有那种惯常的强硬了。她沉默了几秒,开口的声音比刚才低了一个度:“是我。我把那份笔记的原始稿给了一个合作方,让他们找人做了论文的后续工作。我没有直接参与署名,但笔记的原件从我的渠道出去了。陈远,我不是要偷你的东西。我当时想的是,那份笔记既然存进了明科的知识库,我就有权利使用它。我以为那不算你的个人财产。”
办公室里安静了。落地窗外的天空颜色均匀而柔和,看不见太阳也看不见云。楼下远处有一辆洒水车正缓缓经过,橘黄色的车身在灰白色的背景里小得像一粒米,水雾从车尾喷出来变成一道浅浅的弧线。
我说:“唐若,你接手明科之前你爸跟我说过,他说让我照顾好你,说你接手公司的时候会有很多不明白的地方。他说的不明白的地方,不是技术上的。”
唐若的手指在桌面上微微收拢了一下,交叉的十指互相攥紧了一瞬又松开了。她说:“你跟我爸说过什么,跟我今天要说的事没有关系。陈远,那份笔记的事我可以赔你,按知识产权的市场价做补偿。但你那份工具链如果愿意留在明科,我可以用股份加现金的方式买下来。”
我看着她,她坐在宽大的办公桌后面,穿着浅灰色的西装外套,衣领的棱线整齐地压在肩膀上。她的背后是一整面墙的落地窗,窗外灰白色的天光把她的轮廓勾勒得清晰分明。
我说:“唐若,你上次说让你初恋来干。现在我坐在这里,你跟我说买我的工具链。你的初恋今天站在哪一边,你问过他吗?”
她的目光在我这句话之后微微低了一下。她的视线落在桌面上那些文件堆的边角,在那里停了几秒才抬起来。她的声音在那个瞬间有了一个极其微小的波动,像指尖按在琴弦上轻轻颤了一下又稳住了:“方舟的事,我跟他的关系不是你想的那样。他回来是为了工作,不是因为我。”
她说完这句话之后重新看着我,坐姿调整了一下,背比刚才更直了。她说:“陈远,这份工具链不要让我开价。你自己说,多少钱你愿意留在明科?”
我看着窗外。那辆洒水车已经开远了,在视线尽头变成一个小小的橘黄色点,拐过路口之后消失了。楼下园区里的银杏树光秃秃的,枝干在天幕上整齐排列着,每一根都伸向不同的方向。
我说:“唐若,你冻结我权限那天,在会议室里当着二十多个人说我的算法没什么大不了的。你忘了,但我还记得。现在你要我回来,但你没有把那天的话收回去。”
我站起来。椅子腿在地毯上移动的时候几乎没有声音。我走到门口停了一下,回头看了一眼。
她坐在办公桌后面,手还搁在桌面上,手指交叉着。窗外的天光落在她侧脸的轮廓上,把她睫毛的阴影投在颧骨上,细细的一小片。她没有抬头看我,但她的嘴唇动了一下,那个幅度很小,像有什么话被绊在了牙齿后面。
我没有等她说出来。我推开门走出去的时候走廊里安静得出奇,只有我自己的脚步声踩在地毯上,一步一步的,轻而均匀。
电梯在一楼停下,我把那张浅蓝色的访客卡递回给前台。值班的小姑娘接过去的时候看了看我,大概是注意到我进去和出来的时候表情的变化,她嘴唇动了动想说点什么但又咽了回去。
我走出大堂的时候风迎面而来,比来的时候大了一些,把路边的枯叶卷起来贴着地面跑了很长一段,最后卡在花坛的边沿上堆成了一小堆。我在门口站了几秒,拉好外套的拉链,沿着园区的路往外走。
经过那排银杏树的时候有一片叶子从高空落下来,在我面前翻转了几圈落在地上。我低头看了一眼,叶面已经彻底干透了,边缘卷曲着像烧过的纸。我没有停,继续往前走,脚下踩过几片干裂的落叶,碎裂的声响细碎地跟在我脚后跟后面,每走一步就响几声。
走出园区大门的时候我回头看了一眼那栋楼。顶层那扇落地窗还亮着光,跟其他办公室的窗口混在一起,分不出哪一扇是她的。我在门口站了几秒,转身沿着来时的路往回走。
第八章 选择
那一周我做了两件事。
第一件,我联系了宋涛,要了他手里那份完整的系统日志备份。他用一个加密压缩包发过来了,解压之后里面是几十个文本文件,按日期排列着,记录着知识库里每一份文件的访问记录,从三年前一直到现在。我花了一天时间翻完了那些文件,把跟我的笔记和代码有关的访问记录单独列了一张表。表上的时间戳、操作人和操作类型排成清晰的序列,每一条后面我都标了备注。
第二件,我给方舟发了一封邮件。正文很短:“上次在咖啡店你说你站在我这边。如果你真的站我这边,我要你帮我做一件事。”
邮件发出去之后不到两小时,方舟回了一封:“什么事?”
我回:“明科下周有一个董事会,我要在会上公开一份系统日志的完整记录。你在董事会的列席名单里,到时候我需要你坐在那里听着就行。”
隔了大概十分钟,他回了一个字:“好。”
那盆绿萝在窗台上换了第三个花盆了,这一次是白色的瓷盆,口径比陶土的宽了一圈。根在新的盆土里又钻出了新的侧芽,叶子一层叠着一层地铺展开来,已经比刚买的时候翻了一倍的体积。我把它放在窗台的中央位置,让上午的太阳正对着它的叶子照。
周二的时候,林峰打来电话说他收到了董事会的通知,下周三是季度例行董事会,届时会评估研发中心的现状和未来方向。他说他作为研发中心的老员工被列席了,让他准备一份技术现状简报。他问我:“远哥,你是不是有什么事要发生?”
我站在窗台前面,手里握着手机,看着绿萝最顶端那片已经完全展开的新叶。叶面的脉络在午后的光照里清晰可见,一条主脉从叶柄延伸到叶尖,旁边分出密密的侧脉,像一张缩小的地图。
我说:“老林,到时候你就知道了。”
周三下午,董事会开在明科顶层的会议室里。那间会议室我之前进去过几次,长条形的会议桌能坐二十个人,靠窗的位置能看见整个园区和远处的城区天际线。下午两点我到了楼下,没有办访客卡,直接让前台联系了方舟。他下来接我上去的时候穿着一件灰色的西装,领带打得很正,跟我上次在咖啡店见他时完全两副模样。他走在我旁边说:“唐若知道你来了。”我说:“她知道。”
电梯到了顶层,方舟带我走到会议室门口。门是关着的,透过门上的磨砂玻璃能看见里面有人影在移动。方舟推开门,里面的说话声停了一下。我走进会议室的时候,会议桌两侧坐了十来个人,其中有几张面孔我在明科的内部照片里见过,剩下的几个我不认识。
唐若坐在会议桌顶端的位子,穿了一件深蓝色的西装外套,头发挽在脑后。看见我走进来的时候她脸上的表情几乎没有变化,但她的手从桌面上抬起来了一下又放回去了,那个动作像条件反射一样快。
会议室里有人低声说了一句什么,我没听清。方舟在靠门的位置坐下来,我站在会议桌的中段位置,看着那一圈人。
我从外套内袋里拿出那几页系统日志的复印件,放在桌面上铺开了。纸张落在木质的桌面上时发出轻微的沙沙声,几页纸的边缘在桌面上依次落定之后,我看见唐若的目光落在那些纸张上面,下颌的线条微微收紧了一下。
我说:“各位,我今天来,是想给你们看一份明科内部知识库的系统访问记录。”
我开始把那些记录一条一条念出来。第一个时间点,知识库中一份研究笔记被调阅。第二个时间点,同一份笔记在调阅后的第二周被导出到外部存储设备。第三个时间点,那份笔记的内容以手稿形式出现在一篇国外学术论文的投稿前版本中。第四个时间点,我的研发账户在毫不知情的情况下被锁定,所有系统权限关闭。
我念到第四条的时候,会议室里有一个人咳嗽了一声。那个声响在安静的会议室里格外清晰,像石头丢进静水里激起的一圈波纹。我抬起头看了一眼,咳嗽的那个人我认识,是明科的技术顾问老钱,他在公司做了十几年了。他没有看我,他看的是唐若。
我把那份日志记录翻到最后一页,那个测试账号的调阅记录,后面标注着时间戳和操作人ID。我说:“这份记录的调阅人,对应的是唐总私人助理的一个测试账号。调阅时间正好在论文投稿之前的一周。”
会议室里的安静持续了大约十秒。我听见头顶空调出风口的气流声嘶嘶地持续着,那种声音在安静的室内变得格外明显。唐若坐在会议桌顶端,她的脸在半明半暗的光线里看不太清楚表情,但她的手平放在桌面上,十指没有交叉。我站在会议桌旁边的空地上,手里的纸张边缘被捏出轻微的褶皱。
唐若开口了。她的声音不高,但每个字都平稳地送到了会议桌的每个角落:“那份笔记的原始版本确实是从我的渠道流出的。对此我负管理责任。公司内部的知识产权使用规范存在模糊地带,这一点我会在下次董事会上提交修订方案。”
她说到这里停顿了一下。她的目光从那几页纸上抬起来,落在我脸上:“陈远,你那份工具链的事。我今天当着董事会的面说清楚,那套工具链是你个人入职前开发的,不属于明科的知识产权。董事会应该确认这一事实。”
她说这句话的时候,我看见坐在侧面的老钱微微点了一下头。旁边几个董事互相看了一眼,没有人出声反驳。
会议室的门被推开了,门轴转动时发出轻微的摩擦声。站在门口的是一个我没想到会出现在这里的人。宋涛。他站在门口,手里拿着一个文件袋。他看了一眼会议室里的人,又看了一眼我,说:“陈远,你要的东西我带过来了。”
他走进来把文件袋放在会议桌上,打开封口抽出来一份打印件。他说:“这是我从系统日志里导出的完整备份,跟陈远手里那份复印件是同一套数据。但我今天带来的是系统原始格式的导出版本,可以验证时间戳和IP地址的完整性。”
他把那份打印件也铺在了桌面上,跟我的复印件并排放着。两份文件摊开在会议桌的桌面上,白纸黑字,一排一排的数据整齐排列着。
唐若坐在会议桌顶端,她的目光在那两份文件上轮流转了一下,开口的声音依然稳当:“备份数据到了,这事就清楚了。关于论文署名的部分,我会责成法务部跟合作方重新厘清归属权。关于知识库管理规范,列入下季度整改计划。”她说完这些之后站起来,椅子腿在地板上移动的时候发出极轻的声响。她环顾了一圈会议室里的人,“今天到这儿吧。陈远,你那份工具链的事,我会让法务出正式确认函,说明产权归属在你个人名下。”
我站在会议桌旁边,手里攥着那几页纸的边角。窗外的天光从背后照过来,把我的影子投在桌面上,落在那些铺开的纸张旁边,跟纸上的字迹重叠在一起。
我开口说了一句话:“唐总,我今天来不是要确认产权归属的。我今天来是让各位知道,五年前你爸让我来面试的时候,他跟我说过一句话。他说,这个公司需要能守住自己东西的人。我当时没听懂,现在我懂了。”
会议室里没有人说话。我转过身,朝门口走过去。那叠纸张被我留在桌面上,跟宋涛带来的原始记录并排放着。我走到门口的时候停了一下,走廊里的声控灯因为门开着的缘故亮了起来,白光照在灰色地毯上。
我没有回头。
第九章 新土
那天晚上我一个人坐在公寓里,窗台上那盆绿萝在晚风里轻轻晃着,叶片之间的空隙被月光穿过,在窗台上投下斑驳的暗影。
手机上有几条消息。林峰发了一条:“远哥,今天你走了之后会议室里安静了很久。唐若一直坐着没走,其他人先散了。”
方舟发了一条,时间比林峰的晚一些:“唐若今天下午跟法务开了个会。你那份工具链的产权确认函下周会发到你手上。”
宋涛发了一条,最短:“文件袋里还有一张纸,你回去看看。”
我拿起那个文件袋重新检查了一遍。在那一叠打印件最底下,确实夹着一张单独的纸,折了两折,边角压在其他的纸张下面。我抽出来展开,纸上是一段手写的话。字迹我认识,是唐若她爸唐振国的笔迹。那段话写在一个看似普通的笔记本纸上,日期是三年前的秋天。
“陈远,如果有一天你看到这张纸条,说明有些事可能已经发生了。这份笔记是我让小宋备份的,我会跟知识库记录一起存放。里面的架构设计是你自己的,我让他们做记录只是为了防止丢失。你不欠明科什么,你只是做了你该做的。”
我把那张纸看完了。纸页的边角微微泛黄,折痕处有一些磨损的痕迹。唐振国的字迹收笔处有一种习惯性的向上勾,在“了”字和“的”字上格外明显。纸上最后一行字被灯光照得清晰,落款日期是那年的冬天。
我把那张纸重新折好,夹进了牛皮纸笔记本的封皮内层。
窗台上的绿萝在月光里站着。陶土花盆被换成了白色瓷盆之后,整个植株看起来精神多了,叶子朝着光源的方向微微倾斜着,像在追赶什么看不见的东西。
第二天早上,我收到了一封明科法务发来的邮件,附件是一份正式的法律确认函,确认了我个人开发的工具链及配套架构的产权归属,同时确认那份被调阅的研究笔记的知识产权归属个人。
邮件正文最后有一行附加的备注:“唐若总裁要求转告,董事会已通过知识库管理规范修订方案,即日起所有技术人员个人笔记需单独标记产权归属,未经授权不得跨部门调阅。”
我看完那封邮件,关了电脑。
之后的日子,我每天的工作变成了坐在餐桌前对着电脑整理自己的技术笔记。那些代码和文档从各个文件夹里汇集到一个主目录下面,按项目和时间分类排列。我把那套工具链的完整版本重新梳理了一遍,加了新的注释和说明文档,打包成了一整套技术资料。
第十天,我接到一个电话。对方是一家做工业自动化的小公司,总经理姓冯,四十多岁,声音听着爽利。他说:“陈工你好,我们从行业圈子里听说你离开了明科,手里有一套完整的技术框架。我们公司不大,但有几条生产线需要你做底层架构优化,你看有没有兴趣来谈谈?”
我约了时间去看了一趟。公司在一个老工业区里,厂房外墙刷着米黄色的漆,门口种着一排冬青树。冯总带我看了他们的研发车间和生产线,厂房里的机器轰鸣声在铁皮屋顶下回荡着,空气里混着润滑油和金属粉末的气味。他站在一台数控机床前面,伸手拍了拍机器外壳说:“设备都是好的,就是控制系统的效率一直上不去,老架构跑不了新的工艺参数。陈工,你来的话,整个系统的底层你说了算。”
我看了看那排机器,又看了看车间顶棚上那排日光灯管。有几根灯管已经坏了,在灰白的空气中闪着时断时续的光。我说:“冯总,我回去考虑一下,后天给你答复。”
他点头说好,送我到门口。他站在那排冬青树旁边跟我握手,手掌粗糙,带着工厂里那种机油和金属混合的气味。
第三天晚上我坐在餐桌前看着窗外。公寓楼下有一棵老槐树,落光了叶子的枝干在路灯的暖光里投下密密匝匝的影子。风很轻,枝干微微摆动着,那些影子也跟着在地面上缓缓移动。
我拿起手机,翻了翻联系人的名单。手指在屏幕上划过一个个名字的时候,停在了“冯总”那个新存的号码上面。我没有拨出去,也没有把它删掉。
窗台上那盆绿萝已经适应了新的瓷盆和新的位置,最顶端的那片叶子完全展开了,比它底下的任何一片叶子都大了一圈,油绿的叶面上沿着叶脉整齐排列着清晰的纹路,在月光和路灯交织的光线下,叶片的边缘镀了一层细碎的光边。
第二天上午,我去了那家工业自动化公司,跟冯总谈定了合作细节。
从公司出来的时候,冬天的太阳正好从云层后面露出来,明晃晃地照在工业区的柏油路上。路两边的梧桐树落尽了叶子,但阳光从枝干的缝隙里穿过时,在地面上洒下了细碎明亮的斑点,风吹过来的时候它们随着树枝的摆动在地面上游移,像是被什么无形的力量轻轻地推着往前走。
我沿着那条路走了一段。路面上有薄薄的霜,被光照着化成了细微的水珠,在柏油路的纹理间闪着碎光。路边有一家早餐铺子还开着门,蒸笼里的白汽一团一团地冒出来又被风吹散,空气里弥漫着面食发酵后特有的微酸香气。
我站住买了一屉小笼包,纸盒托在手里烫烫的,隔着包装纸能感觉到里面的热气。我在路边找了个阳光照得到的位置站着,咬开一个包子,汤汁烫了一下舌尖但鲜得正合适。我嚼着那个包子,看着工业区里进出的车辆和行人,看着那些米黄色外墙的厂房在阳光底下投下的影子,看着那些影子随着太阳的移动缓慢地变换着方向。
纸盒里的包子被我慢慢吃完了,我把空盒子扔进路边的垃圾桶。垃圾桶是绿色的铁皮的,盖子合上的时候发出当的一声脆响。我沿着路继续往前走了一段才折返。
中午回到公寓的时候,阳光正从窗户正中间照进来,把窗台上那盆绿萝的叶子照得通透明亮。我在椅子前面站了一下,伸手拨了一下最顶端那片新叶。叶面在我指尖下微微颤了一下,然后恢复了静止,在光里安静地舒展着。
第十章 新芽
签字那天是周四下午。
冯总的办公室里暖气烧得很足,玻璃窗上蒙着一层薄薄的水汽。合同摊在办公桌上,封面是浅蓝色的,左上角印着他们公司的标志。冯总坐在我对面,拿起笔在甲方签名处签了字,把笔推过来的时候手指在笔杆上停了一下。
我拿起笔在乙方那一栏写了自己的名字。笔尖落在纸面上的时候发出沙沙的声响,墨水在纸张的纤维间缓慢地洇开,形成清晰而稳定的字迹轮廓。陈远两个字写完之后我把笔帽扣上,放在合同旁边。
冯总把合同收起来放进文件柜里。他转过身来说:“陈工,下周一能进厂吗?生产线那边等着新架构的测试方案。”
我站起来说:“下周一可以。”他伸出手来跟我握了一下,手掌干燥而温暖。他从办公桌抽屉里拿出一把黄铜钥匙放在桌面上推过来:“厂区大门和研发车间的钥匙,你先拿着,出入方便。”钥匙放在桌面上碰到木质的表面时发出一声轻响,金属在光照里泛着温润的暖色。
我接过那把钥匙放进口袋里。钥匙的齿在我指尖上硌了一下,凉凉的。
离开冯总公司的时候天开始暗了,工业区里的路灯陆续亮起来,把厂区的道路照得亮一块暗一块。我沿着那条熟悉的柏油路往回走,路过那棵老槐树的时候,路灯正好亮了,暖黄色的光照在光秃的枝干上,把那些枝条的轮廓描得清楚分明。枝头有一个鸟窝,黑乎乎的,安静地架在两根主杈中间。我看了一眼那个鸟窝,没有惊动它。
那一周我开始在厂里工作。每天早上七点进车间,厂房里机器的轰鸣声和铁皮屋顶的回声混在一起。我刚到的时候用了两天时间来熟悉车间的生产流程,把那几台数控机床的控制系统逐台调试了一遍。车间里空气混着各种气味,机床冷却液特有的淡蓝色味道在最浓处盖过了其他所有气味,在车间尽头的排风扇下面又淡下去。
那些控制系统的代码在屏幕上展开的时候,一行一行排列在暗色的背景上,光标按照我的操作移动、停留、跳转。代码的底层架构跟我在明科做的那一套不完全一样,但核心逻辑的结构性思考是在明科期间慢慢成型的,那些经历没有因为离职而被抹去。
新架构第一版跑通的那天,车间里那几台机床同时动了。机械臂按照新的程序指令运转起来的时候声音比之前流畅了许多,没有那种间歇性的顿挫感。冯总站在车间门口看着那几台机器运转了两轮,转头跟我说了句:“成了。”他在车间嘈杂的环境里说话的时候声音提高了半度,语气里有那种不用再多说任何话的确认感。
那天下班走出厂区的时候,我在门口看见了一棵小树苗。它长在车棚旁边的墙根底下,从水泥地面的裂缝里钻出来的,叶子小小的但绿得很结实。我蹲下来看了看,是一棵银杏苗,大概是从附近大树的种子落下来自己长出来的,在冬天灰白的天光里显得格外显眼。它应该刚破土不久,两片小叶还没有完全展开,边缘带着一层绒绒毛的暖意。
我蹲在地上看了它一会儿。风从车棚那侧吹过来,穿过铁皮柱子之间的缝隙呜呜地响着,但那棵小银杏苗在风里只是微微晃了晃,没有被吹弯也没有被吹倒。它从那道水泥裂缝里探出来之后,就在那里站住了脚,把自己的位置占据了。我站起来的时候膝盖响了一下,响在空荡荡的厂区里很快被风带走了。
晚上回到公寓,窗台上的绿萝在台灯的暖光里绿着。它又长了几片新叶子,原先那株的尺寸已经翻了一倍,原来的陶土花盆已经装不下它了,换了白色瓷盆之后长势一直不错。我伸手摸了摸最顶端那片新叶,叶面已经硬朗了,边缘有一圈浅浅的淡绿。水珠在叶片表面滚了一下又停住了,在灯光底下像一小粒透明的玻璃珠子。
手机放在桌面上亮了一下,是林峰发来的消息:“远哥,今天我路过那间老办公室,窗户开着透气,里面空着呢。那把你坐了三年的椅子还在,没人坐,被人推到墙角了。”
我看着他发来的这行字,窗外的冬夜在玻璃上凝了一层薄薄的水汽,把外面的路灯晕成毛茸茸的橘黄色光团。我回了一句:“椅子放那就放着吧。”
他隔了一会儿又发了一条:“唐若的助理调岗了。”
我看了那个消息,把手机锁了屏放在桌面上。屏幕的光暗下去之后窗台上绿萝的轮廓在台灯的光里依然清晰,叶片层层叠叠地展开着,根部冒出来的新芽把瓷盆的土面顶起了一个极小的弧度,在灯光的照射下形成一小片微隆的浅影。
第二天早上到厂里的时候,天刚亮透。车棚旁边那棵小银杏苗上挂着露珠,两片小叶子在晨光里半透明地亮着。我从它旁边经过的时候放慢了步子但没有停,走到车间门口的时候回头看了一眼。它还在那里,在墙根底下那道裂缝里站着,冬日的晨光斜斜地照在它的叶片上,把每一滴露水都照得透亮。
厂房里有人在启动机器,第一声轰鸣从铁皮屋顶下面传出来,低沉而持续。我推开车间铁门走进去的时候,里面的空气还是凉的,但机械预热之后地面上散出来的热量已经把室内的温度抬高了一些。桌上的电脑屏幕亮着,代码的界面停在昨晚关机的状态。
我坐下来,把手放在键盘上。窗外晨光渐亮,从铁皮屋顶边缘透进来的第一道金色光线落在地面的油渍上,照出一小片亮晶晶的反光。车间的门开着半扇,能看见外面那棵小银杏苗在风里轻轻晃了一下,又站直了。
新架构的第二轮测试要在九点半开始,桌面上摊开的笔记本里写着今天的调试计划,字迹是我昨天傍晚写的,笔画的末端还带着收笔时的轻提。墙角那把新配的椅子坐上去比之前的那把硬一些,皮革还没有被磨出光滑的痕迹。
窗外工业区里的路灯一盏一盏地灭了,太阳在屋顶上方完全升了起来,把整片厂区罩在亮堂堂的晨光里。那棵小银杏苗的叶片在光里完全展开了,叶脉的纹路在光照下清晰得像印上去的。
我在那台电脑面前坐下来,手指落在键盘上。屏幕上光标的闪烁频率稳定,在代码行末尾的位置一下一下地跳动着。
我把双手搁在键盘上方的掌托上,感受着塑料表面在掌心下慢慢被体温捂热的过程。那种暖意从指尖一点一点地渗进来,从手掌的中央向四周扩散。
窗外的光越来越亮了,整间车间被冬日的晨光照得分明。车间的铁皮屋顶边缘有一道细细的光线从缝隙里透进来,照在地面上,随着太阳的移动正在缓慢地向东收窄,像一根被慢慢抽走的金色丝线。墙根底下那道门缝里透进来的风带着室外清晨的冷意,吹过脚踝的时候凉丝丝的。
我输入了第一行命令。屏幕上的光标跟着我的操作移动着,一行一行地输出信息,在黑色的背景上排列成有序的字符串,字符之间的空白和间隔都恰到好处,像被精确测量过的距离。
车间里那台测试机床轻轻响了一声,电源指示灯变绿了,在昏暗的背景里亮起一个小小的、稳定的绿点。
我坐在那里,手指停在键盘上方,看着那个绿灯亮了,稳稳的。
(全文完)
创作声明:全文虚构创作,人物情节均无现实原型,内容为AI辅助生成,勿对标现实,文中行为不具备参考性,请勿效仿。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.