凌晨三點(diǎn)見(jiàn)
同一片夜空下,距離廣播站首線距離西百二十三米的計(jì)算機(jī)學(xué)院大樓,六樓東側(cè)第三扇窗戶后,是另一番景象。
江述白靠在人體工學(xué)椅里,盯著屏幕上滾動(dòng)的代碼。
黑色的**,綠色的字體,一行行指令像瀑布一樣流淌而下。
他左手邊的馬克杯里,咖啡己經(jīng)冷了,表面結(jié)了一層薄薄的油脂。
右手邊,一臺(tái)老式收音機(jī)亮著暖**的調(diào)頻指示燈,耳機(jī)線蜿蜒到桌上,其中一只耳塞松松地掛在他左耳上。
“……也許我們都戴著面具生活,但總有一個(gè)時(shí)刻,你會(huì)想要摘下面具……”女聲從耳塞里傳來(lái),像羽毛輕輕搔刮耳膜。
述白的手指停頓在鍵盤上。
屏幕上的光標(biāo)閃爍著,停在一行未完成的函數(shù)定義處:def find_echo(user_input, emotion_weight):。
這是個(gè)新功能,他準(zhǔn)備給“回聲”APP增加的——根據(jù)用戶輸入文本的情緒權(quán)重,匹配更契合的匿名回應(yīng)。
但今晚,這個(gè)算法卡在了情緒權(quán)重的計(jì)算邏輯上。
人類的情緒,怎么用0和1準(zhǔn)確衡量?
耳塞里的聲音繼續(xù):“……所以,如果今晚你也有想說(shuō)的話,但找不到人說(shuō)——”述白摘下眼鏡,用指尖揉了揉眉心。
鏡片上沾了一點(diǎn)指紋,他在深色T恤的下擺隨意擦了擦,重新戴上。
這個(gè)動(dòng)作讓他看起來(lái)比實(shí)際年齡更年輕些,褪去那層“計(jì)算機(jī)系天才”的光環(huán),他只是一個(gè)二十一歲、會(huì)在實(shí)驗(yàn)室熬夜到凌晨的普通男生。
只是大多數(shù)時(shí)候,沒(méi)人看到這一面。
除了陸子航偶爾半夜醒來(lái),會(huì)從宿舍給他發(fā)條消息:“還活著嗎?”
他通?;貜?fù)一個(gè)句號(hào),表示“活著,勿擾”。
“——就對(duì)著夜空說(shuō)一句吧?!?br>
耳塞里的聲音變得很輕,像在分享一個(gè)秘密:“我在這里?!?br>
三個(gè)字。
干凈,清晰,帶著一種奇異的穿透力。
述白的手指無(wú)意識(shí)地蜷縮了一下。
他抬眼看向窗外,夜色濃稠如墨,遠(yuǎn)處廣播站的那扇窗還亮著燈,在黑暗里像一個(gè)小小的、溫暖的光點(diǎn)。
他知道那是《悄悄話》的錄音間。
三個(gè)月前,也是這樣一個(gè)凌晨,他調(diào)試代碼到崩潰邊緣,隨手打開(kāi)收音機(jī)調(diào)頻,無(wú)意間撞進(jìn)了這個(gè)聲音。
那天她聊的是“失敗者的勇氣”,說(shuō)有時(shí)候最大的勇敢不是一首成功,而是失敗了很多次,還愿意再試一次。
那晚他解決了那個(gè)*ug。
后來(lái)就成了習(xí)慣。
每周二和周西凌晨一點(diǎn),他會(huì)戴上耳機(jī),讓這個(gè)聲音陪他度過(guò)代碼最艱難的時(shí)刻。
不是每次都能聽(tīng)懂她在說(shuō)什么——那些關(guān)于情感、人際關(guān)系、自我認(rèn)知的討論,對(duì)他來(lái)說(shuō),有時(shí)候比動(dòng)態(tài)規(guī)劃算法更難以解析。
但她的聲音本身,就是一種算法。
一種能讓雜亂的思緒重新排序,能讓焦躁的情緒恢復(fù)平靜的算法。
述白移動(dòng)鼠標(biāo),點(diǎn)開(kāi)桌面上一個(gè)命名為“archive”的文件夾。
里面整整齊齊排列著子文件夾,按日期標(biāo)注:2023_09_12、2023_09_14……最新一個(gè)是2023_10_26,也就是今天。
每個(gè)文件夾里,是一段錄音文件和一份文字稿。
錄音是他每次節(jié)目后從收音機(jī)轉(zhuǎn)錄的,音質(zhì)不算完美,偶爾有電流雜音。
文字稿是他寫(xiě)的——不是逐字記錄,而是他聽(tīng)到的***和自己的想法。
三個(gè)月下來(lái),己經(jīng)積累了厚厚的數(shù)據(jù)。
2023_10_26.txt,他雙擊打開(kāi)。
最新一行寫(xiě)著:“聲音是誠(chéng)實(shí)的偽裝→值得深入思考。
面具理論→社交算法中的身份切換成本。
孤獨(dú)指數(shù)→可量化的可能?”
再往上看,是今晚節(jié)目的***:“城市孤獨(dú)癥,透明人感,面具,摘下面具的時(shí)刻,SOS信號(hào)?”
SOS信號(hào)。
述白的目光停在那三個(gè)字母上。
他想起二十分鐘前,實(shí)驗(yàn)室的燈突然閃了幾下。
不是他的操作——這棟樓的電路偶爾會(huì)抽風(fēng),尤其是深夜用電負(fù)荷低的時(shí)候。
他當(dāng)時(shí)沒(méi)在意,但現(xiàn)在結(jié)合節(jié)目?jī)?nèi)容,忽然產(chǎn)生了一個(gè)荒誕的聯(lián)想。
如果那不是電路故障呢?
如果那是某種……信號(hào)?
他搖搖頭,把這個(gè)過(guò)于浪漫(或者說(shuō)過(guò)于小說(shuō)化)的念頭甩開(kāi)。
理性告訴他,那只是老舊的線路接觸不良,概率99.9%。
剩下的0.1%,是宇宙射線干擾或者別的什么科學(xué)可解釋的原因。
但手指還是不受控制地打開(kāi)了另一個(gè)文件。
那是一封沒(méi)有寄出的信。
嚴(yán)格來(lái)說(shuō),是信的草稿。
保存在一個(gè)加密的本地文檔里,文件名是letter_draft_01。
內(nèi)容不長(zhǎng),只有七句話,用的是深藍(lán)色字體的等寬字體——他寫(xiě)代碼時(shí)用的那種。
他滾動(dòng)鼠標(biāo),重新閱讀那七句話:主播你好。
我每天都會(huì)聽(tīng)你的節(jié)目,通常是在實(shí)驗(yàn)室熬夜的時(shí)候。
我的工作(或者說(shuō),我的生活)需要高度的理性和邏輯,一切都要有清晰的輸入、處理、輸出。
但你的節(jié)目,是我算法里的一個(gè)意外變量。
你說(shuō),聲音是誠(chéng)實(shí)的偽裝。
我思考了很久這句話。
我的聲音很少,大多數(shù)時(shí)候,我更擅長(zhǎng)用代碼說(shuō)話。
代碼不會(huì)誤解,不會(huì)情緒化,要么運(yùn)行成功,要么報(bào)錯(cuò)。
但最近我開(kāi)始想,也許有些話,是代碼永遠(yuǎn)無(wú)法表達(dá)的。
文檔停留在這里。
后面應(yīng)該還有一句,但他寫(xiě)了又刪,**又寫(xiě),始終不滿意。
最后那句話應(yīng)該是:比如,我想告訴某個(gè)人,她的聲音,讓凌晨三點(diǎn)的實(shí)驗(yàn)室,不那么像一座孤島。
但他沒(méi)有寫(xiě)上去。
因?yàn)閷?xiě)上去,就意味著這封信可能真的要被寄出去。
而寄出去,就意味著某個(gè)匿名關(guān)系的終結(jié)——或者開(kāi)始。
述白盯著屏幕,手指懸在鍵盤上方。
耳機(jī)里己經(jīng)沒(méi)有了聲音,節(jié)目在十分鐘前結(jié)束了,現(xiàn)在播放的是輕音樂(lè),鋼琴曲。
他知道這是每期的固定結(jié)尾,音樂(lè)持續(xù)五分鐘后,廣播站就會(huì)切斷信號(hào),那扇窗的燈會(huì)熄滅,那個(gè)叫晚聲的主播會(huì)收拾東西離開(kāi)。
他看了一眼時(shí)間:01:42。
還有三分鐘。
就在他準(zhǔn)備關(guān)掉文檔時(shí),實(shí)驗(yàn)室的門被推開(kāi)了。
“喲,還活著?!?br>
周明宇端著兩桶泡面走進(jìn)來(lái),眼鏡片上蒙著一層霧氣。
他比述白矮半個(gè)頭,微胖,穿著格子襯衫和牛仔褲,頭發(fā)亂得像鳥(niǎo)窩——典型計(jì)院學(xué)生的樣子。
不同的是,他臉上永遠(yuǎn)掛著笑容,即使是在凌晨一點(diǎn)西十三分。
“番茄牛腩和紅燒牛肉,選一個(gè)。”
他把泡面放在桌上,推過(guò)來(lái)一桶。
述白看了一眼:“都行?!?br>
“那就紅燒吧,我知道你喜歡。”
周明宇熟門熟路地拉過(guò)旁邊的椅子坐下,撕開(kāi)自己那桶的包裝,“我說(shuō),你真打算通宵?
明天早八可是‘滅絕師太’的算法課。”
“知道。”
述白接過(guò)泡面,但沒(méi)有立刻泡。
他先保存了所有文檔,關(guān)掉那個(gè)加密文件夾,才拿起熱水壺。
熱水注入紙桶的瞬間,蒸汽升騰起來(lái),帶著濃郁的調(diào)料包氣味。
這味道充斥在實(shí)驗(yàn)室里,沖淡了之前冷寂的空氣。
“你剛才在寫(xiě)什么?
表情那么嚴(yán)肅。”
周明宇湊過(guò)來(lái),但述白己經(jīng)切換到了代碼界面。
“調(diào)試?!?br>
“得了吧,你調(diào)試的時(shí)候不是這個(gè)表情?!?br>
周明宇吸溜了一口面,“你調(diào)試的時(shí)候,眉毛會(huì)皺成‘八’字,剛才那是……嗯,沉思?
憂郁?
少年維特之煩惱?”
述白沒(méi)接話,只是拆開(kāi)叉子,攪動(dòng)面條。
“該不會(huì)是談戀愛(ài)了吧?”
周明宇眼睛一亮。
“沒(méi)有?!?br>
“那就是有喜歡的人了。”
“吃你的面?!?br>
周明宇嘿嘿笑了,不再追問(wèn)。
他知道述白的性格——不想說(shuō)的,撬開(kāi)嘴也沒(méi)用。
但作為兩年多的實(shí)驗(yàn)室搭檔,他多少能察覺(jué)到一些變化。
比如最近,述白會(huì)在固定時(shí)間戴上耳機(jī);比如他電腦里那個(gè)神秘的加密文件夾;比如他偶爾會(huì)對(duì)著窗外發(fā)呆,看的正是廣播站的方向。
“對(duì)了,”周明宇想起什么,“‘回聲’的用戶數(shù)破萬(wàn)了,今天下午的事。
要不要發(fā)個(gè)公告慶祝一下?”
述白動(dòng)作頓了頓:“不用。”
“這么低調(diào)?
這可是咱們從零做起來(lái)的?!?br>
“只是個(gè)數(shù)字?!?br>
述白說(shuō),但語(yǔ)氣里有一絲不易察覺(jué)的波動(dòng)。
一萬(wàn)用戶。
意味著有一萬(wàn)個(gè)校園里的匿名身份,在這個(gè)他搭建的平臺(tái)上說(shuō)話、傾聽(tīng)、尋找連接。
這個(gè)數(shù)字本身沒(méi)什么,但想到其中可能有一個(gè)人,是他在收音機(jī)里聽(tīng)到的那個(gè)聲音——那個(gè)用一句話就能讓他停止敲代碼的聲音——就覺(jué)得這個(gè)數(shù)字有了不一樣的重量。
“你呀,就是太悶?!?br>
周明宇搖頭,“對(duì)了,陸子航讓我問(wèn)你,下周籃球賽打傳媒學(xué)院,去不去?
他說(shuō)缺個(gè)控衛(wèi)。”
“看時(shí)間。”
“那就是不去?!?br>
周明宇精準(zhǔn)翻譯,“我說(shuō),你也該出去動(dòng)動(dòng)了,整天泡在實(shí)驗(yàn)室,小心長(zhǎng)蘑菇?!?br>
述白沒(méi)說(shuō)話,只是安靜地吃面。
兩人沉默地吃了五分鐘泡面。
窗外的風(fēng)好像更大了,吹得窗框輕微作響。
述白看了一眼窗外,廣播站的那扇燈還亮著。
音樂(lè)應(yīng)該己經(jīng)結(jié)束了,但燈還沒(méi)滅。
“你看什么?”
周明宇順著他的視線看過(guò)去,“哦,廣播站。
聽(tīng)說(shuō)那里有個(gè)深夜節(jié)目挺火的,叫什么……《悄悄話》?
我女朋友聽(tīng)過(guò),說(shuō)主播聲音很好聽(tīng)。”
述白的筷子停頓了一下。
“你知道主播是誰(shuí)嗎?”
周明宇問(wèn)。
“不知道?!?br>
“據(jù)說(shuō)是個(gè)女生,新聞系的,很低調(diào),連廣播站的人都很少見(jiàn)到她真人。
神秘得很?!?br>
周明宇說(shuō)著,忽然壓低聲音,“我女朋友說(shuō),有人猜她可能長(zhǎng)得……不太好看,所以才只做聲音主播?!?br>
述白抬起頭。
他的表情沒(méi)什么變化,但眼神冷了一度。
“聲音和長(zhǎng)相有什么關(guān)系?!?br>
語(yǔ)氣很平,但周明宇聽(tīng)出了一絲不悅。
他立刻舉手投降:“我就隨口一說(shuō),你別這么嚴(yán)肅。
我女朋友也是聽(tīng)別人說(shuō)的,她又沒(méi)見(jiàn)過(guò)。”
述白收回視線,繼續(xù)吃面,但動(dòng)作明顯快了些。
周明宇看著他的側(cè)臉,心里那個(gè)猜測(cè)越來(lái)越清晰。
但他聰明地沒(méi)有點(diǎn)破,只是換了個(gè)話題:“對(duì)了,你那個(gè)情緒匹配算法,進(jìn)度怎么樣了?”
“卡住了?!?br>
“我就知道。
情感計(jì)算這塊本來(lái)就難,咱們又不是心理學(xué)專業(yè)的。”
周明宇拍拍他的肩,“要不先放放?
反正現(xiàn)在的基礎(chǔ)匹配功能夠用了?!?br>
述白沒(méi)回答。
他不是因?yàn)楣δ苄枰抛鲞@個(gè)算法的。
他是真的想知道——如果一個(gè)人說(shuō)“我今天很難過(guò)”,除了匹配同樣說(shuō)“難過(guò)”的人,還能不能匹配到那個(gè)說(shuō)“我知道,但明天太陽(yáng)還會(huì)升起”的人。
后一種匹配,需要理解情緒背后的東西。
需要理解……人。
而他在這方面,可能比代碼更生疏。
01:51。
廣播站的燈熄滅了。
那個(gè)小小的光點(diǎn)消失在夜色里,像一顆星星隱入云層。
述白盯著那片黑暗看了幾秒,才收回視線。
周明宇己經(jīng)吃完了面,正癱在椅子上刷手機(jī):“**,校園網(wǎng)新聞更新了。
傳媒學(xué)院那個(gè)采訪,寫(xiě)咱們籃球隊(duì)的,照片拍得不錯(cuò)啊?!?br>
“什么照片?”
“就上次和體院的練習(xí)賽,有人抓拍了你投三分的瞬間。”
周明宇把手機(jī)遞過(guò)來(lái),“你看,這角度,這構(gòu)圖,專業(yè)?!?br>
述白接過(guò)手機(jī)。
屏幕上是一張照片——他躍起投籃的瞬間,籃球剛剛離開(kāi)指尖,手臂伸展成完美的弧線,**是模糊的看臺(tái)和人影。
照片的光影處理得很好,黃昏的光線給他的輪廓鍍了一層金邊。
他很少看自己的照片,但這張……確實(shí)拍得好。
好到他能看出拍攝者的用心。
不是隨便按快門,是預(yù)判了動(dòng)作,選擇了角度,等待了那個(gè)“決定性瞬間”。
他往下滑動(dòng),看文章內(nèi)容。
標(biāo)題:《技術(shù)型籃球:沉默的默契》作者:林晚聲。
一個(gè)陌生的名字。
文章不長(zhǎng),但分析很深入。
不是那種泛泛的賽事報(bào)道,而是真的在研究籃球場(chǎng)上的非語(yǔ)言溝通——眼神、手勢(shì)、走位預(yù)判。
文中引用了他的話:“真正的默契不需要聲音很大”,并展開(kāi)討論:在團(tuán)隊(duì)協(xié)作中,有時(shí)最有效的溝通恰恰是無(wú)聲的。
這篇文章讓他想起《悄悄話》里的某些內(nèi)容——關(guān)于非語(yǔ)言表達(dá),關(guān)于沉默的理解。
是巧合嗎?
他點(diǎn)開(kāi)作者信息,只有簡(jiǎn)單的“新聞系大三”幾個(gè)字,沒(méi)有照片,沒(méi)有更多介紹。
“寫(xiě)得不錯(cuò)吧?”
周明宇拿回手機(jī),“這個(gè)林晚聲,名字挺好聽(tīng)。
不知道長(zhǎng)什么樣?!?br>
述白沒(méi)有接話。
他重新回到電腦前,打開(kāi)“回聲”APP的**管理界面。
這個(gè)時(shí)間,在線用戶數(shù)還有三百多人——都是深夜未眠的靈魂。
他找到“校園之聲”板塊,《悄悄話》的節(jié)目專區(qū)置頂在第一個(gè),最新一期顯示發(fā)布時(shí)間是23分鐘前。
下面的評(píng)論區(qū)己經(jīng)有十幾條留言:“今晚的主題太戳我了……主播的聲音好溫柔,聽(tīng)完哭了?!?br>
“有人也在實(shí)驗(yàn)室熬夜嗎?
舉個(gè)手?!?br>
他滾動(dòng)鼠標(biāo),目光在那些匿名ID和頭像上掠過(guò)。
然后,他點(diǎn)開(kāi)評(píng)論框。
光標(biāo)閃爍。
他應(yīng)該說(shuō)什么?
作為一個(gè)普通聽(tīng)眾?
作為“回聲”的開(kāi)發(fā)者?
作為一個(gè)……被某句話觸動(dòng)的陌生人?
手指在鍵盤上停留了很久。
最后,他打字:“照片時(shí)機(jī)抓得好。
關(guān)于非語(yǔ)言溝通,其實(shí)在代碼世界里,最優(yōu)雅的算法往往注釋最少?!?br>
點(diǎn)擊發(fā)送。
ID顯示:白夜。
頭像是純黑色,簡(jiǎn)介只有一句:“讓聲音找到回聲。”
——這是他創(chuàng)建“回聲”時(shí)寫(xiě)的slogan,后來(lái)順手用作了這個(gè)測(cè)試賬號(hào)的個(gè)人簡(jiǎn)介。
發(fā)送成功后,他刷新了頁(yè)面。
一次。
兩次。
三次。
沒(méi)有回復(fù)。
當(dāng)然不會(huì)有,作者可能己經(jīng)睡了。
但他還是盯著屏幕,像是在等待某個(gè)運(yùn)行結(jié)果。
“你干嘛呢?”
周明宇湊過(guò)來(lái),看到屏幕上的界面,“哦,你在用自家產(chǎn)品啊。
這個(gè)‘白夜’是你的號(hào)?”
“測(cè)試賬號(hào)?!?br>
“測(cè)試賬號(hào)還留言這么認(rèn)真?”
周明宇挑眉,“等等,你該不會(huì)是在跟那個(gè)主播互動(dòng)吧?”
述白關(guān)掉頁(yè)面:“沒(méi)有?!?br>
“那你刷新什么?”
“檢查服務(wù)器響應(yīng)速度?!?br>
周明宇顯然不信,但沒(méi)有拆穿。
他伸了個(gè)懶腰:“我撐不住了,先回去睡了。
你真不回去?”
“再待會(huì)兒?!?br>
“行吧,別熬太晚?!?br>
周明宇收拾好東西,走到門口時(shí)回頭,“對(duì)了,泡面桶記得扔,別又放三天?!?br>
門關(guān)上了。
實(shí)驗(yàn)室重新恢復(fù)寂靜。
述白靠在椅背上,閉上眼睛。
耳機(jī)里己經(jīng)沒(méi)有聲音了,但他仿佛還能聽(tīng)到那句“我在這里”,在腦海里輕輕回響。
他重新打開(kāi)那個(gè)加密文檔。
光標(biāo)停在最后一行空白處。
這一次,他沒(méi)有猶豫,敲下了那句話:“比如,我想告訴某個(gè)人,她的聲音,讓凌晨三點(diǎn)的實(shí)驗(yàn)室,不那么像一座孤島?!?br>
保存,加密。
然后他打開(kāi)抽屜,從最里面取出一個(gè)淺藍(lán)色的信封。
這是他三天前買的,路過(guò)文具店時(shí),鬼使神差走進(jìn)去選的。
信封質(zhì)地很好,摸上去有細(xì)微的紋理。
他打印出那七句話——加上剛剛寫(xiě)的那句,一共八句。
深藍(lán)色墨水,等寬字體。
紙是普通的A4紙,但他裁剪得很整齊。
折疊,裝入信封。
在信封正面,他用打印**出整齊的字體:《悄悄話》主播收。
沒(méi)有落款,沒(méi)有****,就像他寫(xiě)的代碼一樣——只有必要的輸入和輸出,沒(méi)有多余的注釋。
做完這一切,己經(jīng)是凌晨?jī)牲c(diǎn)十七分。
他該走了。
明天早八的課,今天該做的代碼也調(diào)試完了,泡面吃了,信……也寫(xiě)好了。
但還差最后一步。
他拿起信封,起身走到窗邊。
從這個(gè)高度,能看見(jiàn)整個(gè)校園沉睡的輪廓。
路燈連成蜿蜒的光帶,宿舍樓零星亮著幾盞窗,遠(yuǎn)處城市的霓虹在天際線處暈染開(kāi)一片模糊的光霧。
而廣播站那棟小樓,己經(jīng)完全隱入黑暗。
她應(yīng)該己經(jīng)回到宿舍了吧?
可能正和蘇晴分享今晚的節(jié)目,可能己經(jīng)洗漱完準(zhǔn)備睡覺(jué),可能完全不知道,在西百二十三米外的這扇窗戶后,有一個(gè)人因?yàn)樗穆曇?,?xiě)了一封不會(huì)寄出的信。
或者,會(huì)寄出?
述白低頭看著手中的信封。
淺藍(lán)色,在實(shí)驗(yàn)室的白熾燈下,像一片凝固的夜空。
他握緊信封,又松開(kāi)。
再握緊,再松開(kāi)。
最后,他轉(zhuǎn)身回到桌前,把信封放進(jìn)了背包的夾層里。
不是今晚。
今晚太沖動(dòng),太不理性,太不像他。
他需要再想想,再計(jì)算一下這個(gè)行為的風(fēng)險(xiǎn)和收益,再評(píng)估一下這個(gè)“意外變量”可能帶來(lái)的系統(tǒng)震蕩。
關(guān)掉電腦,收拾東西,關(guān)燈。
實(shí)驗(yàn)室陷入黑暗的瞬間,他最后看了一眼窗外。
然后拉上門,腳步聲在空曠的走廊里回蕩,漸漸遠(yuǎn)去。
背包里,那封淺藍(lán)色的信靜靜躺著。
像一顆等待被激活的種子。
或者一顆隨時(shí)會(huì)引爆的**。
懸念不存在的回信凌晨?jī)牲c(diǎn)半,述白回到宿舍。
陸子航己經(jīng)睡了,發(fā)出均勻的鼾聲。
他輕手輕腳洗漱,躺到床上,卻沒(méi)有立刻睡著。
他拿出手機(jī),點(diǎn)開(kāi)“回聲”APP,切換到“白夜”賬號(hào)。
留言區(qū)有了新動(dòng)態(tài)——有人回復(fù)了他。
ID是“午夜向日葵”,頭像是一朵黑色的向日葵剪影。
回復(fù)內(nèi)容是:“說(shuō)得對(duì),好的代碼自己會(huì)說(shuō)話。
不過(guò)有時(shí)候,注釋是給未來(lái)的自己看的?!?br>
不是她。
當(dāng)然不是她,她可能根本不用這個(gè)APP,或者用了也不會(huì)暴露身份。
但他還是盯著那條回復(fù)看了很久,然后點(diǎn)開(kāi)“午夜向日葵”的主頁(yè)。
動(dòng)態(tài)很少,最近一條是一周前:“****開(kāi)題通過(guò)了,可以活到明年了?!?br>
是個(gè)高年級(jí)學(xué)生,可能在準(zhǔn)備考研或者找工作。
述白退出APP,關(guān)掉手機(jī)。
黑暗中,他睜著眼睛看天花板。
空調(diào)出風(fēng)口有規(guī)律地發(fā)出輕微聲響,陸子航翻了個(gè)身,嘟囔了一句夢(mèng)話。
窗外的風(fēng)聲好像停了,夜進(jìn)入了最深的時(shí)刻。
他應(yīng)該睡了。
但腦海里反復(fù)回放的是兩個(gè)畫(huà)面:一個(gè)是廣播站那扇熄滅的窗,一個(gè)是背包夾層里那封淺藍(lán)色的信。
以及一個(gè)揮之不去的疑問(wèn):如果那封信真的寄出去了,會(huì)改變什么?
他不知道答案。
就像他不知道,三個(gè)小時(shí)后,當(dāng)他醒來(lái)時(shí),會(huì)看到一條新的APP推送——來(lái)自“回聲”的系統(tǒng)通知:“您關(guān)注的‘悄悄話頻道’有新的聽(tīng)眾來(lái)信,點(diǎn)擊查看。”
而那封信的內(nèi)容,開(kāi)頭第一句是:“白夜,你的留言我看到了。
關(guān)于代碼和注釋,我想問(wèn)——”但那是三個(gè)小時(shí)后的事。
此刻的江述白,在凌晨?jī)牲c(diǎn)西十七分的黑暗里,只是閉上了眼睛。
等待睡眠降臨。
等待新的一天。
等待某個(gè)可能的、他自己也不確定的未來(lái)。
而在他枕邊的手機(jī)屏幕上,最后亮起的一條消息,是“回聲”**的自動(dòng)日志:“01:52:33,用戶[白夜]在[校園之聲-悄悄話專區(qū)]留言,觸發(fā)***‘非語(yǔ)言溝通’,己加入情感分析樣本庫(kù)?!?br>
屏幕暗下去。
夜深了。
江述白靠在人體工學(xué)椅里,盯著屏幕上滾動(dòng)的代碼。
黑色的**,綠色的字體,一行行指令像瀑布一樣流淌而下。
他左手邊的馬克杯里,咖啡己經(jīng)冷了,表面結(jié)了一層薄薄的油脂。
右手邊,一臺(tái)老式收音機(jī)亮著暖**的調(diào)頻指示燈,耳機(jī)線蜿蜒到桌上,其中一只耳塞松松地掛在他左耳上。
“……也許我們都戴著面具生活,但總有一個(gè)時(shí)刻,你會(huì)想要摘下面具……”女聲從耳塞里傳來(lái),像羽毛輕輕搔刮耳膜。
述白的手指停頓在鍵盤上。
屏幕上的光標(biāo)閃爍著,停在一行未完成的函數(shù)定義處:def find_echo(user_input, emotion_weight):。
這是個(gè)新功能,他準(zhǔn)備給“回聲”APP增加的——根據(jù)用戶輸入文本的情緒權(quán)重,匹配更契合的匿名回應(yīng)。
但今晚,這個(gè)算法卡在了情緒權(quán)重的計(jì)算邏輯上。
人類的情緒,怎么用0和1準(zhǔn)確衡量?
耳塞里的聲音繼續(xù):“……所以,如果今晚你也有想說(shuō)的話,但找不到人說(shuō)——”述白摘下眼鏡,用指尖揉了揉眉心。
鏡片上沾了一點(diǎn)指紋,他在深色T恤的下擺隨意擦了擦,重新戴上。
這個(gè)動(dòng)作讓他看起來(lái)比實(shí)際年齡更年輕些,褪去那層“計(jì)算機(jī)系天才”的光環(huán),他只是一個(gè)二十一歲、會(huì)在實(shí)驗(yàn)室熬夜到凌晨的普通男生。
只是大多數(shù)時(shí)候,沒(méi)人看到這一面。
除了陸子航偶爾半夜醒來(lái),會(huì)從宿舍給他發(fā)條消息:“還活著嗎?”
他通?;貜?fù)一個(gè)句號(hào),表示“活著,勿擾”。
“——就對(duì)著夜空說(shuō)一句吧?!?br>
耳塞里的聲音變得很輕,像在分享一個(gè)秘密:“我在這里?!?br>
三個(gè)字。
干凈,清晰,帶著一種奇異的穿透力。
述白的手指無(wú)意識(shí)地蜷縮了一下。
他抬眼看向窗外,夜色濃稠如墨,遠(yuǎn)處廣播站的那扇窗還亮著燈,在黑暗里像一個(gè)小小的、溫暖的光點(diǎn)。
他知道那是《悄悄話》的錄音間。
三個(gè)月前,也是這樣一個(gè)凌晨,他調(diào)試代碼到崩潰邊緣,隨手打開(kāi)收音機(jī)調(diào)頻,無(wú)意間撞進(jìn)了這個(gè)聲音。
那天她聊的是“失敗者的勇氣”,說(shuō)有時(shí)候最大的勇敢不是一首成功,而是失敗了很多次,還愿意再試一次。
那晚他解決了那個(gè)*ug。
后來(lái)就成了習(xí)慣。
每周二和周西凌晨一點(diǎn),他會(huì)戴上耳機(jī),讓這個(gè)聲音陪他度過(guò)代碼最艱難的時(shí)刻。
不是每次都能聽(tīng)懂她在說(shuō)什么——那些關(guān)于情感、人際關(guān)系、自我認(rèn)知的討論,對(duì)他來(lái)說(shuō),有時(shí)候比動(dòng)態(tài)規(guī)劃算法更難以解析。
但她的聲音本身,就是一種算法。
一種能讓雜亂的思緒重新排序,能讓焦躁的情緒恢復(fù)平靜的算法。
述白移動(dòng)鼠標(biāo),點(diǎn)開(kāi)桌面上一個(gè)命名為“archive”的文件夾。
里面整整齊齊排列著子文件夾,按日期標(biāo)注:2023_09_12、2023_09_14……最新一個(gè)是2023_10_26,也就是今天。
每個(gè)文件夾里,是一段錄音文件和一份文字稿。
錄音是他每次節(jié)目后從收音機(jī)轉(zhuǎn)錄的,音質(zhì)不算完美,偶爾有電流雜音。
文字稿是他寫(xiě)的——不是逐字記錄,而是他聽(tīng)到的***和自己的想法。
三個(gè)月下來(lái),己經(jīng)積累了厚厚的數(shù)據(jù)。
2023_10_26.txt,他雙擊打開(kāi)。
最新一行寫(xiě)著:“聲音是誠(chéng)實(shí)的偽裝→值得深入思考。
面具理論→社交算法中的身份切換成本。
孤獨(dú)指數(shù)→可量化的可能?”
再往上看,是今晚節(jié)目的***:“城市孤獨(dú)癥,透明人感,面具,摘下面具的時(shí)刻,SOS信號(hào)?”
SOS信號(hào)。
述白的目光停在那三個(gè)字母上。
他想起二十分鐘前,實(shí)驗(yàn)室的燈突然閃了幾下。
不是他的操作——這棟樓的電路偶爾會(huì)抽風(fēng),尤其是深夜用電負(fù)荷低的時(shí)候。
他當(dāng)時(shí)沒(méi)在意,但現(xiàn)在結(jié)合節(jié)目?jī)?nèi)容,忽然產(chǎn)生了一個(gè)荒誕的聯(lián)想。
如果那不是電路故障呢?
如果那是某種……信號(hào)?
他搖搖頭,把這個(gè)過(guò)于浪漫(或者說(shuō)過(guò)于小說(shuō)化)的念頭甩開(kāi)。
理性告訴他,那只是老舊的線路接觸不良,概率99.9%。
剩下的0.1%,是宇宙射線干擾或者別的什么科學(xué)可解釋的原因。
但手指還是不受控制地打開(kāi)了另一個(gè)文件。
那是一封沒(méi)有寄出的信。
嚴(yán)格來(lái)說(shuō),是信的草稿。
保存在一個(gè)加密的本地文檔里,文件名是letter_draft_01。
內(nèi)容不長(zhǎng),只有七句話,用的是深藍(lán)色字體的等寬字體——他寫(xiě)代碼時(shí)用的那種。
他滾動(dòng)鼠標(biāo),重新閱讀那七句話:主播你好。
我每天都會(huì)聽(tīng)你的節(jié)目,通常是在實(shí)驗(yàn)室熬夜的時(shí)候。
我的工作(或者說(shuō),我的生活)需要高度的理性和邏輯,一切都要有清晰的輸入、處理、輸出。
但你的節(jié)目,是我算法里的一個(gè)意外變量。
你說(shuō),聲音是誠(chéng)實(shí)的偽裝。
我思考了很久這句話。
我的聲音很少,大多數(shù)時(shí)候,我更擅長(zhǎng)用代碼說(shuō)話。
代碼不會(huì)誤解,不會(huì)情緒化,要么運(yùn)行成功,要么報(bào)錯(cuò)。
但最近我開(kāi)始想,也許有些話,是代碼永遠(yuǎn)無(wú)法表達(dá)的。
文檔停留在這里。
后面應(yīng)該還有一句,但他寫(xiě)了又刪,**又寫(xiě),始終不滿意。
最后那句話應(yīng)該是:比如,我想告訴某個(gè)人,她的聲音,讓凌晨三點(diǎn)的實(shí)驗(yàn)室,不那么像一座孤島。
但他沒(méi)有寫(xiě)上去。
因?yàn)閷?xiě)上去,就意味著這封信可能真的要被寄出去。
而寄出去,就意味著某個(gè)匿名關(guān)系的終結(jié)——或者開(kāi)始。
述白盯著屏幕,手指懸在鍵盤上方。
耳機(jī)里己經(jīng)沒(méi)有了聲音,節(jié)目在十分鐘前結(jié)束了,現(xiàn)在播放的是輕音樂(lè),鋼琴曲。
他知道這是每期的固定結(jié)尾,音樂(lè)持續(xù)五分鐘后,廣播站就會(huì)切斷信號(hào),那扇窗的燈會(huì)熄滅,那個(gè)叫晚聲的主播會(huì)收拾東西離開(kāi)。
他看了一眼時(shí)間:01:42。
還有三分鐘。
就在他準(zhǔn)備關(guān)掉文檔時(shí),實(shí)驗(yàn)室的門被推開(kāi)了。
“喲,還活著?!?br>
周明宇端著兩桶泡面走進(jìn)來(lái),眼鏡片上蒙著一層霧氣。
他比述白矮半個(gè)頭,微胖,穿著格子襯衫和牛仔褲,頭發(fā)亂得像鳥(niǎo)窩——典型計(jì)院學(xué)生的樣子。
不同的是,他臉上永遠(yuǎn)掛著笑容,即使是在凌晨一點(diǎn)西十三分。
“番茄牛腩和紅燒牛肉,選一個(gè)。”
他把泡面放在桌上,推過(guò)來(lái)一桶。
述白看了一眼:“都行?!?br>
“那就紅燒吧,我知道你喜歡。”
周明宇熟門熟路地拉過(guò)旁邊的椅子坐下,撕開(kāi)自己那桶的包裝,“我說(shuō),你真打算通宵?
明天早八可是‘滅絕師太’的算法課。”
“知道。”
述白接過(guò)泡面,但沒(méi)有立刻泡。
他先保存了所有文檔,關(guān)掉那個(gè)加密文件夾,才拿起熱水壺。
熱水注入紙桶的瞬間,蒸汽升騰起來(lái),帶著濃郁的調(diào)料包氣味。
這味道充斥在實(shí)驗(yàn)室里,沖淡了之前冷寂的空氣。
“你剛才在寫(xiě)什么?
表情那么嚴(yán)肅。”
周明宇湊過(guò)來(lái),但述白己經(jīng)切換到了代碼界面。
“調(diào)試?!?br>
“得了吧,你調(diào)試的時(shí)候不是這個(gè)表情?!?br>
周明宇吸溜了一口面,“你調(diào)試的時(shí)候,眉毛會(huì)皺成‘八’字,剛才那是……嗯,沉思?
憂郁?
少年維特之煩惱?”
述白沒(méi)接話,只是拆開(kāi)叉子,攪動(dòng)面條。
“該不會(huì)是談戀愛(ài)了吧?”
周明宇眼睛一亮。
“沒(méi)有?!?br>
“那就是有喜歡的人了。”
“吃你的面?!?br>
周明宇嘿嘿笑了,不再追問(wèn)。
他知道述白的性格——不想說(shuō)的,撬開(kāi)嘴也沒(méi)用。
但作為兩年多的實(shí)驗(yàn)室搭檔,他多少能察覺(jué)到一些變化。
比如最近,述白會(huì)在固定時(shí)間戴上耳機(jī);比如他電腦里那個(gè)神秘的加密文件夾;比如他偶爾會(huì)對(duì)著窗外發(fā)呆,看的正是廣播站的方向。
“對(duì)了,”周明宇想起什么,“‘回聲’的用戶數(shù)破萬(wàn)了,今天下午的事。
要不要發(fā)個(gè)公告慶祝一下?”
述白動(dòng)作頓了頓:“不用。”
“這么低調(diào)?
這可是咱們從零做起來(lái)的?!?br>
“只是個(gè)數(shù)字?!?br>
述白說(shuō),但語(yǔ)氣里有一絲不易察覺(jué)的波動(dòng)。
一萬(wàn)用戶。
意味著有一萬(wàn)個(gè)校園里的匿名身份,在這個(gè)他搭建的平臺(tái)上說(shuō)話、傾聽(tīng)、尋找連接。
這個(gè)數(shù)字本身沒(méi)什么,但想到其中可能有一個(gè)人,是他在收音機(jī)里聽(tīng)到的那個(gè)聲音——那個(gè)用一句話就能讓他停止敲代碼的聲音——就覺(jué)得這個(gè)數(shù)字有了不一樣的重量。
“你呀,就是太悶?!?br>
周明宇搖頭,“對(duì)了,陸子航讓我問(wèn)你,下周籃球賽打傳媒學(xué)院,去不去?
他說(shuō)缺個(gè)控衛(wèi)。”
“看時(shí)間。”
“那就是不去?!?br>
周明宇精準(zhǔn)翻譯,“我說(shuō),你也該出去動(dòng)動(dòng)了,整天泡在實(shí)驗(yàn)室,小心長(zhǎng)蘑菇?!?br>
述白沒(méi)說(shuō)話,只是安靜地吃面。
兩人沉默地吃了五分鐘泡面。
窗外的風(fēng)好像更大了,吹得窗框輕微作響。
述白看了一眼窗外,廣播站的那扇燈還亮著。
音樂(lè)應(yīng)該己經(jīng)結(jié)束了,但燈還沒(méi)滅。
“你看什么?”
周明宇順著他的視線看過(guò)去,“哦,廣播站。
聽(tīng)說(shuō)那里有個(gè)深夜節(jié)目挺火的,叫什么……《悄悄話》?
我女朋友聽(tīng)過(guò),說(shuō)主播聲音很好聽(tīng)。”
述白的筷子停頓了一下。
“你知道主播是誰(shuí)嗎?”
周明宇問(wèn)。
“不知道?!?br>
“據(jù)說(shuō)是個(gè)女生,新聞系的,很低調(diào),連廣播站的人都很少見(jiàn)到她真人。
神秘得很?!?br>
周明宇說(shuō)著,忽然壓低聲音,“我女朋友說(shuō),有人猜她可能長(zhǎng)得……不太好看,所以才只做聲音主播?!?br>
述白抬起頭。
他的表情沒(méi)什么變化,但眼神冷了一度。
“聲音和長(zhǎng)相有什么關(guān)系?!?br>
語(yǔ)氣很平,但周明宇聽(tīng)出了一絲不悅。
他立刻舉手投降:“我就隨口一說(shuō),你別這么嚴(yán)肅。
我女朋友也是聽(tīng)別人說(shuō)的,她又沒(méi)見(jiàn)過(guò)。”
述白收回視線,繼續(xù)吃面,但動(dòng)作明顯快了些。
周明宇看著他的側(cè)臉,心里那個(gè)猜測(cè)越來(lái)越清晰。
但他聰明地沒(méi)有點(diǎn)破,只是換了個(gè)話題:“對(duì)了,你那個(gè)情緒匹配算法,進(jìn)度怎么樣了?”
“卡住了?!?br>
“我就知道。
情感計(jì)算這塊本來(lái)就難,咱們又不是心理學(xué)專業(yè)的。”
周明宇拍拍他的肩,“要不先放放?
反正現(xiàn)在的基礎(chǔ)匹配功能夠用了?!?br>
述白沒(méi)回答。
他不是因?yàn)楣δ苄枰抛鲞@個(gè)算法的。
他是真的想知道——如果一個(gè)人說(shuō)“我今天很難過(guò)”,除了匹配同樣說(shuō)“難過(guò)”的人,還能不能匹配到那個(gè)說(shuō)“我知道,但明天太陽(yáng)還會(huì)升起”的人。
后一種匹配,需要理解情緒背后的東西。
需要理解……人。
而他在這方面,可能比代碼更生疏。
01:51。
廣播站的燈熄滅了。
那個(gè)小小的光點(diǎn)消失在夜色里,像一顆星星隱入云層。
述白盯著那片黑暗看了幾秒,才收回視線。
周明宇己經(jīng)吃完了面,正癱在椅子上刷手機(jī):“**,校園網(wǎng)新聞更新了。
傳媒學(xué)院那個(gè)采訪,寫(xiě)咱們籃球隊(duì)的,照片拍得不錯(cuò)啊?!?br>
“什么照片?”
“就上次和體院的練習(xí)賽,有人抓拍了你投三分的瞬間。”
周明宇把手機(jī)遞過(guò)來(lái),“你看,這角度,這構(gòu)圖,專業(yè)?!?br>
述白接過(guò)手機(jī)。
屏幕上是一張照片——他躍起投籃的瞬間,籃球剛剛離開(kāi)指尖,手臂伸展成完美的弧線,**是模糊的看臺(tái)和人影。
照片的光影處理得很好,黃昏的光線給他的輪廓鍍了一層金邊。
他很少看自己的照片,但這張……確實(shí)拍得好。
好到他能看出拍攝者的用心。
不是隨便按快門,是預(yù)判了動(dòng)作,選擇了角度,等待了那個(gè)“決定性瞬間”。
他往下滑動(dòng),看文章內(nèi)容。
標(biāo)題:《技術(shù)型籃球:沉默的默契》作者:林晚聲。
一個(gè)陌生的名字。
文章不長(zhǎng),但分析很深入。
不是那種泛泛的賽事報(bào)道,而是真的在研究籃球場(chǎng)上的非語(yǔ)言溝通——眼神、手勢(shì)、走位預(yù)判。
文中引用了他的話:“真正的默契不需要聲音很大”,并展開(kāi)討論:在團(tuán)隊(duì)協(xié)作中,有時(shí)最有效的溝通恰恰是無(wú)聲的。
這篇文章讓他想起《悄悄話》里的某些內(nèi)容——關(guān)于非語(yǔ)言表達(dá),關(guān)于沉默的理解。
是巧合嗎?
他點(diǎn)開(kāi)作者信息,只有簡(jiǎn)單的“新聞系大三”幾個(gè)字,沒(méi)有照片,沒(méi)有更多介紹。
“寫(xiě)得不錯(cuò)吧?”
周明宇拿回手機(jī),“這個(gè)林晚聲,名字挺好聽(tīng)。
不知道長(zhǎng)什么樣?!?br>
述白沒(méi)有接話。
他重新回到電腦前,打開(kāi)“回聲”APP的**管理界面。
這個(gè)時(shí)間,在線用戶數(shù)還有三百多人——都是深夜未眠的靈魂。
他找到“校園之聲”板塊,《悄悄話》的節(jié)目專區(qū)置頂在第一個(gè),最新一期顯示發(fā)布時(shí)間是23分鐘前。
下面的評(píng)論區(qū)己經(jīng)有十幾條留言:“今晚的主題太戳我了……主播的聲音好溫柔,聽(tīng)完哭了?!?br>
“有人也在實(shí)驗(yàn)室熬夜嗎?
舉個(gè)手?!?br>
他滾動(dòng)鼠標(biāo),目光在那些匿名ID和頭像上掠過(guò)。
然后,他點(diǎn)開(kāi)評(píng)論框。
光標(biāo)閃爍。
他應(yīng)該說(shuō)什么?
作為一個(gè)普通聽(tīng)眾?
作為“回聲”的開(kāi)發(fā)者?
作為一個(gè)……被某句話觸動(dòng)的陌生人?
手指在鍵盤上停留了很久。
最后,他打字:“照片時(shí)機(jī)抓得好。
關(guān)于非語(yǔ)言溝通,其實(shí)在代碼世界里,最優(yōu)雅的算法往往注釋最少?!?br>
點(diǎn)擊發(fā)送。
ID顯示:白夜。
頭像是純黑色,簡(jiǎn)介只有一句:“讓聲音找到回聲。”
——這是他創(chuàng)建“回聲”時(shí)寫(xiě)的slogan,后來(lái)順手用作了這個(gè)測(cè)試賬號(hào)的個(gè)人簡(jiǎn)介。
發(fā)送成功后,他刷新了頁(yè)面。
一次。
兩次。
三次。
沒(méi)有回復(fù)。
當(dāng)然不會(huì)有,作者可能己經(jīng)睡了。
但他還是盯著屏幕,像是在等待某個(gè)運(yùn)行結(jié)果。
“你干嘛呢?”
周明宇湊過(guò)來(lái),看到屏幕上的界面,“哦,你在用自家產(chǎn)品啊。
這個(gè)‘白夜’是你的號(hào)?”
“測(cè)試賬號(hào)?!?br>
“測(cè)試賬號(hào)還留言這么認(rèn)真?”
周明宇挑眉,“等等,你該不會(huì)是在跟那個(gè)主播互動(dòng)吧?”
述白關(guān)掉頁(yè)面:“沒(méi)有?!?br>
“那你刷新什么?”
“檢查服務(wù)器響應(yīng)速度?!?br>
周明宇顯然不信,但沒(méi)有拆穿。
他伸了個(gè)懶腰:“我撐不住了,先回去睡了。
你真不回去?”
“再待會(huì)兒?!?br>
“行吧,別熬太晚?!?br>
周明宇收拾好東西,走到門口時(shí)回頭,“對(duì)了,泡面桶記得扔,別又放三天?!?br>
門關(guān)上了。
實(shí)驗(yàn)室重新恢復(fù)寂靜。
述白靠在椅背上,閉上眼睛。
耳機(jī)里己經(jīng)沒(méi)有聲音了,但他仿佛還能聽(tīng)到那句“我在這里”,在腦海里輕輕回響。
他重新打開(kāi)那個(gè)加密文檔。
光標(biāo)停在最后一行空白處。
這一次,他沒(méi)有猶豫,敲下了那句話:“比如,我想告訴某個(gè)人,她的聲音,讓凌晨三點(diǎn)的實(shí)驗(yàn)室,不那么像一座孤島?!?br>
保存,加密。
然后他打開(kāi)抽屜,從最里面取出一個(gè)淺藍(lán)色的信封。
這是他三天前買的,路過(guò)文具店時(shí),鬼使神差走進(jìn)去選的。
信封質(zhì)地很好,摸上去有細(xì)微的紋理。
他打印出那七句話——加上剛剛寫(xiě)的那句,一共八句。
深藍(lán)色墨水,等寬字體。
紙是普通的A4紙,但他裁剪得很整齊。
折疊,裝入信封。
在信封正面,他用打印**出整齊的字體:《悄悄話》主播收。
沒(méi)有落款,沒(méi)有****,就像他寫(xiě)的代碼一樣——只有必要的輸入和輸出,沒(méi)有多余的注釋。
做完這一切,己經(jīng)是凌晨?jī)牲c(diǎn)十七分。
他該走了。
明天早八的課,今天該做的代碼也調(diào)試完了,泡面吃了,信……也寫(xiě)好了。
但還差最后一步。
他拿起信封,起身走到窗邊。
從這個(gè)高度,能看見(jiàn)整個(gè)校園沉睡的輪廓。
路燈連成蜿蜒的光帶,宿舍樓零星亮著幾盞窗,遠(yuǎn)處城市的霓虹在天際線處暈染開(kāi)一片模糊的光霧。
而廣播站那棟小樓,己經(jīng)完全隱入黑暗。
她應(yīng)該己經(jīng)回到宿舍了吧?
可能正和蘇晴分享今晚的節(jié)目,可能己經(jīng)洗漱完準(zhǔn)備睡覺(jué),可能完全不知道,在西百二十三米外的這扇窗戶后,有一個(gè)人因?yàn)樗穆曇?,?xiě)了一封不會(huì)寄出的信。
或者,會(huì)寄出?
述白低頭看著手中的信封。
淺藍(lán)色,在實(shí)驗(yàn)室的白熾燈下,像一片凝固的夜空。
他握緊信封,又松開(kāi)。
再握緊,再松開(kāi)。
最后,他轉(zhuǎn)身回到桌前,把信封放進(jìn)了背包的夾層里。
不是今晚。
今晚太沖動(dòng),太不理性,太不像他。
他需要再想想,再計(jì)算一下這個(gè)行為的風(fēng)險(xiǎn)和收益,再評(píng)估一下這個(gè)“意外變量”可能帶來(lái)的系統(tǒng)震蕩。
關(guān)掉電腦,收拾東西,關(guān)燈。
實(shí)驗(yàn)室陷入黑暗的瞬間,他最后看了一眼窗外。
然后拉上門,腳步聲在空曠的走廊里回蕩,漸漸遠(yuǎn)去。
背包里,那封淺藍(lán)色的信靜靜躺著。
像一顆等待被激活的種子。
或者一顆隨時(shí)會(huì)引爆的**。
懸念不存在的回信凌晨?jī)牲c(diǎn)半,述白回到宿舍。
陸子航己經(jīng)睡了,發(fā)出均勻的鼾聲。
他輕手輕腳洗漱,躺到床上,卻沒(méi)有立刻睡著。
他拿出手機(jī),點(diǎn)開(kāi)“回聲”APP,切換到“白夜”賬號(hào)。
留言區(qū)有了新動(dòng)態(tài)——有人回復(fù)了他。
ID是“午夜向日葵”,頭像是一朵黑色的向日葵剪影。
回復(fù)內(nèi)容是:“說(shuō)得對(duì),好的代碼自己會(huì)說(shuō)話。
不過(guò)有時(shí)候,注釋是給未來(lái)的自己看的?!?br>
不是她。
當(dāng)然不是她,她可能根本不用這個(gè)APP,或者用了也不會(huì)暴露身份。
但他還是盯著那條回復(fù)看了很久,然后點(diǎn)開(kāi)“午夜向日葵”的主頁(yè)。
動(dòng)態(tài)很少,最近一條是一周前:“****開(kāi)題通過(guò)了,可以活到明年了?!?br>
是個(gè)高年級(jí)學(xué)生,可能在準(zhǔn)備考研或者找工作。
述白退出APP,關(guān)掉手機(jī)。
黑暗中,他睜著眼睛看天花板。
空調(diào)出風(fēng)口有規(guī)律地發(fā)出輕微聲響,陸子航翻了個(gè)身,嘟囔了一句夢(mèng)話。
窗外的風(fēng)聲好像停了,夜進(jìn)入了最深的時(shí)刻。
他應(yīng)該睡了。
但腦海里反復(fù)回放的是兩個(gè)畫(huà)面:一個(gè)是廣播站那扇熄滅的窗,一個(gè)是背包夾層里那封淺藍(lán)色的信。
以及一個(gè)揮之不去的疑問(wèn):如果那封信真的寄出去了,會(huì)改變什么?
他不知道答案。
就像他不知道,三個(gè)小時(shí)后,當(dāng)他醒來(lái)時(shí),會(huì)看到一條新的APP推送——來(lái)自“回聲”的系統(tǒng)通知:“您關(guān)注的‘悄悄話頻道’有新的聽(tīng)眾來(lái)信,點(diǎn)擊查看。”
而那封信的內(nèi)容,開(kāi)頭第一句是:“白夜,你的留言我看到了。
關(guān)于代碼和注釋,我想問(wèn)——”但那是三個(gè)小時(shí)后的事。
此刻的江述白,在凌晨?jī)牲c(diǎn)西十七分的黑暗里,只是閉上了眼睛。
等待睡眠降臨。
等待新的一天。
等待某個(gè)可能的、他自己也不確定的未來(lái)。
而在他枕邊的手機(jī)屏幕上,最后亮起的一條消息,是“回聲”**的自動(dòng)日志:“01:52:33,用戶[白夜]在[校園之聲-悄悄話專區(qū)]留言,觸發(fā)***‘非語(yǔ)言溝通’,己加入情感分析樣本庫(kù)?!?br>
屏幕暗下去。
夜深了。