39小说网 - 经典小说 - 与峰齐,愿鹰栖。在线阅读 - 第 7 章 替她决定与撤掉程序

第 7 章 替她决定与撤掉程序

    

第 7 章 替她决定与撤掉程序



    这之后的三周里,齐峰在袁鹰家过了五次夜。

    白天在现场,他们仍然隔着电脑、工具箱和一地线缆说话。齐峰把钳子递给她时不碰她的手,袁鹰从他身边经过也不会停。工人收工,他们各自上车,没有人看出异常。

    门一关便不是这样。

    有一次袁鹰还在玄关换鞋,齐峰从身后抱上来,她半只鞋没脱掉就转身咬住他的嘴唇。另一次两个人在餐桌前争一个参数,争到最后电脑被推到一边,第二天早上才发现程序还停在没保存的页面。

    他们没有问过这算什么。

    袁鹰说“别闹”,齐峰便会停。有一次他真的退开去拿杯子,袁鹰的手跟出去,停在半空;等他转身,她又把手压回膝上。水放下以后,她才攥住他的衣摆。齐峰重新俯身,抱到一半碰着她腰侧的淤青,两个人一齐停了。她把那只手往上挪一点,没让他走。

    这些事只发生在门后。

    门外的袁鹰话少、准确、不欠谁东西;门内的袁鹰会嫌齐峰占地方,睡着以后却把腿压过来。有一晚她醒来,膝盖正顶在齐峰腿间。她慢慢抽回腿,翻身朝着另一边,快睡着时,后背又碰到了他。

    第五次夜里,齐峰故意坐在床边没有马上躺下。

    水已经喝完,杯子放在柜上。他听见袁鹰翻身,手抬了一下,想碰她露在被外的胳膊。床单从她那边一点点绷过来,齐峰把手留在自己膝头,等着看。

    袁鹰闭着眼伸手,摸了两次都只碰到空床单。第三次,她撑起身:“你干什么?”

    “喝水。”

    “喝完了?”

    “嗯。”

    “那你坐着干什么?”

    齐峰躺回去。袁鹰还撑着身,目光从空杯子移到他脸上,随后躺回枕头,把手收进了被子。

    她拿脚跟推了他一次,推完却没有挪远。齐峰没提刚才杯子早就放下了,伸手碰到她的小臂。袁鹰的胳膊绷了一下,他便停住,掌心仍挨着她。

    等袁鹰的呼吸重新匀下来,齐峰试着把手往外抽。她的手沿着床单摸过来,扣住他的腕骨。齐峰这才停住,嘴角在枕头边抬起来,任她抓着。

    袁鹰没有醒,也没有再把腿搭过来。齐峰躺了半天,才把自己挪近一点,免得她一直伸着胳膊。

    三周后,齐峰负责的社区阅读室临时出了问题。

    验收前一晚,原来的控制程序无法启动。供应商说最快两天后到场,客户第二天上午已经安排了参观。

    齐峰给袁鹰打了两个电话。

    没人接。

    他在设备间坐了十分钟,打开了电脑里的测试包。

    屏幕右下角贴着她写的标签:仅限测试。

    取消演示、赔一笔人工或者只开最基础的照明,都还来得及。齐峰仍然把程序接进了阅读室的正式设备。

    第一组灯亮起来时,齐峰没有停程序。

    凌晨四点,百叶窗开始随日照角度转动,绘本区的灯在人走近以前亮起。测试跑完,没有故障。

    齐峰在演示页上写了袁鹰的名字。

    只写程序名称也能验收。他还是把那两个字放到最显眼的位置,又调大了一号。

    上午验收很顺利。客户拍下视频,当场问能不能把这套东西装进另外三个空间。

    齐峰说:“程序不是我的。后续合作要问作者。”

    客户问作者是谁。

    齐峰指了一下演示页上的名字。

    下午两点,袁鹰被一条好友申请吵醒。

    她前一天刚结束公司的项目,连续三十多个小时没有好好睡。客户在申请里夸她的程序,还发来现场视频。

    袁鹰把视频看了三遍。

    第一遍,她看见自己在模拟器里跑过无数次的光,真的落在墙面和地板上。小孩从绘本区跑过去,灯光一盏盏追着鞋底亮起来。

    视频还没播完,袁鹰已经从床上坐起来。她赤脚下床,打开电脑,把另外三个空间的结构排开。

    第二遍,她看见了自己的名字。

    袁鹰截下那一帧,单独存进相册。

    第三遍,她看见右下角的正式环境标识。

    袁鹰的手指停住。她把三张新场地图最小化,打开部署记录。

    齐峰回来时,手里拎着验收后打包的甜点。

    袁鹰坐在餐桌前,视频停在她名字出现的那一帧。

    齐峰一眼看见屏幕,步子快了一点。他把纸袋放下,俯身去吻她。袁鹰偏了一下脸,吻落在脸颊。她的手却抓住了他工装下摆,没有让他立即直起身。

    “醒了?”

    “嗯。”

    “客户很喜欢。后面三间我没替你答应,让他们直接找你。”

    袁鹰看向纸袋。包装上印着阅读室附近那家店的名字,封口贴还没有撕,底下压着齐峰今天的停车票。

    “效果挺好的。”

    齐峰等了一下:“就这个?”

    “不然呢?”

    “看了几遍?”

    袁鹰的手仍抓着他衣摆:“跟上线有关系吗?”

    “我想知道。”他说。

    袁鹰沉默几秒:“三遍。”

    齐峰把纸袋又往她手边推了一截:“我说能用。”

    袁鹰这才松开他的衣服:“你用的是我给你的测试包?”

    “原程序坏了,现场等不了。我给你打过电话。”

    袁鹰的食指压在触控板上。视频停在正式环境标识出现的那一帧,右上角的红字没有被进度条遮住。

    袁鹰原本压在触控板上的食指慢慢松开:“我知道。昨晚我睡着了。”

    齐峰等了一下。

    “下次要是我没接,你多打几次。我睡得沉。”

    “打到你接?”

    袁鹰看着屏幕上的名字:“嗯。”

    齐峰问:“不管几点?”

    齐峰问完没有移开视线。袁鹰立刻改口:“紧急情况。”

    “什么算紧急?”

    “别得寸进尺。”

    “后面三间算不算?”

    袁鹰移开视线:“先把这一间做完吧。”

    “不是已经做完了?”

    “演示跑通了。正式用还有一些东西要补。”

    “很多?”

    “不多。”

    她把甜点拆开,吃了一小口:“挺好吃的。”

    那天晚上,袁鹰开始把测试程序改成可以交付的版本。

    原来的东西只需要在她自己的电脑和齐峰搭出的木板房里运行。没有用户权限,没有故障降级,没有完整日志。传感器掉线时,她知道该去哪里重启;换成真正的阅读室,值班的人不会知道。

    她列了一张清单。

    设备异常处理、数据清理、权限隔离、应急开关、使用说明。

    一共四十七项。

    她删掉“不多”,重新从第一项开始。

    客户第二天就来问后续维护。袁鹰没有告诉对方这套程序从未被允许上线。

    袁鹰回复:“目前使用的是早期版本,缺少的功能由我补齐。现场有问题直接找我。”

    客户把她拉进三个工作群。

    接下来的四天,袁鹰白天上班,晚上处理阅读室。灯偶尔误亮,百叶在断网后无法复位,孩子连续跑过时,状态队列会越积越多。

    每出现一个问题,她都先向客户道歉。每修完一个问题,她又把客户群里的现场照片存进单独的目录。第四天,目录里有六十二张照片;午饭在桌角放凉了两次。

    齐峰把设备参数发给她,陪她改过两次现场。第三天,他把另外三间场地的图纸也发了过来。

    “三间新场地的图纸到了,你看看。”

    “先放着。”

    “客户催报价。”

    “这周给。”

    “你不是一直想让它进真的房子?”

    “嗯。”

    袁鹰低着头,没有让他看见自己的脸。

    第五天凌晨,齐峰在仓库发现一只落下的移动硬盘。他给袁鹰发消息,没有回复,便开车送到她家。

    门铃响了很久,袁鹰才来开门。

    她还穿着前一天去公司的衣服,头发随手扎在脑后。玄关堆着外卖袋,最上面一份只吃了几口。那盏感应灯在她身后亮着,过了四十秒,没有按原来的方式渐暗,而是忽然熄灭。

    齐峰问:“灯怎么了?”

    “我把判断模块换去阅读室了。这里先用旧版。”

    齐峰站在暗下去的玄关里,没有马上进去。他伸手触发了两次,灯都没有再亮。

    齐峰看向餐桌。电脑开着,旁边是两罐空咖啡。清单上的四十七项划掉了三十二项,下面又添了十九项。

    “你几天没睡?”

    “睡了。”

    “多久?”

    “够用。”

    “你手怎么抖?”

    袁鹰把手收回袖口:“咖啡喝多了。”

    齐峰走到餐桌旁,没有碰她的电脑。屏幕上开着一份责任说明,最后一段写:本次程序尚未完成正式交付,后续故障与部署、施工方无关,由开发者承担。

    “这是什么?”

    “客户明天要的说明。”

    “为什么跟部署方无关?”

    “程序是我的。”

    “是我装的。”

    “你是为了救场。”

    “所以呢?”

    “不用你赔。剩下的我能补完。”

    齐峰转头看她。

    袁鹰把右手收回袖口。布料在腕骨下面轻轻动了一下。

    齐峰问:“让我撤掉不是更简单吗?”

    袁鹰的脸色变了一下:“已经验收了。现在撤更麻烦。”

    “我问你想不想。”

    “想不想不重要。”

    “对谁不重要?”

    “你撤掉会赔钱,客户也会找你。再给我几天就能做完,没必要。”

    齐峰盯着她:“那天你让我上线了吗?”

    “你当时没办法。”

    “我问你让没让。”

    袁鹰沉默了很久:“没有。”

    这个回答轻得几乎听不见。

    齐峰看着她收进袖口的手。两罐空咖啡立在电脑旁边,责任说明还开着,光标停在“与部署、施工方无关”后面。

    “你他妈为什么不早说?”

    “说了你会难受。”

    “所以你就这样?”

    “我能处理。”

    “能处理个屁。你手都在抖。”

    他的声音重了一点。袁鹰立刻往后退了半步:“真没多大事。程序本来就需要做完,客户也愿意付钱,你确实帮我找到了机会。”

    齐峰抬手按了一下鼻梁。他朝玄关看去,那家甜点店的纸袋压在几个外卖袋下面,只露出一截提绳:“我来的时候还带了甜点。我以为你会高兴。”

    “我高兴。”

    齐峰看向她。

    袁鹰没有改口:“看见效果的时候,我高兴。看见名字也高兴。”

    袁鹰接着说:“所以我没法马上让你撤。”

    齐峰把桌边的空咖啡罐捏瘪了一块:“所以我做错了,你替我擦屁股?”

    “程序是我的。”

    “上线是我干的。”

    “现在撤,前面的时间和钱全白费。”

    “白费也是我的。”

    “还有你的人。”

    “我跟他们说。”

    “客户追责呢?”

    “追我。”

    “你赔得起吗?”

    “赔不起也轮不到你替我认。”

    齐峰把捏瘪的咖啡罐扔回桌上。罐底撞到键盘,责任说明往下滚了一页,“由开发者承担”停在屏幕正中间。

    “你没让我上。”齐峰说,“我还拎着甜点来问你高不高兴。”

    袁鹰把右手往袖口里又收了一点:“我能做完。”

    “明天我去下线。”

    “撤了也改变不了已经用了三周。”

    “至少第四周不是偷的。”

    袁鹰扶住桌沿。

    “下线以后,”袁鹰问,“你还留测试包吗?”

    齐峰看着她:“你想让我留?”

    “按授权应该删。”

    “我问你想不想。”

    袁鹰没有回答。

    第二天早上,齐峰通知客户程序未经授权,演示无效。

    客户在电话里骂了二十分钟。项目尾款被冻结,已经到手的演示费退回,替换程序和两天人工也没有再报。

    齐峰在责任说明上写:本人在明确知悉使用限制的情况下,擅自部署。

    他没有让袁鹰到现场。

    下午,阅读室切回最基础的本地控制。百叶停在固定角度,绘本区的灯也不再追着孩子跑。

    齐峰把测试包、缓存和备份全部删除,将记录发给袁鹰。

    发送以前,他在删除目录前停了很久。确认窗口第一次弹出来,光标落在“取消”上。文件列表重新露出来以后,齐峰把最后修改时间又看了一遍,才重新全选,第二次调出确认窗口。

    这一次,他按下确认。

    手机屏幕亮了一次。袁鹰没有回复。

    齐峰在已经暗下来的绘本区坐了很久。百叶停在固定角度,外面的光在地板上慢慢挪。他没有再发第二条消息。