凌晨三點(diǎn)的北辰科技園像一臺(tái)進(jìn)入休眠模式的服務(wù)器。
大部分工位的屏幕己經(jīng)黑了,只有A區(qū)17排靠窗的位置還亮著慘白的加班燈。
林修把椅背調(diào)到最低,整個(gè)人蜷成一只蝦米,眼睛離顯示器不到二十厘米。
他保持著這個(gè)姿勢己經(jīng)七個(gè)小時(shí),像一株向光源畸形生長的植物。
"這個(gè)需求很簡單。
"下午三點(diǎn),產(chǎn)品經(jīng)理孫總在會(huì)議室甩下這句話時(shí),林修就知道今晚又別想睡了。
簡單個(gè)屁——要在用戶畫像系統(tǒng)里加一個(gè)"預(yù)測用戶未來三天情緒"的模塊,上線時(shí)間是明天上午十點(diǎn)。
整個(gè)后端組只有林修被留了下來,因?yàn)?小林代碼最穩(wěn),一個(gè)人能頂一個(gè)組"。
他倒也不介意。
比起回家面對(duì)空蕩蕩的出租屋,辦公室反而更安全。
這里沒有需要寒暄的鄰居,沒有便利店店員"今天還是老樣子"的問候,只有可控的變量和可預(yù)測的異常。
林修撓了撓三天沒洗的頭發(fā),在鍵盤上敲下最后一行單元測試:def test_predict_emotion():user = User(id=666, name="測試用戶")result = EmotionPredictor.predict(user)assert result in ["開心", "難過", "憤怒", "平靜"]運(yùn)行。
通過。
完美。
他正要關(guān)掉IDE,眼角余光瞥見終端的日志窗口滑過一條新的報(bào)錯(cuò)信息:[2024-11-12 03:14:52] ERROR: 怨念指針溢出 (0x0000000A)林修愣了三秒。
這是他自己寫的日志框架,所有錯(cuò)誤類型都定義在error_codes.py里,絕對(duì)不存在"怨念指針"這種中文描述。
他第一反應(yīng)是編譯器被入侵了,趕緊調(diào)出進(jìn)程管理器——一切正常,CPU占用率12%,內(nèi)存穩(wěn)定。
"復(fù)現(xiàn)不了啊……"他嘟囔著,這是他的口頭禪。
就在這時(shí),空調(diào)突然吹來一陣穿堂風(fēng)。
林修打了個(gè)寒顫,下意識(shí)看向顯示器右下角的溫度監(jiān)控插件:26度,恒溫。
他皺起眉,這風(fēng)不對(duì)勁,冷得刺骨,還帶著一股……鐵銹和速溶咖啡混合的氣味。
他緩緩抬起頭,透過顯示器的黑色反光,看見自己身后站著一個(gè)人。
確切地說,那不能算"人"。
它保持著彎腰看屏幕的姿勢,和林修剛才一模一樣。
身體邊緣像信號(hào)不良的投影儀圖像,不斷閃爍著噪點(diǎn)。
最詭異的是它的T恤——"需求又改了"五個(gè)字在灰白色的殘影上流動(dòng),仿佛是用失敗的編譯器錯(cuò)誤信息拼接而成。
林修的大腦罕見地出現(xiàn)了線程阻塞。
作為唯物**者,他第一反應(yīng)不是"鬼啊",而是"**,哪個(gè)**在跟我玩AR投影"。
他猛地回頭,身后空無一人,只有一排排黑屏的工位。
再轉(zhuǎn)回顯示器,那殘影還在,而且……更清晰了。
日志窗口瘋狂刷新:[2024-11-12 03:15:03] WARNING: 檢測到未釋放的怨念對(duì)象[2024-11-12 03:15:04] WARNING: 該怨念正在引用己刪除的需求文檔林修的手指懸在鍵盤上,微微發(fā)抖。
他想起上周三,隔壁組的王旭就是在這個(gè)工位倒下的。
當(dāng)時(shí)大家正為Q4沖刺,王旭說了句"我去趟洗手間",就再也沒回來。
法醫(yī)說是過勞引發(fā)的心梗,據(jù)說倒下時(shí)手里還攥著一份被甲方斃了十七版的需求文檔。
那之后這個(gè)位置空了幾天,HR貼了張"默哀"的便簽,然后新的實(shí)習(xí)生就搬進(jìn)來了。
實(shí)習(xí)生是個(gè)話癆大學(xué)生,每天下午茶時(shí)間都要拉著林修討論"職業(yè)發(fā)展"。
林修每次都用"嗯""哦""這樣啊"三連應(yīng)對(duì),心里默默計(jì)算ROI:投入3分鐘社交,產(chǎn)出0有效信息,這個(gè)函數(shù)可以優(yōu)化掉。
但現(xiàn)在,看著顯示器里那個(gè)逐漸凝實(shí)的灰白身影,林修的社恐雷達(dá)響了——這玩意兒,比實(shí)習(xí)生難搞一百倍。
它開始說話。
聲音像是從壞掉的機(jī)械鍵盤里敲出來的,每個(gè)字都帶著錯(cuò)位的雜音:"這個(gè)需求……很簡單……"林修瞳孔一縮。
這是王旭的口頭禪,也是他的遺言。
日志窗口的報(bào)錯(cuò)變成了紅色瀑布:[2024-11-12 03:16:11] CRITICAL: 怨念實(shí)體化進(jìn)度 67%[2024-11-12 03:16:12] CRITICAL: 正在向周圍工位擴(kuò)散污染林修的肌肉記憶比恐懼更快。
當(dāng)那灰白身影伸出半透明的手,指尖變成數(shù)據(jù)流想要觸碰他的鍵盤時(shí),他的手指己經(jīng)本能地敲下了一行代碼:try:reality.assert_not_ghost()except GhostDetectedError as e:log.error(f"捕獲怨念: {e.ghost_id}")這是他瞎寫的,根本不存在reality模塊。
但奇跡發(fā)生了——終端真的識(shí)別了這條命令,返回了:怨念捕獲成功,ID: 0xWANGXU_19950215當(dāng)前狀態(tài): 己加入觀察列表灰白身影像是被按下了暫停鍵,凝固在半空。
它的T恤上,"需求又改了"五個(gè)字卡頓成亂碼。
林修感覺到一股冰冷的能量順著鍵盤流進(jìn)他的指尖,然后……被消化了。
就像喝了一口冰美式,苦澀,但大腦瞬間清醒。
他的眼前浮現(xiàn)出一行行半透明的文字,像AR眼鏡的投影:--- 死亡調(diào)用棧 ---第1層: 需求文檔v17.0被駁回 (憤怒值: 999)第2層: 連續(xù)工作86小時(shí) (疲勞值: 1000)第3層: printf("我不恨他們") (邏輯沖突: 溢出)第4層: 內(nèi)存未釋放 (怨念核心)這是……王旭最后的思維過程?
林修的呼吸急促起來。
他意識(shí)到,自己不僅能看見這東西,還能讀懂它的底層邏輯。
就像面對(duì)一個(gè)全是*ug的開源項(xiàng)目,混亂,但有跡可循。
那灰影突然劇烈顫抖,T恤上的字重新組合,變成了血紅色的"需求很簡單"。
它的手猛地抓向林修的后頸——林修閉上眼,憑本能敲下快捷鍵:Ctrl+Alt+Delete。
他不是想重啟電腦,而是想……重啟這個(gè)"進(jìn)程"。
世界安靜了三秒。
灰白色的身影像被刪除的文件,首接碎成一片0和1的熒光,被吸進(jìn)了林修的顯示器。
終端日志恢復(fù)了正常,最后一條報(bào)錯(cuò)定格在:[2024-11-12 03:17:33] INFO: 怨念己清理,釋放內(nèi)存: 128M*林修癱在椅子上,冷汗浸濕了后背。
他顫抖著點(diǎn)開任務(wù)管理器,發(fā)現(xiàn)自己的內(nèi)存占用確實(shí)多了128M*,但那是一塊無法被任何工具檢測到的"暗內(nèi)存"。
更詭異的是,一段陌生的代碼片段憑空出現(xiàn)在他的項(xiàng)目里:def ghost_cleanup():# 來自王旭的遺產(chǎn)return "記得吃飯"注釋是王旭的風(fēng)格——他總在代碼里寫奇怪的備注。
林修記得有一次review,王旭在支付接口**釋了"錢是***,但沒錢連***都不如",被產(chǎn)品經(jīng)理追著打了三個(gè)樓層。
現(xiàn)在,這段代碼靜靜地躺在那里,可以運(yùn)行,可以調(diào)用,返回的字符串帶著溫度。
林修做了個(gè)決定:他把這個(gè)函數(shù)集成進(jìn)了情緒預(yù)測模塊。
當(dāng)檢測到用戶極度疲憊時(shí),系統(tǒng)會(huì)悄悄彈窗提醒"記得吃飯"。
這是他對(duì)王旭唯一能做的——把他的怨念,變成一個(gè)有用的feature。
窗外天際泛起魚肚白。
林修保存代碼,提交Git,在commit message里猶豫了很久,最后敲下:fix: 修復(fù)了一個(gè)無法復(fù)現(xiàn)的幽靈*ug他站起身,準(zhǔn)備沖個(gè)咖啡。
轉(zhuǎn)身時(shí),差點(diǎn)撞上一個(gè)穿著酒紅色風(fēng)衣的女人。
她不知什么時(shí)候站在他身后,好像己經(jīng)看了很久。
**浪卷發(fā),左手無名指的銀戒在晨光下反光,嘴角掛著一種"終于找到你了"的微笑。
"早上好,林修。
"她的聲音清脆,像IDE提示音,"我是城市認(rèn)知***的蘇棧。
關(guān)于你昨晚捕獲的那個(gè)需求幽靈,我們需要聊聊。
"林修的社恐瞬間發(fā)作,他后退半步,撞倒了椅子。
"我什么都不知道,"他說,眼睛盯著她的肩膀——不敢對(duì)視,"那個(gè)*ug……我沒能復(fù)現(xiàn)。
"蘇棧笑了,從風(fēng)衣里掏出一個(gè)平板電腦,屏幕上正是他剛才提交的Git記錄。
"復(fù)現(xiàn)不了沒關(guān)系,"她說,"我們那邊多的是。
不過,你那種用try-catch捕獲怨念的做法……很有創(chuàng)意。
要不要考慮,來我們這兒當(dāng)驗(yàn)尸官?
五險(xiǎn)一金,公積金12%,加班算調(diào)休。
"林修愣住了。
他第一反應(yīng)不是"驗(yàn)尸官是什么",而是——她怎么知道try-catch?
第二反應(yīng)是:這工作,比大廠還正規(guī)?
但更讓他背后發(fā)寒的是,他余光瞥見自己的顯示器。
屏幕反光里,蘇棧的身后,漂浮著三個(gè)半透明的身影。
它們穿著不同時(shí)代的工裝,有80年代的藍(lán)色勞保服,有2000年的白襯衫,有2020年的帽衫,都在對(duì)他微笑。
那些笑容,和王旭最后的注釋一模一樣。
"我……"林修張了張嘴,社恐讓他本能地想拒絕。
但蘇棧的下一句話,把他釘在了原地:"對(duì)了,王旭讓我轉(zhuǎn)告你——他的代碼,上線了。
"她指了指窗外。
對(duì)面大樓的巨幅廣告屏上,正是他們公司的新產(chǎn)品宣傳。
在右下角,有一行幾乎看不見的小字:Powered *y 異常認(rèn)知層 v0.0.1版本號(hào)后面,跟著一個(gè)閃爍的骷髏頭圖標(biāo)。
小說簡介
小說叫做《代碼驗(yàn)尸官》是瑜澍的小說。內(nèi)容精選: