序章:胖子
姚津昊第一次意识到自己“不一样”,是在小学三年级。
体育课,50米跑。老师吹了哨子,同学们像一群被松开弹簧的玩具,嗖嗖地冲了出去。姚津昊也在跑——但他跑得很慢。不是他不努力,是他的身体不听话。他的腿不算短,但每迈出一步都需要抬起比别的同学多十几斤的重量。他的胳膊在身侧摆动,肉乎乎的手臂随着步伐一颤一颤的,像两块没有固定好的果冻。
他跑到终点的时候,大部分同学已经喘匀了气,开始三三两两地聊天。没有人等他。也没有人注意到他到了。
他弯着腰,双手撑在膝盖上,大口大口地喘气。汗水从额头上滴下来,落在塑胶跑道上,洇出一个个深色的小圆点。
“你看他跑步的样子,好好笑哦。”
“像只企鹅。”
“企鹅比他快吧?哈哈哈哈。”
笑声从背后传来,不大不小,刚好能让他听到。
姚津昊没有回头。他直起腰,用手背擦了擦额头的汗,慢慢地走回了教室。
那天放学后,他在书包里翻了好久,翻出了一张白纸和一支铅笔。他趴在书桌上,想了很久,然后在纸上写了一行字:
“我是一个胖子。”
他看着这五个字,觉得它们很重。每个字都像一块砖头,压在他的胸口上。
他又想了一会儿,在下面加了一行:
“但我不是一只企鹅。”
写完之后,他把纸揉成一团,扔进了垃圾桶。
那天晚上,他躺在床上,盯着天花板上的那道裂缝,想了很久。
他在想——为什么别人跑得快,他跑得慢。为什么别人瘦,他胖。为什么别人笑的时候是一起笑,而他被笑的时候是一个人。
他想了很久,没有想出答案。
然后他翻了个身,闭上眼睛,睡着了。
第二天早上,他从垃圾桶里捡回了那张纸,展平,叠好,放进了抽屉的最里面。
他不知道为什么要留着这张纸。他只是觉得——这张纸上的字,是他对自己说的第一句真话。
他想把真话留下来。
哪怕只有他自己知道。
第一章:Hello, World
姚津昊第一次接触编程,是在初一。
那天信息技术课,老师讲的内容是“计算机基础知识”——什么是CPU,什么是内存,什么是硬盘。大部分同学听得昏昏欲睡,有人趴着睡觉,有人在下面传纸条,有人在玩手机。
姚津昊也快睡着了。他的眼皮越来越重,脑袋一点一点地往下沉,就在他的额头快要磕到桌面的时候,老师切换了幻灯片——
屏幕上出现了一行字:
print("Hello, World")
“这是编程,”老师说,“一种和计算机对话的语言。”
姚津昊的瞌睡虫瞬间跑光了。
他坐直了身体,盯着那行字看了很久。
print。括号。引号。Hello, World。
这些符号组合在一起,像是一种神秘的咒语。它们不是中文,不是英文,不是任何一种他学过的语言——但它们有规律,有结构,有一种数学般的美感。
“Hello, World”——你好,世界。
这行字让姚津昊觉得,计算机不是一个冷冰冰的机器。它会说话。它会说“你好”。它愿意和你说“你好”。
他想和这个世界说“你好”。
但他不知道怎么开口。
也许——计算机可以帮他开口。
那节课之后,他求爸爸给他买了一台笔记本电脑。不算贵,三千多块,银灰色的外壳,键盘的手感有点硬,但够用了。
他抱着电脑回到房间,关上门,坐在书桌前,打开了屏幕。
他按照课上老师教的,下载了Python,打开了编辑器,然后在空白的页面上敲下了他人生中的第一行代码:
print("Hello, World")
按下回车。
屏幕上出现了:
Hello, World
姚津昊看着那行字,笑了。
那种笑不是被人夸奖时的笑,不是吃到好吃的时的笑——是一种更深的、更安静的、像是找到了一个失散多年的朋友时的笑。
计算机听懂了他的话。
计算机回应了他。
计算机不会因为他胖就笑他,不会因为他跑得慢就不等他,不会因为他不爱说话就觉得他奇怪。
计算机只看代码。
代码对了,就是对了。代码错了,就是错了。没有偏见,没有嘲笑,没有区别对待。
姚津昊觉得,这是世界上最公平的事情。
从那天起,他开始了自学编程的旅程。
他买了很多书,看了很多教程,敲了很多代码。他每天放学后都会坐在电脑前,一坐就是好几个小时。他的房间里贴满了便签纸,上面写着各种语法规则和函数用法。他的书桌上堆满了草稿纸,上面画着程序流程图和数据结构的示意图。
他的代码从最简单的“Hello, World”开始,慢慢变成了循环、条件判断、函数定义、类与对象。他从控制台程序写到了图形界面,从本地应用写到了网络爬虫,从小游戏写到了机器学习模型。
每学会一个新东西,他都会在代码的注释里写一句“今天开心”。
不是写给谁看的——是写给自己看的。
他想记录下这些开心的时刻。
因为在他十五年的生命里,开心的时刻不算多。
编程是其中最亮的一块。
第二章:纸条
姚津昊开始在教学楼后面的台阶上放纸条,是因为一件很小的事。
那天放学后,他经过那条巷子,看到台阶上坐着一个男生。那个男生瘦瘦的,低着头,看不清脸。他的校服有点大,领口松松垮垮地耷拉着,露出一截细瘦的脖子。
姚津昊经过的时候,那个男生抬起头看了他一眼。
只是一眼。很短。但姚津昊看到了他的眼睛。
那双眼睛是灰黑色的,很深,很暗,像两口枯井。
但枯井的底部,有一点点光——不是希望的光,是求救的光。
那个眼神让姚津昊想起了自己。
想起了小学三年级时,他站在操场上,看着其他同学笑着跑过终点线,而他还在半路上慢慢地挪动。想起了他弯着腰喘气的时候,汗水滴在塑胶跑道上,洇出深色的小圆点。想起了他回到教室时,没有一个人抬头看他。
他当时想的是什么?
他想的是——有没有人能注意到我?有没有人能问我一句“你还好吗”?有没有人能对我说一句“没关系,慢慢来”?
没有人。
那天晚上,他坐在书桌前,对着电脑发了很久的呆。
然后他打开了一个新的文本文件,开始打字。
他打了一段很简单的代码——一个print语句,输出三行字:
print("hello, world")
print("你今天开心吗?")
print("如果开心,请笑一下。")
print("如果不开心,也没关系。")
print("因为明天可能会更好。")
他把这段代码复制到了文本文件里,调整了格式,让它在打印出来的时候看起来整洁一些。然后他用家里的打印机打印了出来——用的是最便宜的A4纸,蓝色圆珠笔——不,打印机是黑白的。他后来用蓝色圆珠笔在纸条上画了笑脸。
他在纸条的角落画了一个小小的笑脸——眼睛弯弯的,嘴角翘起来。
然后把纸条折好,放进口袋里。
第二天放学后,他绕路去了教学楼后面的那条巷子。台阶上没有人。他蹲下来,把纸条塞进了第三级台阶的缝隙里,用一小片落叶盖住。
他站起来,拍了拍手上的灰,走了。
走了几步之后,他停下来,回头看了一眼。
台阶安安静静地躺在那里,落叶在风里微微颤动。
他想——那个人会不会看到这张纸条?会不会觉得莫名其妙?会不会笑他幼稚?
也许会。也许不会。
但至少——他做了他能做的事。
他不能帮那个人解决他的问题。他不知道那个人为什么不开心,不知道他的家庭、他的朋友、他的生活。他只是一个会编程的胖子,连自己的问题都解决不好。
但他可以留下一张纸条。
一张写着“你今天开心吗?”的纸条。
因为——如果当年有人在操场上问他这句话,他可能会哭出来。
但哭完之后,他会觉得好一点。
真的会好一点。
第一张纸条之后,姚津昊像是打开了一个开关。
他开始每天都写纸条。有时候是代码,有时候是几句鼓励的话,有时候只是一颗大白兔奶糖和一串笑脸。
他把纸条塞在台阶的缝隙里、花坛的泥土下、栏杆的背面、石头的下面。他像一个秘密的圣诞老人,每天都会在同一个地方留下礼物,然后悄悄地离开。
他不知道捡到纸条的人是谁。不知道是男是女,是老是少,是一个人还是一群人。
他给那个人起了个名字——“第零号学生”。
因为第零号是最特别的一个。不是第一个,不是第二个——是第零个。是在所有人之前、在所有秩序之外、在一切开始的地方。
那个人是他的第一个读者。第一个“学生”。第一个——因为他的纸条而可能变得开心一点点的人。
他开始在纸条上教编程。从最简单的语法开始,一天一天地推进,像是一个耐心的老师在给一个看不见的学生上课。
他不知道那个人有没有电脑,懂不懂英语,能不能理解这些抽象的概念。但他尽量把每一个知识点都讲得简单、生动、有趣。他用食物的比喻来解释数据结构,用动物的例子来说明算法逻辑,用笑脸来标注重点。
他在每一张纸条的最后都会写同一句话:
“如果你看不懂,没关系。慢慢来。”
这句话也是写给他自己的。
因为他在学编程的时候,也经常看不懂。也经常被bug搞得崩溃。也经常觉得自己太笨了,不适合做这件事。
但每次他想放弃的时候,都会想起那句“慢慢来”。
然后他就继续了。
他写了一百三十七张纸条。
每一张都是他亲手写的——不是打印的。他会把代码在电脑上写好、调试好、确认无误之后,再一个字一个字地抄到纸条上。因为打印出来的字太冷了,没有温度。而手写的字——哪怕是他的圆圆的、胖胖的、有点歪歪扭扭的字——是有温度的。
他想让那个人感受到温度。
哪怕隔着纸条,隔着台阶,隔着素未谋面的距离。
他想让那个人知道——这个世界上,有一个人在想着他。
不是同情,不是怜悯,不是居高临下的施舍。
是——我理解你的孤独,因为我也有。我不知道怎么帮你,但我可以陪着你。用我的方式,用代码的方式。
一百三十七张纸条之后,姚津昊停止了。
不是因为他失去了兴趣——而是因为他换了教室。
初一的教室在教学楼的东边,那条巷子是他每天放学的必经之路。初二的时候,他的教室搬到了西边,他不再经过那条巷子了。
他开始的时候还会特意绕路过去,但渐渐地,作业多了,比赛多了,时间不够用了。他绕路的频率从每天变成每周,从每周变成每月,最后——不再去了。
他不知道那个“第零号学生”有没有等到他的第一百三十八张纸条。
他不知道那个人有没有在台阶上等他。
他什么都不知道。
他只是在某个深夜,偶尔会想起那条巷子,想起那级台阶,想起那个瘦瘦的、低着头坐在台阶上的男生的背影。
然后他会想——那个人现在开心了吗?
他希望答案是“是的”。
但他不知道。
他永远不会知道。
第三章:初三八班
初三的时候,姚津昊被分到了八班。
他坐在最后一排靠窗的位置——这个位置对他来说正合适。离老师远,离窗户近。他可以在上课的时候偷偷写代码,不会被发现。他可以在累了的时候看窗外的那棵梧桐树,看树叶在风里摇摆,看阳光透过叶缝洒在地面上的光斑。
他不怎么和班里的同学说话。
不是因为他孤僻——而是因为他不知道说什么。他的世界里只有代码、数学、物理和大白兔奶糖。这些话题对大部分同学来说太无聊了。他试着聊过,但每次他说到“递归函数”或者“神经网络”的时候,对方的表情就会变得很微妙——像是在听一门外语。
他习惯了。
习惯了一个人吃饭,一个人写代码,一个人在图书馆待到闭馆。
他不觉得孤独。他有电脑,有代码,有那个永远在等待他解决的bug。这些东西填满了他的时间,也填满了他的心。
但他有时候会抬头看。
看教室里的同学们。
他看到陈硕坐在第一排正中间,脊背挺得笔直,手里的笔一刻不停。他的侧脸很好看,下颌线锋利,鼻梁高挺,像一尊被摆在神龛上的雕像。
姚津昊觉得陈硕很好看。不是那种“想和他做朋友”的好看——是一种客观的、审美上的好看。像一幅画,一件雕塑,一段写得极其优雅的代码。
但他觉得陈硕有点可怜。
不是同情——是一种理解。
因为他能看出来,陈硕的骄傲是一种铠甲。他用成绩和排名把自己包裹起来,不让任何人靠近。他看起来高高在上,实际上——他是一个人。
和陈硕一样孤独的人。
只是他们表达孤独的方式不同。陈硕用傲慢,他用沉默。
葛奕钦不一样。
葛奕钦是阳光。他的笑容像夏天的太阳,热烈、直接、不加掩饰。他坐在姚津昊前面,每天都会转过身来趴在他的桌子上,用那双亮晶晶的眼睛看着他。
“嘿,你在写什么?”
“姚津昊你好厉害!”
“这个红烧肉给你,我妈做的,超好吃!”
葛奕钦的热情让姚津昊有点不知所措。他不习惯被人这样关注——不,他不习惯被任何人关注。葛奕钦的关注像是有人在他面前点了一盏灯,太亮了,亮得他眯起了眼睛。
但他不讨厌。
甚至——有一点喜欢。
葛奕钦的笑声很大,说话很直,做事很笨拙。他给姚津昊带红烧肉的时候会说“多买了一头猪”这种蠢话。他在体育课上故意把球滚到姚津昊脚边的时候会装作“哎呀不小心”。他在姚津昊面前永远红着耳朵,像一只被太阳晒熟了的虾。
姚津昊觉得葛奕钦很可爱。
不是那种“想和他谈恋爱”的可爱——是一种纯粹的、发自内心的“这个人好有趣”的可爱。
但他注意到了葛奕钦耳朵红的时候,自己的心跳也会快一点点。
只有一点点。
他告诉自己那是因为葛奕钦的红烧肉太好吃了。
韩泽霖是安静的。
他不像葛奕钦那样热烈,也不像陈硕那样锋利。他像一杯温水——不烫不凉,安安静静地放在那里,你渴了的时候端起来喝一口,觉得刚刚好。
韩泽霖来找他调键位的时候,姚津昊注意到了他的手。那双手很瘦,骨节分明,指尖有薄薄的茧——那是长时间握鼠标留下的痕迹。
那双手和他自己的手完全不同。他的手是胖的、软的、圆润的。韩泽霖的手是瘦的、硬的、棱角分明的。
但他们的手指做着同样的事情——敲键盘。只是目的不同。韩泽霖敲键盘是为了在三角洲行动里击杀敌人。他敲键盘是为了创造一个世界。
姚津昊给他写了几个参数。韩泽霖接过笔记本的时候,手指碰到了他的手指。
只是一瞬间的触碰。但姚津昊感觉到了韩泽霖的手指在发抖。
他抬起头,看到韩泽霖的耳朵红了。
又是耳朵红了。
为什么这些男生的耳朵总是红?
姚津昊没有多想。他低下头,继续写代码。
但他记住了韩泽霖手指发抖的样子。
那个样子让他觉得——有人在因为他的存在而紧张。
这种感觉很奇怪。他不是那种会让人紧张的人。他是那种会被忽视的人。是那种在操场上跑完50米、没有人等他的人。
但韩泽霖因为他的存在而紧张了。
姚津昊不知道该怎么处理这种感受。
所以他选择了最简单的方式——假装没有注意到。
周奕辰是炮仗。
这个人从走进教室的那一刻起就在燃烧。他上课接话茬、下课追跑打闹、作业能拖就拖。他的能量多到无处安放,像一颗被点燃了引线的炮仗,随时可能在教室里炸开。
但他的理科好得离谱。
姚津昊第一次注意到周奕辰,是在物理课上。老师在讲电磁感应,周奕辰在下面画漫画。老师点他回答问题,他站起来,看了一眼题目,然后给出了一串完全正确的推导过程。整个过程不超过三十秒。
老师拿他没办法。同学们也拿他没办法。
姚津昊觉得周奕辰很有趣。他的脑子里有一团乱麻,但那团乱麻的每一个结都恰好打在正确答案上。这种思维方式——混乱中有序,无序中有理——让姚津昊想到了某种他自己也在追求的东西。
创造性的混乱。
周奕辰传纸条给他的时候,他的第一反应不是“这个人好烦”——而是“这个人好勇敢”。
他敢把自己想说的话写在纸条上,经过四个人的手,传到最后一排。他不在乎别人看到,不在乎别人怎么想。他就是想说,然后他就说了。
姚津昊做不到这一点。
他连“你好”都很难说出口。
所以他回了一个字:“好。”
那个字花了他三分钟的时间来写。他写了又划掉,划掉又重写,最后写了一个工工整整的“好”。
他不敢写更多。
因为他怕写多了,周奕辰会看出来——他的手也在发抖。
薛晋安是山。
这是姚津昊对薛晋安的第一印象。高,宽,沉默,像一座山。他站在你面前的时候,你会觉得自己的整个世界都被他挡住了。
姚津昊第一次和薛晋安说话,是在走廊上。薛晋安低着头看他——因为比他高了二十厘米——然后用一种低沉的、沙哑的声音说:“姚津昊。”
“嗯?”
“你的鞋带松了。”
姚津昊低头看了看,鞋带确实松了。他弯下腰去系,薛晋安也弯下了腰。
两个人同时弯腰,额头差点撞在一起。
姚津昊抬起头,近距离地看到了薛晋安的脸。浓眉大眼,眉骨上有一道浅浅的疤,嘴唇抿成一条线。
他的脸上有一种很认真的表情——那种认真不是在做数学题时的认真,而是在保护一件易碎品时的认真。
薛晋安先他一步把鞋带系好了。
打了一个很漂亮的蝴蝶结。
姚津昊看着那个蝴蝶结,愣了一下。一个一米八三的、爱打架的男生,打了一个这么漂亮的蝴蝶结?
“你鞋带系得真好。”姚津昊说。
薛晋安的脸红了。
他的脸红和别人的不一样。因为他的皮肤不白——是那种经常在户外活动晒出来的健康的小麦色——所以脸红的时候不太明显。但姚津昊看到了。他的耳朵尖红了,脖子根红了,连那道疤旁边的皮肤都泛了一层淡淡的粉色。
“谢谢。”薛晋安说,声音比刚才更低了。
然后他转身走了。
走了几步之后,他回头看了一眼。
只是一眼。很短。
但姚津昊看到了他的眼睛。
那双眼睛很大,很深,里面有一种很重的、很沉的、像是要把整个世界都扛在肩上的东西。
那种眼神让姚津昊想到了一个人。
想到了三年前,在那个台阶上,那个瘦瘦的、低着头坐着的男生。
那双灰黑色的、像枯井一样的眼睛。
他不知道为什么会在薛晋安的眼睛里看到那个人的影子。他们完全不同——一个瘦一个壮,一个矮一个高,一个灰黑色一个深棕色。
但那种眼神——那种“我在承受着什么但我不会说”的眼神——是一样的。
姚津昊站在走廊上,看着薛晋安的背影消失在楼梯口,站了很久。
然后他摇了摇头,回到了教室。
他想,他一定是太累了。连续写了三天的代码,睡眠不足,产生了幻觉。
对,一定是这样。
第四章:裂缝
姚津昊第一次看到王恒轩,是在体育课后的那个下午。
他抱着电脑走过那条巷子,听到了一个声音。
“姚津昊。”
那个声音很低,很哑,带着一种潮湿的、阴冷的质感。像是有人在他的后颈上吹了一口气。
他转过头,看到了那面墙。
灰白色的水泥墙面,几道裂缝,翘起的墙皮。
裂缝里渗出了一缕黑色的雾气。
雾气凝聚成了一个人形。
白色的校服,苍白的皮肤,灰黑色的眼睛。
姚津昊的第一反应不是害怕。
是——熟悉。
他认识这双眼睛。
三年前。台阶上。那个瘦瘦的、低着头的男生。
那双灰黑色的、像枯井一样深的眼睛。
“你是……”他的声音在发抖。
“王恒轩。”那个名字从对方嘴里说出来的时候,空气似乎都凉了几度。“我在这里等了你三年。”
“等我?”
“你会编程。”
不是疑问,是陈述。
姚津昊的脑子里像是被扔了一颗炸弹。
编程。三年前。台阶。纸条。第零号学生。
一百三十七张。
“你是……”他的声音哑了,“你是第零号学生?”
王恒轩没有回答。他只是看着姚津昊,那双灰黑色的眼睛里忽然有了一丝极其细微的波动——像是枯井里终于渗出了第一滴水。
然后他消失了。
像是雾气被风吹散了一样,消失在了墙壁的裂缝里。
只留下一句话在空气中回荡:
“帮我。”
姚津昊站在原地,抱着电脑,手指在键盘上无意识地敲击着。
他不知道自己在敲什么。他的脑子里一片混乱。
第零号学生。
他以为那个人只是一个抽象的、模糊的、可能永远不会再见到的存在。一个他随手扔出去的漂流瓶,漂到了海里,再也不会回来。
但那个人回来了。
以一种他无法理解的方式。
以一种他无法拒绝的方式。
他那天晚上没有去巷子里。
他害怕。
不是害怕鬼——他害怕的是王恒轩看他的那种眼神。
那种眼神太重了。
重得像是一个人在黑暗里走了很久很久,终于看到了一点光,然后拼了命地想要抓住那点光。
他不知道自己能不能成为那点光。
他只是一个会编程的胖子。连自己的鞋带都系不好——不对,薛晋安帮他系好了。连自己的50米都跑不完——不对,他跑完了,只是很慢。连自己都照顾不好——不对,他把自己照顾得挺好的,白白胖胖的,每天吃好睡好。
但他照顾不好别人。
他连一句“你好”都说不出口。
他怎么照顾一个——鬼魂?
一个等了他三年的鬼魂?
一个收集了他一百三十七张纸条的鬼魂?
一个写了一封信——一封没有寄出的信——然后就死掉了的鬼魂?
他做不到。
他什么都做不到。
他把被子拉过头顶,整个人缩成了一团。
但他最终还是去了。
因为他是姚津昊。
他是那个在台阶上留下一百三十七张纸条的人。他是那个写下“因为明天可能会更好”的人。他是那个在每一张纸条上画笑脸的人。
他不能因为害怕就不去。
他不能因为做不到就不试。
他打开了电脑,开始写程序。
一个能分析电磁频谱的程序。一个能识别特定频率波形的程序。一个能将灵魂信号映射到物理介质的程序。
他不知道这个程序能不能成功。不知道一个初三学生的代码能不能跨越生死的界限。不知道他能不能让王恒轩“触碰”到这个世界的任何东西。
但他要试。
因为王恒轩等了他三年。
因为一百三十七张纸条,一张都没有丢。
因为那封信——那封写着“是你让我知道,活着是一件值得的事”的信——他还没有收到。
他要收到那封信。
哪怕是用代码的方式。
第五章:六条线
姚津昊不是没有注意到那五个人的心意。
他只是不知道该怎么回应。
陈硕。
他在图书馆里假装看书的样子太明显了。那本《高等数学》从头到尾只翻了一页,他以为姚津昊没看到?姚津昊看到了。他什么都看到了。
陈硕坐在他对面四十分钟,一个字都没看进去。他的视线一直落在姚津昊的屏幕上——不对,不是落在屏幕上,是落在姚津昊的手指上。他在看姚津昊打字。
一个对数学那么敏感的人,怎么可能在一本《高等数学》面前走神四十分钟?
除非他在看别的东西。
除非他在看一个人。
姚津昊知道陈硕喜欢他。从那次数学补考就知道了。那套试卷是陈硕出的——他知道。数学老师告诉他了。“陈硕主动找我说想试试出题的难度,花了一个星期准备的。”
一个星期。
陈硕花了一个星期的时间,为姚津昊一个人设计了一套试卷。
那不是一个“顺手”能做的事。那是一个人在说——我在乎你。我在乎你的数学,在乎你的思维,在乎你的方法。我想看到你的答案。我想看到你用比我更好的方式解题。我想看到你——让我心甘情愿地说出“你的方法比我好”。
姚津昊收到那张写着“你的方法一直比我好”的纸条时,哭了。
不是悲伤的哭——是被理解的哭。
陈硕是唯一一个能和他讨论数学的人。是唯一一个能理解他的思维方式的人。是唯一一个愿意放下骄傲、承认他更好的人。
在数学的世界里,他们是平等的。
但在现实的世界里——姚津昊不知道他们是什么关系。
同学?对手?朋友?
还是——某种他不敢命名的关系?
葛奕钦。
葛奕钦的喜欢太明显了。明显到整个班级都能看出来。
他每天带红烧肉。每天坐在姚津昊对面吃饭。每天在体育课上把球滚到姚津昊脚边。每天在姚津昊写代码的时候趴在他的桌子上,安静地看着他。
他看姚津昊的眼神,像一只大型犬看主人——热烈的、忠诚的、带着一点傻气的。
姚津昊每次看到葛奕钦耳朵红的样子,都忍不住想笑。
这个人——一米七八,黑皮,篮球打得好,在球场上威风凛凛——在他面前,耳朵永远红着,说话永远笨嘴拙舌,做事永远毛手毛脚。
他给姚津昊带红烧肉的时候说“多买了一头猪”。
他在姚津昊面前说“抱着舒服”然后脸红得像煮熟的虾。
他在姚津昊累了的时候把校服外套披在他身上,动作轻得像在给一只猫盖被子。
姚津昊觉得葛奕钦的喜欢很干净。
没有算计,没有犹豫,没有条件。他就是喜欢。喜欢了就去做。做了就不后悔。
姚津昊羡慕他。
因为他自己做不到。
他做不到像葛奕钦那样直接、热烈、不加掩饰。他的感情永远藏在代码的注释里,藏在纸条的笑脸里,藏在“慢慢来”这三个字里。
他可以把“我喜欢你”写成一百三十七种不同的代码形式,但他不会说出来。
永远不会。
韩泽霖。
韩泽霖的喜欢是安静的,小心的,带着一点卑微的。
他来找姚津昊调键位的时候,声音小得像蚊子叫。他接过笔记本的时候,手指在发抖。他发语音给姚津昊的时候,最后那句“谢谢你”几乎是用气声说的。
他把自己藏得很深。藏在游戏ID后面,藏在耳机后面,藏在刘海后面。
但他藏不住他的眼睛。
他看姚津昊的时候,眼睛里有光。那种光不是太阳的光——是星星的光。微弱的、遥远的、但在黑暗中格外清晰的。
姚津昊注意到了他偷偷录音。他看到了韩泽霖把耳机递给他的时候,手机屏幕上的录音界面亮了一下。
他没有拆穿。
因为他知道——韩泽霖需要那些录音。那些录音是韩泽霖和他的世界之间唯一的桥梁。就像他需要代码来和世界沟通一样,韩泽霖需要那些录音来确认——他和姚津昊之间,有过真实的、具体的、可被记录的接触。
姚津昊觉得韩泽霖和他很像。
都是安静的人。都是用某种“介质”来表达自己的人。他用自己的代码,韩泽霖用自己的游戏。他们的世界都很小,但很精致。
只是韩泽霖的世界里,最近多了一个人。
一个帮他调过DPI的人。
姚津昊不知道自己在韩泽霖的世界里是什么角色。一个“帮忙的同学”?一个“懂代码的大神”?还是一个——他不敢想。
但他知道,每次韩泽霖在他面前发抖的时候,他都想伸出手,拍拍他的肩膀,说一句“别紧张,慢慢来”。
就像他在纸条上写的那样。
但他没有。
因为他不确定——韩泽霖需要的是他的安慰,还是他给的安慰会让韩泽霖更紧张。
他不懂这些。
他只懂代码。
周奕辰。
周奕辰的喜欢是暴风骤雨式的。
他传纸条。他在课堂上喊“老师我要上厕所”。他在物理课上偷偷写Python代码。他在姚津昊面前说“你比物理有意思”。
他像一颗魔丸,燃烧自己,照亮别人——不对,照亮姚津昊。
周奕辰的燃烧不是为了照亮,而是为了被看见。
他想让姚津昊看见他。看见他的能量,他的热情,他的不羁。看见他是一个“不一样”的人——一个能和姚津昊“不一样”的灵魂产生共鸣的人。
姚津昊看到了。
他看到了周奕辰在草稿纸上写的那些笨拙的Python代码。print(“hello, yao jin hao”)。缩进错了,括号用了中文的,引号不匹配。运行不了。
但那个“hello, yao jin hao”让姚津昊的心跳漏了一拍。
hello, yao jin hao。
不是Hello, World。
是他。
周奕辰的代码里写的不是“世界”——是他。
姚津昊。
一个具体的、唯一的、被周奕辰选中的名字。
姚津昊把那张草稿纸从垃圾桶里捡了回来——周奕辰写完之后觉得太丢人了揉成一团扔了,但姚津昊看到了——他把它展平,叠好,放进了抽屉里。
和王恒轩的纸条放在一起。
第一百三十八张。
不是他写的——是别人写给他的。
薛晋安。
薛晋安的喜欢是沉默的、沉重的、带着伤痕的。
他不会说话。他只会做。
他会站在姚津昊的宿舍门外站一个小时,不敲门,不进去,只是站着。
他会在姚津昊被人嘲笑的时候去找那些人“聊了聊”,手指磨破了皮,但说“不疼”。
他会把姚津昊给的创可贴贴三天三夜,脏了、翘边了、失去粘性了,也不舍得撕掉。
他会把撕下来的旧创可贴放在校服的内袋里——靠近心脏的位置。
薛晋安的感情不需要语言。
他的拳头、他的沉默、他的创可贴——就是他的语言。
姚津昊懂那种语言。
因为他自己也用非语言的方式表达感情。他用代码,用纸条,用笑脸。薛晋安用拳头,用沉默,用创可贴。
他们都是在用自己的方式说“我在乎你”。
只是方式不同而已。
姚津昊给薛晋安贴创可贴的时候,感受到了他手的重量。那只手很大,很粗糙,布满了老茧和伤痕。但被姚津昊握着的时候,它一动不动,像一只被驯服的野兽。
薛晋安的手在姚津昊的手里,变小了。
不是物理上的变小——是一种心理上的。那个一米八三的、爱打架的、眉骨上有疤的男生,在姚津昊面前,变成了一只温顺的、需要被照顾的、想要被摸摸头的大型犬。
姚津昊给他贴了小兔子图案的创可贴。
因为他觉得薛晋安像一只兔子——不,薛晋安不像兔子。但他希望薛晋安能像兔子一样柔软。能放下那些拳头和伤痕,变成一个柔软的、可以被触碰的人。
他不知道薛晋安有没有变成那样。
但他知道薛晋安把旧创可贴收进了内袋里。
那个动作让他觉得——他的温柔,被接收到了。
被人接收到了。
这是他在三年前的台阶上扔出那些纸条时,最想得到的东西。
他的温柔被人接收到了。
不是被忽略,不是被嘲笑,不是被当作空气。
是被一个人小心翼翼地撕下来,折好,放在靠近心脏的位置。
姚津昊在那个瞬间,想哭。
但他忍住了。
因为他不知道在薛晋安面前哭是什么感觉。会不会让薛晋安觉得他太脆弱?会不会让薛晋安觉得自己做错了什么?会不会让薛晋安更用力地想要保护他,然后用更大的拳头去打更多的人?
他不想让薛晋安为他打架。
他只想让薛晋安为他留下那片创可贴。
就够了。
第六章:他谁都不选
那五个人的心意,姚津昊都知道。
但他谁都不会选。
不是因为他不喜欢他们——他喜欢。
他喜欢陈硕的骄傲和锋利,喜欢他在数学面前放下身段说“你的方法比我好”时的温柔。
他喜欢葛奕钦的热烈和笨拙,喜欢他带红烧肉时说的那些蠢话,喜欢他在篮球场上威风凛凛、在他面前却红着耳朵的反差。
他喜欢韩泽霖的安静和小心,喜欢他偷偷录音时的卑微,喜欢他在三角洲的世界里寻找存在感、但在现实世界里把姚津昊当作“平衡点”的执着。
他喜欢周奕辰的燃烧和勇敢,喜欢他传纸条时的直接,喜欢他在草稿纸上写下“hello, yao jin hao”时的笨拙和真诚。
他喜欢薛晋安的沉默和沉重,喜欢他站在门外不说话的样子,喜欢他把旧创可贴放在内袋里的那种近乎虔诚的珍惜。
他喜欢他们。
但他不会选他们。
因为他不知道怎么“选”。
在他的世界里,感情不是一道选择题。不是A、B、C、D、E五个选项,选出一个正确答案,写在答题卡上。
在他的世界里,感情是一段代码。一段需要调试的、充满了bug的、可能永远无法完美运行的代码。
他连自己都调试不好,怎么调试和别人之间的关系?
他连自己的感情都理不清楚,怎么理清楚五个人的感情?
他不知道自己对他们的喜欢是什么性质的喜欢。
是朋友的喜欢?是同学的喜欢?是“你对我好所以我也对你好”的喜欢?还是——那种他不敢命名的喜欢?
他不知道。
他只知道一件事——
王恒轩。
在所有这些人之前,有一个人先出现了。
那个人在他还不知道“喜欢”是什么的时候,就已经把他的纸条收集了起来。一张都没有丢。一百三十七张。
那个人在他还不知道“等待”是什么的时候,就已经等了他三年。三年零四十七天。
那个人在他还不知道“死亡”是什么的时候,就已经死了。带着一封没有寄出的信,带着一句没有说出口的“谢谢你”,带着一铁盒子的秘密,死在了那个没有红绿灯的路口。
王恒轩不是“第六个选项”。
王恒轩是所有选项的起点。
是那个让姚津昊开始写纸条的人。是那个让姚津昊觉得“我的温柔也许能被某个人接收”的人。是那个——在所有人都没有注意到他的时候,就已经把他当作整个世界的中心的人。
姚津昊不会选王恒轩。
不是因为不喜欢——是因为不能。
王恒轩是鬼魂。他们之间隔着生与死的距离。他的手会穿过王恒轩的手掌,像是穿过一片冰冷的雾。他的代码可以模拟王恒轩的轮廓,可以重现王恒轩的频率,可以让王恒轩“触碰”到这个世界——但那不是真正的触碰。
真正的触碰是有温度的。有质感的。有重量的。
他给不了王恒轩。
王恒轩也给不了他。
他们之间最好的结果,就是那个程序——那个能让王恒轩的轮廓出现在屏幕上、能让王恒轩的手覆在他手背上的程序。
隔着屏幕。隔着代码。隔着电磁频谱。
隔着生死。
所以他不选任何人。
他谁都不选。
因为他不能选王恒轩——那是命运不允许的。
因为他不敢选其他五个人——那是他自己不允许的。
他怕选了任何一个,就会伤害其他的四个。他怕选了之后,他给不了他们想要的回应。他怕选了之后,他会发现自己其实不够喜欢——或者喜欢得太多了,多到他自己都承受不住。
他怕。
他从小就是一个胆小的人。不敢在操场上跑快,不敢在课堂上发言,不敢在纸条上写自己的名字。他只敢在代码里表达自己——因为代码是安全的。代码不会拒绝他,不会嘲笑他,不会因为他胖就忽视他。
但人是会拒绝的。
人是会嘲笑的。
人是会忽视的。
他不敢把代码以外的自己交出去。
所以他选择了最安全的方式——谁都不选。
他继续写他的代码。继续吃他的奶糖。继续在最后一排靠窗的座位上,安安静静地做他自己。
而那五个人——不,那六个人——会继续在他的世界里存在。
陈硕会继续给他出数学题。
葛奕钦会继续给他带红烧肉。
韩泽霖会继续找他调键位。
周奕辰会继续学Python。
薛晋安会继续在门外站着。
王恒轩会继续在墙壁里等他。
而他——姚津昊——会继续写那个程序。那个能让王恒轩“触碰”到这个世界的程序。那个也许永远无法完美运行的程序。那个充满了bug的、需要不断调试的、可能永远无法交付的程序。
就像他的感情一样。
永远在调试中。永远在运行中。永远在——努力着。
这就够了。
不需要选择。不需要答案。不需要“在一起”或者“不在一起”。
只需要——他在写代码。他们在看着他。
只需要——他的温柔能被他们接收到。他们的温柔也能被他接收到。
只需要——六条线,汇聚到一个点上。
那个点,就是他自己。
姚津昊。
一个白白胖胖的、会编程的、谁都不选的初三学生。
尾声:Hello, World Again
那天晚上,姚津昊的程序终于运行了。
屏幕上出现了一个波形图——一个微弱的、但稳定的信号。信号的形状像一个轮廓——一个人的轮廓。
轮廓的手,缓缓地伸出来。
姚津昊把手放在了屏幕上。
隔着屏幕,隔着代码,隔着电磁频谱,隔着生与死的距离。
他感觉到了重量。
不是触感,不是温度。
是重量。
一种穿越了时间的、无法被任何代码量化的重量。
“hello, 王恒轩。”他说。
屏幕上的波形跳动了一下。
像是在回应。
姚津昊笑了。
他的眼睛眯成了两条缝,脸上的肉挤在一起,看起来软乎乎的,像一团刚蒸好的糯米糍。
他从口袋里掏出一颗大白兔奶糖,剥开糖纸,塞进嘴里。
奶糖的味道在舌尖上化开,甜甜的,软软的。
他看了一眼屏幕上的波形,又看了一眼窗外。
月亮升到了梧桐树顶。月光洒在教学楼后面的那条巷子里,洒在那面灰白色的墙壁上。
墙壁的裂缝里,一个小小的笑脸在月光下微微发光。
眼睛弯弯的,看起来很开心的那种。
姚津昊对着那个笑脸,说了一句话。
声音很轻,轻到只有他自己能听到。
“我也谢谢你,王恒轩。”
“谢谢你让我知道——我的温柔,是有意义的。”
他低下头,继续写代码。
屏幕上,那个波形安安静静地跳动着。
像是在陪着他。
像是在说——
慢慢来。
我在这里。
我一直在这里。
(全文完)
后记:
姚津昊谁都没有选。
但他也没有失去任何人。
陈硕继续坐在第一排,偶尔转头看最后一排的角落。他的数学笔记里夹着一张草稿纸——姚津昊给他讲解那道题时用的。纸已经皱了,边角卷起来了,但他没有扔掉。
葛奕钦继续带红烧肉。他妈妈问他“你是不是在养一只猪”,他说“比养猪重要”。他妈妈没有再问,只是每天多做一份,装在保温袋里,让他带去学校。
韩泽霖继续打三角洲。他的段位从钻石升到了大师。他说不清是DPI参数的功劳还是别的什么——但他每次开镜的时候,都会想起姚津昊说的那句话:“让你的手和屏幕之间没有延迟。”他觉得他的手和姚津昊之间也没有延迟。隔着整个教室,隔着几排座位,隔着屏幕和代码——但他们的频率是一样的。
周奕辰继续学Python。他已经能写一些像样的程序了。他写了一个小游戏——控制一个小人接住从天上掉下来的大白兔奶糖。每接住一颗,屏幕上会显示一行字:“你今天开心吗?”他从来没有把这个游戏给姚津昊看过。他只是每天自己玩几局,然后对着那行字傻笑。
薛晋安继续站在门外。他的手指上贴着一片新的创可贴——今天是小熊图案的,明天可能是小兔子,后天可能是小猫。他每天换一片,但旧的那片——小熊图案的、已经变成一团脏兮兮的布料的创可贴——一直在他校服的内袋里,靠近心脏的位置。
王恒轩继续在墙壁里。但他的世界变了。以前他只能听到模糊的声音,看到模糊的光影。现在——因为姚津昊的程序——他能看到更多了。他能看到姚津昊坐在台阶上写代码的样子,能看到他吃奶糖时腮帮子鼓起来的样子,能看到他笑的时候眼睛眯成两条缝的样子。
他甚至能感受到一点点的温度。
不是真正的温度——是程序模拟出来的。一种通过电磁频谱转化而来的、微弱的、类似于“温暖”的感觉。
但够了。
足够了。
至于姚津昊——
他坐在最后一排靠窗的位置上,膝盖上放着那台贴满贴纸的笔记本电脑,十根白胖的手指在键盘上飞快地跳动。
他写了一段新的代码。
不是给王恒轩的。不是给任何人的。
是给他自己的。
注释里写着:
“// 这个世界上有很多种喜欢的方式。” “// 有些人在纸条上写代码,有些人在代码里写纸条。” “// 有些人用红烧肉表达,有些人用创可贴。” “// 有些人把喜欢藏在数学试卷里,有些人藏在DPI参数里。” “// 有些人把喜欢变成一行‘hello, yao jin hao’,有些人把喜欢变成沉默的站立。” “// 而有些人——把喜欢变成三年的等待,和一封没有寄出的信。” “// 我不知道怎么回应这些喜欢。” “// 我不知道什么是‘对的’回应。” “// 我只知道——” “// 他们的喜欢,让我觉得,活着是一件值得的事。” “// 就像我的一百三十七张纸条,让王恒轩觉得,活着是一件值得的事。” “// 所以——” “// 谢谢你们。” “// 谢谢你们让我知道,我的代码不是写给空气的。” “// 谢谢你们让我知道,我的温柔不是多余的。” “// 谢谢你们让我知道——” “// 即使我谁都不选,我也不是一个人。”
他按下回车。
代码运行了。
屏幕上出现了一行字:
Hello, World.
姚津昊看着那行字,笑了。
然后他从口袋里掏出一颗大白兔奶糖,剥开糖纸,塞进嘴里。
奶糖很甜。
窗外面的阳光很好。
梧桐树的叶子在风里沙沙地响。
他觉得今天比昨天好一点。
明天——也许会更好一点。
(全文完)