苏晚晴是被一阵刺耳的金属摩擦声惊醒的。
她猛地从床上坐起来,花了三秒钟才意识到那是自己的光脑腕带在响,她把腕带举到眼前,看到屏幕上显示着一条紧急消息,发送者是陆星辰,发送时间是凌晨五点十二分。
小星星的控制系统出了故障,测试数据全部丢失,我正在排查原因。
苏晚晴盯着这条消息看了五秒钟,然后掀开被子跳下床,人造太阳还没有亮起来,整个城市笼罩在一片深蓝色的微光中,像沉在海底的古老沉船,她用创纪录的速度洗漱换衣服,抓起书包冲出门,连早餐都没顾上吃。
母亲林秀兰的声音从身后追来——你这么早去哪?
实验室!苏晚晴的声音消失在电梯门后面。
磁浮星轨的早班列车空空荡荡,整个车厢只有她一个乘客,窗景还在播放清晨模式,画面是一片宁静的湖面和远处被薄雾笼罩的山丘,但她完全没有心思看。她的脑子里全是小星星——那个她和陆星辰花了两个星期、拧了上百颗螺丝、写了上千行代码才做出来的小机器人。
如果控制系统出了问题,如果测试数据全部丢失!那就意味着他们要重做大部分的工作,比赛还有两周他们可能来不及了。
她跑进科技楼的时候,走廊里的感应灯被她急促的脚步声一盏一盏点亮,像一条光的长河在她面前展开,电梯门打开,她冲进实验室,眼前的景象让她停下了脚步。
陆星辰坐在工作台前,面前的屏幕上是一堆她看不懂的错误代码,他的校服和昨天一模一样——不,不是和昨天一模一样,是本就没换过,他的头发不像平时那样一丝不苟,有几缕垂在额前,眼睛下面有淡淡的青色,嘴唇的颜色比平时浅了一些。
小Q蹲在他肩膀上,这次没有用爪子抱他的耳朵,而是安安静静地靠在他的脖子旁边,像一个小小的橘色围脖。
你一夜没睡?苏晚晴走过去。
陆星辰抬起头看她,深蓝色的眼睛里布满了细密的血丝但目光依然清晰而专注——睡了两个小时在沙发上。
苏晚晴看了一眼实验室角落的那张沙发,上面放着一条叠得整整齐齐的毯子和一个枕头,毯子的面料上还有压痕,说明确实有人睡过。
出了什么问题?她在陆星辰旁边坐下,声音比平时轻了很多,怕惊扰到什么。
控制系统的主控芯片在昨晚的模拟对战中出现了一个未知错误,导致所有存储数据被清空,陆星辰调出错误志,全息屏幕上跳出一长串红色的报错信息——我排查了四个小时,初步判断是芯片本身的硬件缺陷,不是程序的问题。
苏晚晴看着那些红色的报错信息,那些她看不懂的代码和参数,心里涌起一种无力感。
在机械的世界里,她是王者,她的手能感知百分之一毫米的差异,她的直觉能预判金属的疲劳和断裂,但在代码的世界里,她是一个连门都还没入的初学者,只能看着陆星辰一个人面对这片红色的汪洋。
能修好吗?她问。
有两种方案。
陆星辰调出了一份对比分析表——第一种是换一块同型号的芯片,重新写入程序,耗时大约四小时,但同型号的芯片存在同样的硬件缺陷风险,可能再次出现同样的故障。
第二种呢?
换一块不同型号的芯片,重新编写底层驱动程序,然后移植上层应用代码,陆星辰的手指在全息屏幕上划动,展示着新芯片的技术参数——这个方案可以彻底解决硬件缺陷问题,但需要重写大约百分之四十的代码耗时大约二十四小时。
苏晚晴看着那百分之四十的数字,心里快速计算了一下,二十四小时,意味着陆星辰要不眠不休地工作一整天,他的身体不是铁打的,他已经两个晚上没睡好了——昨晚在实验室睡了两个小时,前天晚上画连接件设计图画到凌晨两点。
那用第二种方案苏晚晴说。
陆星辰看着她——第二种方案耗时更长。
我知道,苏晚晴站起来,走到材料区的储物柜前,从里面拿出了一套新的芯片和编程工具,放在陆星辰面前——但更安全,我不想在比赛的时候看到小星星因为芯片故障而突然死机。
陆星辰看着她,深蓝色的眼睛里闪过一丝光,他没有说话,只是点了点头,然后拿起新芯片,开始编写底层驱动程序。
苏晚晴在他对面坐下,拿起那套她熟悉的微型焊接工具——我来帮你。
你帮不上忙,编程你还不熟练。
苏晚晴知道他说的没错,但她不想就这样坐着看他一个人忙碌,她把焊接工具推到一边,拿起了小星星的底盘——硬件还有一些可以优化的地方,我来做这个,你写代码,我改硬件,我们双线并行,节省时间。
陆星辰看着她,嘴角动了一下——好。
实验室里安静下来,只剩下两种声音——陆星辰敲击全息键盘的嗒嗒声,和苏晚晴拧动螺丝刀的轻微咔哒声,两种声音交织在一起像一首二重奏,虽然旋律不同但节奏意外地合拍。
小Q从陆星辰的肩膀上跳下来,在工作台上踱了几步,找了个既能看见陆星辰又能看见苏晚晴的位置趴下来,绿色的眼睛在两个人类之间来回转动,像一个裁判在监督一场双人比赛。
苏晚晴拆开了小星星的底盘,检查了每一个零件的磨损情况,昨晚的模拟对战虽然只是虚拟的,但机器人的硬件是真实的,长时间的运行和高强度的动作会对零件造成真实的磨损,她用放大镜检查了每一个齿轮的齿面,用卡尺测量了每一个轴承的间隙,用探针测试了每一条电路的连通性。
检查到第三个轮子的驱动电机时,她发现了一个问题。
这个电机的碳刷磨损比预期快了很多,她把电机拆下来,用镊子夹出碳刷,对着灯光看了看——磨损量已经达到了设计寿命的百分之六十,但我们才运行了不到二十个小时。
陆星辰从代码中抬起头,接过电机和碳刷,看了看——电机的电流参数可能设置偏高了,导致碳刷过热,加速磨损,需要调整驱动器的电流限制,同时更换更耐磨损的碳刷材料。
苏晚晴在材料区的储物柜里翻了翻,找到了一套更高规格的碳刷——这是之前为备用电机准备的,材料是银合金,耐磨性比标准碳刷好三倍,她把新碳刷安装到电机里,然后调整了驱动器的电流参数,重新测试了电机的运行状态。
声音比之前更顺滑了,转速也更稳定。
完美,她满意地点点头。
陆星辰看着她行云流水般的作,忽然说——你知道吗,你刚才做的那套故障诊断和修复,在工业领域需要至少三年的工作经验才能独立完成。
苏晚晴愣了一下——真的假的?
真的,我读过相关的技术文献,碳刷磨损故障的诊断需要综合电流波形分析、温度监测和磨损痕迹观察,三个维度的信息缺一不可,陆星辰的语气平淡,像在做学术报告——你只用了不到五分钟就完成了全部三个步骤的诊断和修复,没有借助任何专业仪器。
苏晚晴低头看着自己沾着碳刷粉末的手指,指甲缝里嵌着黑色的灰尘——可能是我从小看我爸修东西看多了,看多了就知道什么东西容易坏、为什么会坏、怎么修最好。
这不是看多了就能学会的。陆星辰的声音低了一些——这是天赋。
苏晚晴抬起头看着他,四目相对。他的眼睛里倒映着她的影子,她的眼睛里也倒映着他的影子,两个影子在彼此的目光中重叠像两张被拼在一起的拼图碎片。
她先移开了目光,低下头继续检查其他零件——你快写代码吧,别看我。
陆星辰的耳朵尖红了一下,转过身去面对全息屏幕,手指重新在键盘上跳动起来。
小Q从工作台上抬起头,看了看陆星辰发红的耳朵,又看了看苏晚晴低垂的睫毛,然后翻了个白眼,把脸埋进爪子里。
人类啊…真是麻烦。
时间在安静中流逝,人造太阳的光线从穹顶洒下来,透过纳米玻璃窗照进实验室,在地面上投下一块块明亮的光斑,光斑缓慢移动,从工作台的这一端移到那一端,像一只无形的手在抚摸那些金属零件。
上午九点,林知意发来消息问苏晚晴怎么没去上课,苏晚晴回复说实验室有紧急情况,请了半天假,林知意没有追问,只发了一个加油的表情和一个比心的手势。
上午十一点,陆星辰完成了底层驱动程序的编写,开始移植上层应用代码,他的手指敲击键盘的速度比之前慢了一些,眼睛也比之前更红了,苏晚晴注意到他每隔一段时间就会闭上眼睛休息几秒,然后再睁开继续工作。
你应该休息一下。她说。
移植完这个模块就休息。陆星辰头也不抬。
苏晚晴没有再说而是走到料理机前,从冰箱里取出食材,开始做午餐,她做了两份番茄炒蛋和两份米饭,虽然卖相不如陆星辰做的精致,番茄切得大小不一,蛋块炒得有点碎,但味道还算正常。
她把午餐端到工作台上,放在陆星辰面前——吃。
陆星辰看了一眼盘子里的番茄炒蛋,然后看了一眼苏晚晴——你做的?
嗯你不是教过我吗,我学了就会了。
陆星辰拿起筷子,夹了一块番茄放进嘴里,咀嚼了两下,然后点了点头——合格了。
苏晚晴咧嘴笑了——那当然,我出手的菜,没有不好吃的。
陆星辰的嘴角弯起一个弧度,这次弧度比之前大了一点,大概零点五毫米,他低下头,安静地吃完了盘子里的所有东西,连汤汁都用米饭拌着吃净了。
苏晚晴看着他吃完,心里涌起一种温暖的感觉,不是那种轰轰烈烈的热,而是那种细水长流的暖,像冬天里的一杯热茶,从喉咙一路暖到胃里,然后扩散到四肢百骸。
下午两点,陆星辰完成了所有代码的移植和调试,他把新芯片安装到小星星的主控板上,接通电源,小星星的指示灯亮了起来,蓝白色的光在银灰色的外壳上跳动,像一颗被重新点燃的星星。
苏晚晴蹲在测试区旁边,看着小星星在灯光下缓慢移动、转向、切换武器,眼眶有点湿,她不知道是因为小星星终于活过来了,还是因为陆星辰那发红的眼睛和发白的嘴唇。
陆星辰在光脑腕带上运行了完整的系统测试,所有都显示为绿色的通过标记,他长出了一口气,靠在工作台的椅背上,闭上眼睛。
好了。
他的声音沙哑,带着一种透支后的疲惫。
苏晚晴站起来,走到他身边,低头看着他闭着眼睛的样子,他的睫毛很长,在眼下投下一片扇形的阴影,嘴唇的颜色比早上更浅了,几乎和他校服的深蓝色形成了刺目的对比。
你的嘴唇白了她说。
陆星辰没有睁眼——正常现象,长时间集中注意力会导致外周血管收缩,肤色会暂时变浅。
苏晚晴觉得这不是正常现象,这是身体在发出警告,她转身走到实验室的储物柜前,从里面拿出了那条毯子和枕头,走到沙发前,把毯子铺好,枕头放好。
过来睡觉!她的语气不容置疑。
陆星辰睁开眼睛,看了她一眼——小星星还需要做一次完整的模拟对战测试。
我来做!苏晚晴走到测试区,蹲下来,看着小星星——你教我怎么做,我自己来。
陆星辰看着她,沉默了片刻,然后站起来,走到沙发前,躺了下去。他躺下的动作很慢,像是每一个关节都在抗议继续运转,小Q从他口袋里跳出来,在他口蜷成一个橘色的毛球,翅膀盖在身上,发出模拟睡眠的轻微呼噜声。
测试程序的启动按钮在这里。陆星辰的声音从沙发那边传来,带着困意的黏稠——按下之后会弹出参数设置界面,你不需要改参数,直接点开始就行。测试过程中如果出现异常,按红色的紧急停止按钮。
知道了,睡吧。
陆星辰没有再说话,实验室里只剩下他均匀的呼吸声和测试区里小星星运转的轻微嗡嗡声。
苏晚晴蹲在测试区旁边,按照陆星辰教的方法启动了测试程序,全息屏幕上弹出参数设置界面,她直接点了开始,小星星开始在测试区内按照预设的轨迹移动、转向、攻击。
她看着小星星的一举一动,心里默默计算着每一个动作的参数——移动速度是否达标、转向精度是否合格、武器切换是否流畅、攻击响应是否及时,这些参数她大部分看不懂但她看得懂小星星的动作是否流畅、是否有卡顿、是否有异常。
这是她和陆星辰不同的地方,他靠数据,她靠感觉。
测试进行了大约三十分钟,小星星完成了所有预设的测试,各项指标都在正常范围内,苏晚晴在测试报告上签了自己的名字,然后关掉测试程序让小小星星停在测试区的中央。
她转过头看沙发那边,陆星辰已经睡着了,他的呼吸平稳而缓慢,口随着呼吸的节奏均匀起伏,小Q跟着那个节奏一起一伏像一个橘色的小船在平静的海面上飘荡。
他的眉头在睡梦中微微皱着,像是在做一个不太愉快的梦,嘴唇还是那么白,眼睛下面的青色在实验室的灯光下更加明显,他的手垂在沙发边缘,左手无名指上那道环形疤痕在灯光下泛着银白色的光泽。
苏晚晴走过去,蹲在沙发旁边,看着他的脸,她伸出手想抚平他眉间的皱纹,但手指在离他皮肤一厘米的地方停住了,悬在那里像一只不敢落地的蝴蝶。
她最终没有碰他,而是把手收回来,拿起掉在地上的毯子,轻轻地盖在他身上。纳米布料感应到他的体温,自动调整了厚度和温度,从薄薄的一层变成了温暖的茧。
陆星辰没有醒,但他的眉头舒展了一点,嘴角微微弯起一个几乎看不见的弧度,像是在回应什么。
苏晚晴看着他舒展的眉头,心里涌起一种难以形容的感觉,那种感觉像是有人在她腔里放了一颗小小的太阳,持续不断地散发着光和热,把她的心脏照得透亮,把她的血管照得通红,把她的每一个细胞都照得暖洋洋的。
她站起来,走回工作台前,开始收拾那些散落的工具和零件,她把螺丝刀一把一把回工具架,把镊子一枚一枚放回磁力垫,把螺丝一颗一颗分类装进零件盒,她的动作很轻,轻到几乎没有任何声音,怕吵醒沙发上那个睡了不到两个小时的人。
收拾完工具,她拿起小星星的外壳,开始做最后的表面处理,砂纸在外壳上摩擦,发出细微的沙沙声,她把声音压到最低,每一刀都轻轻的、慢慢的,像在抚摸一个婴儿的脸。
金属粉末在灯光下闪着银色的光,一小片一小片地飘落在工作台上,像一场微型的雪,苏晚晴看着那些银色的粉末,忽然想起小时候父亲苏建国教她打磨零件时说的话——打磨一个零件,就是在和金属对话,你用力太猛,它会喊疼;你用力太轻,它不会理你,你要找到那个刚刚好的力度,让它舒服,你才能做出好东西。
她现在就在和这个外壳对话,用刚刚好的力度,让它舒服。
时间一分一秒地过去,人造太阳的光线从穹顶的西侧斜射进来,在实验室的地面上投下长长的影子,苏晚晴打磨完外壳的最后一个角落,把它举到灯光下看了看,满意地点了点头。
银灰色的外壳在灯光下反射出柔和的光泽,表面的纹理清晰而细腻,像一片被风拂过的湖面,她用手指轻轻抚摸那些纹理,感受着金属的凉意和光滑,嘴角不自觉地弯了起来。
她把外壳安装到小星星的身上,轻轻按了一下,卡扣发出清脆的咔哒声,外壳完美地贴合在底盘上,没有一丝缝隙。
小星星,你现在比以前更漂亮了!她轻声说。
小星星的指示灯闪了闪,像是在说谢谢。
苏晚晴看着它,忽然笑了。
她想…如果小星星是一个真正的生命,它大概会是一个和她很像的孩子——倔强、不服输、喜欢动手、不喜欢说话,但在关键时刻总是可靠的。
她的光脑腕带震动了一下,是陆星辰发来的消息,她转头看了一眼沙发,他还睡着,小Q趴在他口也在睡但他的手在睡梦中碰到了光脑腕带的发送键,给她发了一条空白消息。
苏晚晴看着那条空白消息,笑了一下,回复——好好睡,小星星的测试我做好了,一切正常。
发完之后她又加了一句——你比小星星更需要休息。
然后她关掉光脑腕带,走到沙发前,蹲下来,看着陆星辰的睡脸,他的呼吸比刚才更平稳了,眉头完全舒展了,嘴角的弧度比刚才大了一点,看起来像在做了一个好梦。
小Q从陆星辰口抬起头,看了苏晚晴一眼,绿色的眼睛里没有翻白眼,没有不屑而是一种温和的、近乎感激的表情。
它用脑袋蹭了蹭陆星辰的下巴,然后重新蜷成一团,继续睡。
苏晚晴伸出手,轻轻地把陆星辰额前的头发拨到一边,这一次她的手指没有犹豫,没有悬停,而是轻轻地、慢慢地、像羽毛一样拂过他的额头。他的皮肤是凉的,带着一种熬夜后的微凉,像一块被放在冰箱里太久的玉石。
她的手指在他额头上停留了大概两秒,然后收回来,放在自己的口上。她的心跳快得像擂鼓,情绪监测贴片在后颈上发出了一阵急促的震动,她没有关掉,让它响着。
反正他睡着了,听不到。
她站起来,走回工作台前,拿起笔,在一张便签纸上写下了一行字——
小星星测试通过,外壳已安装。你好好睡,我先回去了,明天见哈——苏晚晴
她把便签纸贴在工作台上最显眼的位置然后背上书包,走到门口,回头看了一眼实验室。
陆星辰还在睡,小Q也在睡,小星星安静地停在测试区中央,指示灯一闪一闪的,像一颗在黑暗中守望的星星。
苏晚晴轻轻关上门,走进走廊。走廊的感应灯依次亮起,在她面前铺开一条光的长河,她走进电梯,靠在墙上,闭上眼睛,脑子里全是陆星辰睡着时的样子——舒展的眉头、微弯的嘴角、发白的嘴唇、眼睛下面的青色、以及那道在她手指下微凉的皮肤。
她走出科技楼,穹顶上的人造太阳已经开始调暗光线,模拟地球的黄昏,整个城市笼罩在一片橘红色的光中,建筑外墙的纳米涂层反射着夕阳的颜色,把青森穹顶城变成了一座被泡在蜂蜜里的宝石城。
苏晚晴踩着步行云轨往星轨站台走,夜风从通风系统吹进来,带着花卉区模拟出的桂花香味,甜得发腻,像一整瓶被打翻的香精。
她的光脑腕带又震动了,这次是陆星辰的回复——刚醒,看到你的便签了,谢谢。
苏晚晴看着这条消息,愣了一下——你不是在睡觉吗?
醒了,小Q把我踩醒的,它饿了。
苏晚晴笑了,笑得很开心,笑到路过的保洁机器人以为她在哭,主动递给她一张纸巾,她接过纸巾,擦了擦并不存在的眼泪,然后回复——那你快带它去吃东西吧,别饿着它。
回复来得很快——嗯,你到家了说一声。
苏晚晴看着你到家了说一声这八个字,心里那个小小的太阳又亮了几度。她回复了一个好字,然后把手进校服口袋里,加快了脚步。
磁浮星轨的列车上,窗景切换到夜间模式,一片深蓝色的海面上倒映着月光,苏晚晴靠着车窗,看着那片虚拟的海,嘴角的弧度怎么都压不下去。
她想今天应该是糟糕的一天——小星星出了故障,陆星辰熬了夜,她翘了半天课,一切都乱糟糟的,但奇怪的是她觉得今天是美好的一天,因为在这一天里,她看到了陆星辰的另一面——不是那个高冷不可接近的年级第一而是一个会因为芯片故障而彻夜不眠、会躺在沙发上睡得像个孩子、会在醒来后第一件事就是给她发消息的普通少年。
这一面,大概只有她能看到。
这个认知让她心里涌起一种甜蜜的满足感,像吃了一整罐蜂蜜,甜得她忍不住想笑。
列车到站,她下车,踩着步行云轨往家走,夜风带着模拟出的栀子花香味,清甜而浓郁像一瓶被打翻的香水。她推开家门,看到母亲林秀兰正坐在沙发上看全息新闻,父亲苏建国还没下班。
妈,我回来了。
林秀兰看了她一眼——你的校服上全是金属粉末,又去实验室了?
嗯,小星星出了点问题,我去修了。
林秀兰站起来,走到她面前,伸手拍了拍她校服上的灰尘,然后看着她的脸——你的眼睛红了。
苏晚晴摸了摸自己的眼睛——可能是太累了。
林秀兰看着她,目光里带着一种母亲特有的洞察力,像是能看穿她所有的谎言和伪装——不是因为累,是因为哭过。
苏晚晴没有否认,因为她确实哭过,在小星星第一次动起来的时候,在陆星辰说她厉害的时候,在他闭上眼睛靠在沙发上的时候,在她用手指拂过他额头的时候,她的眼泪一直在眼眶里打转,只是没有掉下来。
妈,如果有一天我喜欢上一个人,但那个人可能不太适合我…你会怎么办?
林秀兰看着她,沉默了片刻,然后笑了——那要看你觉得值不值得。
苏晚晴想了想——我觉得值得。
那就去喜欢林秀兰伸手揉了揉她的头发——值不值得只有你自己知道,别人说了不算。
苏晚晴看着母亲,忽然觉得鼻子酸酸的,她扑过去抱住林秀兰,把脸埋在母亲的肩膀上,感觉到母亲的手在她背上轻轻拍着,一下一下的,像她小时候被哄睡觉时的节奏。
妈,谢谢你。
谢什么?
谢谢你生了我,谢谢你让我爸教我修东西,谢谢你没有因为我成绩差就觉得我是个废物。
林秀兰的手停了一下,然后继续拍——你从来不是废物,你只是还没找到自己擅长的事情。
苏晚晴把脸埋得更深了,眼泪终于没忍住,一滴一滴地落在母亲的衣服上,纳米布料自动吸收了那些泪水,但她觉得那些眼泪的温度已经渗进了她的皮肤下面,变成了一个永远不会消失的印记。
她哭了一会儿,然后抬起头,擦了擦脸,吸了吸鼻子——我饿了。
林秀兰笑了,推着她往厨房走——营养膏在料理机里,自己热。
苏晚晴走到料理机前,打开机器,把营养膏放进去加热,等待的时候,她打开光脑腕带,给陆星辰发了一条消息——到家了,你也早点休息,别再熬夜了。
陆星辰的回复来得很快——好…明天见。
苏晚晴看着明天见三个字,嘴角弯起一个大大的弧度——明天见陆星辰,小星星也要见。
回复——小星星说明天见。
苏晚晴盯着那行字,笑出了声。料理机叮的一声响,营养膏热好了,她端出来,坐在餐桌前,一口一口地吃着,觉得今天的营养膏比平时甜了很多,甜到她觉得分子料理机大概也需要换一个了。
但她知道,不是料理机的问题,是她的问题。
她的心里住进了一个人,所以看什么都甜。
窗外的穹顶上,人造星空开始了夜间循环,无数光点按照真实星空的运动轨迹缓慢移动,苏晚晴看向窗外,在那些光点中找到了地球的方向,那颗蓝色的星球正发出柔和的光,像一只温柔的眼睛注视着月球上这座被玻璃罩保护的城市。
她想如果有一天她能去地球,她要带上陆星辰,一起去看真正的海、真正的山、真正的风。
不是全息投影,不是模拟数据,是真实的、活生生的、有温度的地球。
在那之前,她要先把小星星做好,把比赛赢下来,然后把那些藏在螺丝和代码里的喜欢,一件一件地告诉他。
或者不告诉。
谁知道呢。
她关上灯,躺在床上,看着天花板上的星空投影,在模拟星光的微光中沉入梦乡。
梦里小星星在竞技场上奔跑、旋转、跳跃,身后跟着一个穿着深蓝色校服的少年,他的耳朵是红色的,深蓝色的眼睛里倒映着她的影子。
而她站在竞技场的中央,伸出手,等着他们跑过来。
他们跑过来了,一起。
她想,这大概就是她想要的全部。