第113章 分贓
屋裡安靜了一瞬。
楚戈張了張嘴,看了看手裡的樹狀圖,又看了看站在門口的陸嘉。
陳拙坐在椅子上,看著這個主動跑上門的室友。
無奈的嘆了口氣。
陳拙索性站起身,順手把王大勇桌前的一把空椅子拉了過來,放在自己書桌旁邊。
他拿起桌上的暖壺給杯子裡倒了一杯熱水。
陳拙把水杯放在桌角。
「既然腦子裡停不下來,就坐下把它算完吧。」
陳拙看著陸嘉,聲音很淡定。
畢竟自己可算是相當有經驗了。
「算完了,心就靜了。」
陸嘉站在門口,手裡還死死攥著那幾張草稿紙。
他看了看陳拙。
又看了看旁邊沒吭聲的楚戈,和蹲在地上滿頭大汗的王大勇。
他挪動腳步,走了過來。
在椅子上坐下。
水杯里的熱氣撲在臉上,讓他原本緊繃的神經稍微鬆緩了一點點。
陸嘉拿起筆。
沒有廢話,也沒有再抱怨一句。
他低著頭,筆尖落在那幾張草稿紙的空白處,沙沙的摩擦聲在215宿舍里響了起來。
楚戈看著這一幕,默默地轉過身。
他把陳拙畫的那張倒樹狀圖平鋪在鍵盤旁邊。
手指重新搭在鍵帽上。
王大勇蹲在地上,伸手調整了一下小吊扇的角度,讓風能更均勻地吹過主板上的散熱鋁片。「我這風扇是改過線圈的,風力大。」
王大勇壓低聲音,對楚戈說。
「你儘管跑數據,溫度要是能燒了,我把這主板吃了。」
楚戈沒擡頭,只是嗯了一聲。
鍵盤的敲擊聲再次響了起來。
這一次,沒有了之前的暴躁和急促,而是變成了一種規律,平穩的節奏。
陳拙坐回自己的位置。
他翻開那本列印出來的英文文獻,拿起鋼筆。
屋裡只有風扇的呼呼聲,鍵盤的敲擊聲,還有陸嘉筆尖划過紙面的聲音。
偶爾,楚戈會停下來。
「陳拙。」楚戈盯著屏幕,眉頭皺著,「逆向拓撲走到第二層,數據接口變窄了,溢出怎麼算?」陳拙頭也沒擡,看著眼前的文獻。
「別算溢出,直接做個空指針,把溢出的數據扔進緩存池,讓底層的循環自己去撿。」
楚戈愣了兩秒,手在鍵盤上飛快地鼓了幾行代碼。
「通了。」
楚戈沒再說話,繼續往下敲。
過了一會兒,陸嘉手裡的筆停了。
他把一張寫得密密麻麻的紙推到楚戈手邊。
「半衰期變量。」陸嘉的聲音還是有點沙啞,「代進去,右旋極值就不會撞了。」
楚戈掃了一眼。
「謝謝。」
手指在鍵盤上飛舞,把那串公式轉化成C語言的邏輯語句。
時間一點點過去。
窗外的夜色越來越深。
兩點。
四點。
陳拙看完了手裡那份十幾頁的預印本論文。
他把筆帽合上,揉了揉有些發酸的眼睛。
轉頭看了一眼。
王大勇已經靠在床架子上睡著了,呼嚕聲打得震天響,手裡還捏著一把小螺絲刀。
陸嘉趴在桌子上。
他面前的草稿紙上寫滿了公式。
他閉著眼睛,呼吸均勻綿長。
那個把他折磨了一晚上的心結解開了,他終於睡著了。
楚戈還坐在電腦前。
他嘴裡叼著一根棒棒糖,雙眼布滿血絲,死死盯著屏幕上的進度條。
陳拙站起身,倒了杯水。
「還有多少?」
「快了。」楚戈的聲音啞得厲害,「最後一次全量編譯。」
機箱裡的風扇在瘋狂轉動。
屏幕上的漏斗圖標轉了足足一分鐘。
「叮。」
系統發出一聲清脆的提示音。
一個小窗口彈了出來。
楚戈拿下嘴裡的棒棒糖,手指微微有些發抖,鼓下了回車鍵。
黑色的命令窗口裡,綠色的數據流像瀑布一樣傾瀉而下。
順暢。
沒有任何卡頓。
一萬條。
五萬條。
十萬條。
最終,光標停留在最後一行。
檢索完成,總耗時2.3秒。
比僱主的要求還快了整整一倍。
楚戈靠在椅子上,長長地吐出一口氣。
他沒喊也沒叫。
只是疲憊地搓了搓臉。
「跑通了。」
楚戈轉過頭,看著陳拙,扯起嘴角笑了一下。
陳拙點點頭,喝了口水。
「把測試包打包發過去吧,收錢睡覺。」
楚戈按了幾下滑鼠,把生成好的程序文件壓縮。
他點開那個黑客論壇的私信界面,準備給對方發過去。
就在這時,對方的頭像閃了起來。
發來了一個十幾兆的壓縮包。
緊接著是一條留言:
【兄弟,代碼如果跑通了,順手幫個忙。這是我們網站初期的兩萬條原始圖片數據標籤,你用你的新程序跑一遍,把裡面的亂碼和錯誤標籤篩出來,跑完沒問題,一千五百塊錢我立刻打你卡上。】
楚戈愣了一下。
他點開那個壓縮包,解壓。
打開裡面的文本文檔。
只看了一眼,楚戈的臉就黑了。
密密麻麻的文本,幾百頁。
裡面全是不規則的數據。
有些是正常的中文標籤風景,人物。
有些是亂碼%amp;:*#¥。
還有些是拚寫錯誤的英文單詞,甚至是半角全角混雜的標點符號。
這根本不是程式設計師寫出來的東西,而是那些不懂電腦的文員,用各種千奇百怪的輸入法手動錄入的原始垃圾。「怎麼了?」
陳拙看出了楚戈的不對勁。
楚戈指著屏幕上的那堆亂碼。
「對方讓拿這些原始數據跑一次測試。」
楚戈頭疼地揉了揉太陽穴。
「這活兒沒法干,這數據太髒了,裡面全是不符合任何邏輯規律的人為輸入錯誤。」
陳拙走過去,看了一眼屏幕。
「寫個正則篩除腳本不行麼?」
「不行。」
楚戈搖頭。
「正則表達式只能抓取有規律的東西,你看這行,他把蘋果打成了pinguo,旁邊還跟了個火星文,這種東西一進底層邏輯,程序立馬就會判定為異常變量,直接卡死。」
楚戈咬著牙。
「這幫孫子,自己不願意花時間去清理這些垃圾數據,想用一千五百塊錢讓我連代碼帶清洗全包了。」旁邊,陸嘉被楚戈的說話聲吵醒了。
他迷迷糊糊地直起身子。
看了一眼屏幕上的那些東西。
「這沒有數學規律。」
陸嘉看了一眼就得出了結論,聲音帶著剛睡醒的沙啞。
「代數方程解不了無序的錯誤。」
屋裡安靜下來。
楚戈靠在椅子上,看著屏幕上的兩萬條數據,有些泄氣。
熬了一整夜,腦子都快炸了。
就差這臨門一腳。
「要不....我明天寫個稍微複雜的腳本,多加幾個條件判斷,能篩多少是多少?」
楚戈自己都沒底氣。
這種髒活兒,用代碼去防人為的愚蠢,是最費力不討好的。
陳拙看著屏幕上不斷滾動的亂碼。
他伸手拿過滑鼠,往下拉了幾頁。
「不用寫腳本。」陳拙鬆開滑鼠,「機器分不清這種無規律的錯誤,但人眼分得清。」
楚戈愣了。
「這兩萬條,純靠人眼看?那得看到什麼時候去?」
「一個人看兩萬條當然慢。」
陳拙走到自己的書包前,拿出一張嶄新的空白軟盤,插進楚戈電腦的軟碟機里。
陳拙把那個裝滿原始數據的文本文檔拖了進去。
拔出軟盤,裝進口袋裡。
他看了一眼楚戈,又看了一眼揉著眼睛的陸嘉。
「這活兒交給我吧。」
陳拙走到窗前,拉開一點窗簾。
外面的天已經蒙蒙亮了。
「今天早上正好沒課,你倆把電腦關了,回去睡覺。」
陳拙轉過身。
「明天晚上,我把乾淨的數據帶回來,你直接跑程序交差。」
楚戈張了張嘴,想問陳拙去哪找人看這兩萬條數據。
但看著陳拙那副淡定的樣子,他把話咽了回去。
「行。」
楚戈也是真熬不住了。
他關了電腦。
把滿桌子的草稿紙收攏起來,塞進兜里。
拍了拍還在打呼嚕的王大勇。
大勇迷迷糊糊地醒過來,抹了一把嘴角的口水。
「跑完了?」
「跑完了,睡吧。」
楚戈站起身,伸了個懶腰。
他看了一眼陳拙,沒多說客套話。
「謝了。」
楚戈帶著陸嘉,走出了215的門。
上午十點。
科大老圖書館。
陽光透過常春藤的葉子,在木地板上投下斑駁的光影。
借閱前沒什麼人。
蘇微正坐在一張高腳凳上。
手裡拿著一本有些年頭的線裝書,正在仔細地修補脫落的書頁。
陳拙走過來,把手裡的軟盤放在木製面上。
發出輕輕的一聲響。
蘇微擡起頭。
目光落在那個軟盤上,又看向陳拙。
「借書卡?」蘇微問。
「不借書。」
陳拙拉過旁邊的一張椅子坐下,隔著借閱看著她。
「找你幫個忙,賺點外快。」
蘇微放下手裡的線裝書和膠水,拿過旁邊的一塊干毛巾擦了擦手。
「說。」
「這個軟盤裡,有兩萬條雜亂的文本數據。」
陳拙指了指那個黑色的塑料方塊。
「裡面全是人為錄入的標籤,有很多拚寫錯誤,亂碼和無意義的符號。」
他看著蘇微的眼睛。
「機器的算法剔除不了這種沒有邏輯規律的髒數據,需要人工一行一行地看,把有錯誤的行刪掉,保留格式正確的。」蘇微看著那個軟盤,沒說話,在心裡評估工作量。
「兩萬條,如果速度快,大概明天。」
陳拙語氣平緩。
「明天下午六點之前給我,五十塊錢。」
蘇微伸手拿過那個軟盤。
翻看了一下背面。
「你們這算什麼?外包的外包?」
蘇微嘴角微微動了一下。
陳拙笑了笑。
「算是吧,草班子遇到點算力解決不了的體力活。」
蘇微把軟盤放進自己馬甲的口袋裡。
「這活兒我接了,但圖書館的電腦不能亂插軟盤,我得晚上回宿舍,借室友的電腦看。」
「可以,明天下午我來拿。」
陳拙站起身,準備走。
「等等。」
蘇微叫住他。
陳拙回過頭。
「如果是文本文檔,這兩萬條數據全是連在一起的。」
蘇微看著他。
「我之前在相關的書里看過一點這些,我刪掉一行,怎麼保證你們導入的時候,行數對應的圖片不串位?」陳拙看著蘇微,眼底閃過一絲驚嘆。
這姑娘不僅手腳麻利,腦子更是極其清楚。
「我在那個文本里,已經寫了一段宏。」
陳拙回答。
「你不用直接刪文字,遇到有亂碼的那一行,你只需要在最前面敲一個數字0,遇到正常的,敲1。」他稍微停頓了一下。
「格式我會回去重新匹配,你只負責分辨對錯就行。」
蘇微點了點頭。
「明白了,明天下午六點,來這兒找我。」
她重新拿起膠水,低頭繼續修補那本線裝書。
第二天傍晚。
陳拙準時出現在老圖書館。
蘇微把軟盤推給他。
眼底下有淡淡的黑眼圈,顯然昨晚熬了夜。
「弄完了,一共刪了三千四百一十二條髒數據。」
蘇微的聲音有些疲憊,但依然乾脆。
陳拙拿過軟盤,從兜里掏出一張五十塊的紙幣,放在桌上。
「辛苦。」
蘇微把錢收起來,放進抽屜里。
「錢貨兩清。」
當天晚上。
216宿舍。
楚戈把陳拙拿回來的軟盤插進電腦。
讀取出那個被蘇微標記過的數據文本。
他寫了個最簡單的讀取腳本,只抓取開頭標記為1的數據。
幾秒鐘後。
一萬六千多條乾乾淨淨、沒有任何亂碼的測試數據被提取出來。
楚戈把這些數據導入那個跑通了的底層程序。
回車。
屏幕上的數據流瘋狂滾動。
沒有任何報錯。
沒有任何卡頓。
一氣嗬成。
楚戈長長地出了一口氣。
他把最終的程序包和測試結果打包,發給了論壇上的那個僱主。
半個小時後。
對方回復了信息。
【牛逼,速度比我們預期的還快,卡號發來,馬上打款。】
楚戈靠在椅子上。
他轉過頭,看著正站在自己旁邊的陳拙,又看了一眼正在看書的陸嘉。
他咧嘴笑了。
「搞定了。」
周末的晚上。
科大南門外的一家露天燒烤攤。
夜風吹得旁邊的葉子嘩啦啦響。
攤位上冒著濃烈的炭火煙氣和烤羊肉的孜然味。
靠路邊的一張摺疊圓桌旁。
坐著五個人。
楚戈,陳拙,王大勇,陸嘉,還有被陳拙叫出來的蘇微。
桌上擺著兩大盤烤肉串,幾盤涼菜。
蘇微面前放著一瓶健力寶,她今天沒穿圖書館的馬甲,換了一件普通的黑色外套,安靜地坐在一邊喝飲料。陸嘉對這種煙燻火燎的環境很不適應。
他皺著眉頭,拿著一串烤肉,看著簽子上面沾著的一點黑炭灰,遲遲沒有下嘴。
楚戈起開兩瓶加多寶,遞給大勇一瓶,自己拿了一瓶。
「來,走一個。」
楚戈跟大勇碰了一下,仰頭灌了一大口。
他放下飲料,用手背抹了一把嘴巴。
從兜里掏出一個厚厚的信封。
裡面裝的,是從自動取款機里取出來的一千五百塊錢現金。
全是嶄新的一百元面額。
在2002年,這絕對是一筆能讓大學生眼紅的巨款。
楚戈把信封放在桌上。
他收起了平時那副桀螯不馴的樣子。
在這個小圈子裡,技術碾壓一切,他知道自己幾斤幾兩。
「這筆錢,我接單的時候沒想那麼多。」
楚戈看著陳拙,語氣認真。
「如果不是你的那個架構,還有陸嘉的公式,這單子我絕對得砸在手裡。」
他直接拉開信封,開始數錢。
動作極其乾脆,沒有任何拖泥帶水。
他抽出六張一百的,放在陳拙面前。
「陳拙,你搭的宏觀框架,這程序的骨頭是你捏的,拿大頭。」
陳拙看著面前的六百塊錢。
沒有推辭,也沒有說那些虛偽的客套話。
他很自然地伸手拿起來,放進自己的口袋裡。
「好。」
楚戈又抽出四張一百的,推到陸嘉面前。
陸嘉愣了一下,看著那些錢。
「你的數學邏輯幫我解了死結。」楚戈看著他,「這是你應得的。」
陸嘉皺著眉頭。
「我不要。」
他的聲音很小,帶著他一貫的軸勁。
「我給你寫那個,不是為了錢,我只是覺得它錯了,必須把它改對。」
楚戈拿著錢的手僵在半空。
他知道這小子的脾氣,逼他拿錢比殺了他還難。
陳拙在旁邊夾了一口涼菜,慢條斯理地開口了。
「拿著吧。」
陳拙看著陸嘉,語氣溫和。
「這是你的知識在這個世界上運轉出來的價值,知識是有價格的,你應該習慣這件事。」
陸嘉看了看陳拙。
他沉默了一會兒。
伸手把那四百塊錢拿了過來,隨便揣進了兜里。
楚戈鬆了口氣。
他又抽出兩張一百的,遞給正在埋頭吃肉的王大勇。
「大勇,大半夜折騰你搞散熱,還差點燒了你的插排,辛苦費。」
大勇憨厚地笑了笑。
也沒客氣,把錢接過來,塞進褲兜,繼續啃手裡的羊腿。
楚戈手裡還剩下三百塊。
他抽出其中一張五十的零錢,遞給坐在對面的蘇微。
「蘇微同學,排雷的錢,陳拙掏了五十,這五十算我給你的。」
蘇微看了一眼楚戈,又看了一眼陳拙。
沒說話,把錢接過來收好。
楚戈手裡捏著剩下的二百五十塊錢。
他看了一眼手裡的錢,忍不住罵了一句。
「靠,怎麼是個二百五。」
桌上幾個人都愣了一下,隨即大勇忍不住哈哈大笑起來。
連一直有點繃著臉的蘇微,眼底也閃過一絲笑意。
楚戈無奈地搖了搖頭,把錢揣起來。
「行了,各歸各得,這頓燒烤我請。」
他拿起桌子上的加多寶。
「以後論壇上再有這種活兒,我應該還少不了接。」
楚戈看著桌上的幾個人,眼神里透著一股極客的狂熱。
「我鼓代碼,陳拙搭架構,陸嘉算邏輯,大勇搞後勤,蘇微同學搞校驗,咱們這草班子,能在這大學裡橫著走。」陳拙沒拿啤酒,他端起手邊的水杯,跟楚戈碰了一下。
「不錯的想法。」
陳拙喝了口水,放下杯子。
他轉過頭,看向正吃得滿嘴流油的王大勇。
「大勇。」
「嗯?」大勇擡起頭。
「周末有空的話,帶我去一趟徽州的百腦匯。」
陳拙抽出一張餐巾紙,擦了擦手。
「去攢一新電腦。」
大勇一聽這話,眼睛立馬亮了。
「行啊!配個什麼級別的?奔騰4?顯卡上什麼?還是就你之前說的那套配置?」
「主板和顯卡都要市面上能買到的最好的一檔。」
陳拙語氣平靜。
「硬碟要大,顯示器要純平的,看著舒服一點。」
楚戈在旁邊聽著,有點驚訝。
「配這種頂配的機子,那可得大幾千了。」
「不心疼啊?」
陳拙笑了笑。
他看著不遠處馬路上昏黃的路燈。
「去機房存代碼太折騰,而且教育網下國外的文獻太慢。」
陳拙收回目光。
「工欲善其事,必先利其器,就當是買個工具吧。」
他稍微停頓了一下。
說出了今晚最重要的一句話。
「而且,我還需要你幫我買一私人雷射印表機。」
這句話一出,桌上除了早有心理準備的大勇,其他幾個人都愣住了。
連蘇微都停下了喝飲料的動作,看著陳拙。
「雷射印表機?」
楚戈都以為自己聽錯了。
「放宿舍里?你打什麼東西需要用那玩意兒?那耗材可不便宜。」
「列印國外的預印本論文。」
陳拙語氣很淡,就像是在陳述一個極其普通的日常需求。
「那些外文文獻太多,在電腦上看著傷眼睛,去外面的列印店,長年累月下來,不僅貴,而且麻煩。」他看著桌上的幾個人。
「楚戈,以後論壇上再有這種底層優化的單子,你接著接,遇到繞不開的邏輯,來找我和陸嘉。」陳拙指了指剛才楚戈分錢的位置。
「規矩照舊,按勞分配,各賺各的錢。」
他拿起筷子,夾了一粒花生米。
「賺的錢,你拿去升級你的主板內存,大勇去淘他的二手零件,陸嘉自己攢著買書。」
陳拙看著自己兜里那六百塊錢。
「至於我,國外的那些前沿論文又厚又費墨。」
他溫和地笑了笑。
「我賺的這筆錢,剛好夠我去買A4紙和備用碳粉盒的錢了。」
楚戈咧嘴笑了,他舉起手裡的加多寶。
「也行吧,你開心就好,為了A4紙和碳粉盒。」
大勇也舉起杯子。
陸嘉猶豫了一下,端起面前的水杯。
蘇微拿著健力寶。
陳拙端著水杯,跟他們碰在一起。
楚戈張了張嘴,看了看手裡的樹狀圖,又看了看站在門口的陸嘉。
陳拙坐在椅子上,看著這個主動跑上門的室友。
無奈的嘆了口氣。
陳拙索性站起身,順手把王大勇桌前的一把空椅子拉了過來,放在自己書桌旁邊。
他拿起桌上的暖壺給杯子裡倒了一杯熱水。
陳拙把水杯放在桌角。
「既然腦子裡停不下來,就坐下把它算完吧。」
陳拙看著陸嘉,聲音很淡定。
畢竟自己可算是相當有經驗了。
「算完了,心就靜了。」
陸嘉站在門口,手裡還死死攥著那幾張草稿紙。
他看了看陳拙。
又看了看旁邊沒吭聲的楚戈,和蹲在地上滿頭大汗的王大勇。
他挪動腳步,走了過來。
在椅子上坐下。
水杯里的熱氣撲在臉上,讓他原本緊繃的神經稍微鬆緩了一點點。
陸嘉拿起筆。
沒有廢話,也沒有再抱怨一句。
他低著頭,筆尖落在那幾張草稿紙的空白處,沙沙的摩擦聲在215宿舍里響了起來。
楚戈看著這一幕,默默地轉過身。
他把陳拙畫的那張倒樹狀圖平鋪在鍵盤旁邊。
手指重新搭在鍵帽上。
王大勇蹲在地上,伸手調整了一下小吊扇的角度,讓風能更均勻地吹過主板上的散熱鋁片。「我這風扇是改過線圈的,風力大。」
王大勇壓低聲音,對楚戈說。
「你儘管跑數據,溫度要是能燒了,我把這主板吃了。」
楚戈沒擡頭,只是嗯了一聲。
鍵盤的敲擊聲再次響了起來。
這一次,沒有了之前的暴躁和急促,而是變成了一種規律,平穩的節奏。
陳拙坐回自己的位置。
他翻開那本列印出來的英文文獻,拿起鋼筆。
屋裡只有風扇的呼呼聲,鍵盤的敲擊聲,還有陸嘉筆尖划過紙面的聲音。
偶爾,楚戈會停下來。
「陳拙。」楚戈盯著屏幕,眉頭皺著,「逆向拓撲走到第二層,數據接口變窄了,溢出怎麼算?」陳拙頭也沒擡,看著眼前的文獻。
「別算溢出,直接做個空指針,把溢出的數據扔進緩存池,讓底層的循環自己去撿。」
楚戈愣了兩秒,手在鍵盤上飛快地鼓了幾行代碼。
「通了。」
楚戈沒再說話,繼續往下敲。
過了一會兒,陸嘉手裡的筆停了。
他把一張寫得密密麻麻的紙推到楚戈手邊。
「半衰期變量。」陸嘉的聲音還是有點沙啞,「代進去,右旋極值就不會撞了。」
楚戈掃了一眼。
「謝謝。」
手指在鍵盤上飛舞,把那串公式轉化成C語言的邏輯語句。
時間一點點過去。
窗外的夜色越來越深。
兩點。
四點。
陳拙看完了手裡那份十幾頁的預印本論文。
他把筆帽合上,揉了揉有些發酸的眼睛。
轉頭看了一眼。
王大勇已經靠在床架子上睡著了,呼嚕聲打得震天響,手裡還捏著一把小螺絲刀。
陸嘉趴在桌子上。
他面前的草稿紙上寫滿了公式。
他閉著眼睛,呼吸均勻綿長。
那個把他折磨了一晚上的心結解開了,他終於睡著了。
楚戈還坐在電腦前。
他嘴裡叼著一根棒棒糖,雙眼布滿血絲,死死盯著屏幕上的進度條。
陳拙站起身,倒了杯水。
「還有多少?」
「快了。」楚戈的聲音啞得厲害,「最後一次全量編譯。」
機箱裡的風扇在瘋狂轉動。
屏幕上的漏斗圖標轉了足足一分鐘。
「叮。」
系統發出一聲清脆的提示音。
一個小窗口彈了出來。
楚戈拿下嘴裡的棒棒糖,手指微微有些發抖,鼓下了回車鍵。
黑色的命令窗口裡,綠色的數據流像瀑布一樣傾瀉而下。
順暢。
沒有任何卡頓。
一萬條。
五萬條。
十萬條。
最終,光標停留在最後一行。
檢索完成,總耗時2.3秒。
比僱主的要求還快了整整一倍。
楚戈靠在椅子上,長長地吐出一口氣。
他沒喊也沒叫。
只是疲憊地搓了搓臉。
「跑通了。」
楚戈轉過頭,看著陳拙,扯起嘴角笑了一下。
陳拙點點頭,喝了口水。
「把測試包打包發過去吧,收錢睡覺。」
楚戈按了幾下滑鼠,把生成好的程序文件壓縮。
他點開那個黑客論壇的私信界面,準備給對方發過去。
就在這時,對方的頭像閃了起來。
發來了一個十幾兆的壓縮包。
緊接著是一條留言:
【兄弟,代碼如果跑通了,順手幫個忙。這是我們網站初期的兩萬條原始圖片數據標籤,你用你的新程序跑一遍,把裡面的亂碼和錯誤標籤篩出來,跑完沒問題,一千五百塊錢我立刻打你卡上。】
楚戈愣了一下。
他點開那個壓縮包,解壓。
打開裡面的文本文檔。
只看了一眼,楚戈的臉就黑了。
密密麻麻的文本,幾百頁。
裡面全是不規則的數據。
有些是正常的中文標籤風景,人物。
有些是亂碼%amp;:*#¥。
還有些是拚寫錯誤的英文單詞,甚至是半角全角混雜的標點符號。
這根本不是程式設計師寫出來的東西,而是那些不懂電腦的文員,用各種千奇百怪的輸入法手動錄入的原始垃圾。「怎麼了?」
陳拙看出了楚戈的不對勁。
楚戈指著屏幕上的那堆亂碼。
「對方讓拿這些原始數據跑一次測試。」
楚戈頭疼地揉了揉太陽穴。
「這活兒沒法干,這數據太髒了,裡面全是不符合任何邏輯規律的人為輸入錯誤。」
陳拙走過去,看了一眼屏幕。
「寫個正則篩除腳本不行麼?」
「不行。」
楚戈搖頭。
「正則表達式只能抓取有規律的東西,你看這行,他把蘋果打成了pinguo,旁邊還跟了個火星文,這種東西一進底層邏輯,程序立馬就會判定為異常變量,直接卡死。」
楚戈咬著牙。
「這幫孫子,自己不願意花時間去清理這些垃圾數據,想用一千五百塊錢讓我連代碼帶清洗全包了。」旁邊,陸嘉被楚戈的說話聲吵醒了。
他迷迷糊糊地直起身子。
看了一眼屏幕上的那些東西。
「這沒有數學規律。」
陸嘉看了一眼就得出了結論,聲音帶著剛睡醒的沙啞。
「代數方程解不了無序的錯誤。」
屋裡安靜下來。
楚戈靠在椅子上,看著屏幕上的兩萬條數據,有些泄氣。
熬了一整夜,腦子都快炸了。
就差這臨門一腳。
「要不....我明天寫個稍微複雜的腳本,多加幾個條件判斷,能篩多少是多少?」
楚戈自己都沒底氣。
這種髒活兒,用代碼去防人為的愚蠢,是最費力不討好的。
陳拙看著屏幕上不斷滾動的亂碼。
他伸手拿過滑鼠,往下拉了幾頁。
「不用寫腳本。」陳拙鬆開滑鼠,「機器分不清這種無規律的錯誤,但人眼分得清。」
楚戈愣了。
「這兩萬條,純靠人眼看?那得看到什麼時候去?」
「一個人看兩萬條當然慢。」
陳拙走到自己的書包前,拿出一張嶄新的空白軟盤,插進楚戈電腦的軟碟機里。
陳拙把那個裝滿原始數據的文本文檔拖了進去。
拔出軟盤,裝進口袋裡。
他看了一眼楚戈,又看了一眼揉著眼睛的陸嘉。
「這活兒交給我吧。」
陳拙走到窗前,拉開一點窗簾。
外面的天已經蒙蒙亮了。
「今天早上正好沒課,你倆把電腦關了,回去睡覺。」
陳拙轉過身。
「明天晚上,我把乾淨的數據帶回來,你直接跑程序交差。」
楚戈張了張嘴,想問陳拙去哪找人看這兩萬條數據。
但看著陳拙那副淡定的樣子,他把話咽了回去。
「行。」
楚戈也是真熬不住了。
他關了電腦。
把滿桌子的草稿紙收攏起來,塞進兜里。
拍了拍還在打呼嚕的王大勇。
大勇迷迷糊糊地醒過來,抹了一把嘴角的口水。
「跑完了?」
「跑完了,睡吧。」
楚戈站起身,伸了個懶腰。
他看了一眼陳拙,沒多說客套話。
「謝了。」
楚戈帶著陸嘉,走出了215的門。
上午十點。
科大老圖書館。
陽光透過常春藤的葉子,在木地板上投下斑駁的光影。
借閱前沒什麼人。
蘇微正坐在一張高腳凳上。
手裡拿著一本有些年頭的線裝書,正在仔細地修補脫落的書頁。
陳拙走過來,把手裡的軟盤放在木製面上。
發出輕輕的一聲響。
蘇微擡起頭。
目光落在那個軟盤上,又看向陳拙。
「借書卡?」蘇微問。
「不借書。」
陳拙拉過旁邊的一張椅子坐下,隔著借閱看著她。
「找你幫個忙,賺點外快。」
蘇微放下手裡的線裝書和膠水,拿過旁邊的一塊干毛巾擦了擦手。
「說。」
「這個軟盤裡,有兩萬條雜亂的文本數據。」
陳拙指了指那個黑色的塑料方塊。
「裡面全是人為錄入的標籤,有很多拚寫錯誤,亂碼和無意義的符號。」
他看著蘇微的眼睛。
「機器的算法剔除不了這種沒有邏輯規律的髒數據,需要人工一行一行地看,把有錯誤的行刪掉,保留格式正確的。」蘇微看著那個軟盤,沒說話,在心裡評估工作量。
「兩萬條,如果速度快,大概明天。」
陳拙語氣平緩。
「明天下午六點之前給我,五十塊錢。」
蘇微伸手拿過那個軟盤。
翻看了一下背面。
「你們這算什麼?外包的外包?」
蘇微嘴角微微動了一下。
陳拙笑了笑。
「算是吧,草班子遇到點算力解決不了的體力活。」
蘇微把軟盤放進自己馬甲的口袋裡。
「這活兒我接了,但圖書館的電腦不能亂插軟盤,我得晚上回宿舍,借室友的電腦看。」
「可以,明天下午我來拿。」
陳拙站起身,準備走。
「等等。」
蘇微叫住他。
陳拙回過頭。
「如果是文本文檔,這兩萬條數據全是連在一起的。」
蘇微看著他。
「我之前在相關的書里看過一點這些,我刪掉一行,怎麼保證你們導入的時候,行數對應的圖片不串位?」陳拙看著蘇微,眼底閃過一絲驚嘆。
這姑娘不僅手腳麻利,腦子更是極其清楚。
「我在那個文本里,已經寫了一段宏。」
陳拙回答。
「你不用直接刪文字,遇到有亂碼的那一行,你只需要在最前面敲一個數字0,遇到正常的,敲1。」他稍微停頓了一下。
「格式我會回去重新匹配,你只負責分辨對錯就行。」
蘇微點了點頭。
「明白了,明天下午六點,來這兒找我。」
她重新拿起膠水,低頭繼續修補那本線裝書。
第二天傍晚。
陳拙準時出現在老圖書館。
蘇微把軟盤推給他。
眼底下有淡淡的黑眼圈,顯然昨晚熬了夜。
「弄完了,一共刪了三千四百一十二條髒數據。」
蘇微的聲音有些疲憊,但依然乾脆。
陳拙拿過軟盤,從兜里掏出一張五十塊的紙幣,放在桌上。
「辛苦。」
蘇微把錢收起來,放進抽屜里。
「錢貨兩清。」
當天晚上。
216宿舍。
楚戈把陳拙拿回來的軟盤插進電腦。
讀取出那個被蘇微標記過的數據文本。
他寫了個最簡單的讀取腳本,只抓取開頭標記為1的數據。
幾秒鐘後。
一萬六千多條乾乾淨淨、沒有任何亂碼的測試數據被提取出來。
楚戈把這些數據導入那個跑通了的底層程序。
回車。
屏幕上的數據流瘋狂滾動。
沒有任何報錯。
沒有任何卡頓。
一氣嗬成。
楚戈長長地出了一口氣。
他把最終的程序包和測試結果打包,發給了論壇上的那個僱主。
半個小時後。
對方回復了信息。
【牛逼,速度比我們預期的還快,卡號發來,馬上打款。】
楚戈靠在椅子上。
他轉過頭,看著正站在自己旁邊的陳拙,又看了一眼正在看書的陸嘉。
他咧嘴笑了。
「搞定了。」
周末的晚上。
科大南門外的一家露天燒烤攤。
夜風吹得旁邊的葉子嘩啦啦響。
攤位上冒著濃烈的炭火煙氣和烤羊肉的孜然味。
靠路邊的一張摺疊圓桌旁。
坐著五個人。
楚戈,陳拙,王大勇,陸嘉,還有被陳拙叫出來的蘇微。
桌上擺著兩大盤烤肉串,幾盤涼菜。
蘇微面前放著一瓶健力寶,她今天沒穿圖書館的馬甲,換了一件普通的黑色外套,安靜地坐在一邊喝飲料。陸嘉對這種煙燻火燎的環境很不適應。
他皺著眉頭,拿著一串烤肉,看著簽子上面沾著的一點黑炭灰,遲遲沒有下嘴。
楚戈起開兩瓶加多寶,遞給大勇一瓶,自己拿了一瓶。
「來,走一個。」
楚戈跟大勇碰了一下,仰頭灌了一大口。
他放下飲料,用手背抹了一把嘴巴。
從兜里掏出一個厚厚的信封。
裡面裝的,是從自動取款機里取出來的一千五百塊錢現金。
全是嶄新的一百元面額。
在2002年,這絕對是一筆能讓大學生眼紅的巨款。
楚戈把信封放在桌上。
他收起了平時那副桀螯不馴的樣子。
在這個小圈子裡,技術碾壓一切,他知道自己幾斤幾兩。
「這筆錢,我接單的時候沒想那麼多。」
楚戈看著陳拙,語氣認真。
「如果不是你的那個架構,還有陸嘉的公式,這單子我絕對得砸在手裡。」
他直接拉開信封,開始數錢。
動作極其乾脆,沒有任何拖泥帶水。
他抽出六張一百的,放在陳拙面前。
「陳拙,你搭的宏觀框架,這程序的骨頭是你捏的,拿大頭。」
陳拙看著面前的六百塊錢。
沒有推辭,也沒有說那些虛偽的客套話。
他很自然地伸手拿起來,放進自己的口袋裡。
「好。」
楚戈又抽出四張一百的,推到陸嘉面前。
陸嘉愣了一下,看著那些錢。
「你的數學邏輯幫我解了死結。」楚戈看著他,「這是你應得的。」
陸嘉皺著眉頭。
「我不要。」
他的聲音很小,帶著他一貫的軸勁。
「我給你寫那個,不是為了錢,我只是覺得它錯了,必須把它改對。」
楚戈拿著錢的手僵在半空。
他知道這小子的脾氣,逼他拿錢比殺了他還難。
陳拙在旁邊夾了一口涼菜,慢條斯理地開口了。
「拿著吧。」
陳拙看著陸嘉,語氣溫和。
「這是你的知識在這個世界上運轉出來的價值,知識是有價格的,你應該習慣這件事。」
陸嘉看了看陳拙。
他沉默了一會兒。
伸手把那四百塊錢拿了過來,隨便揣進了兜里。
楚戈鬆了口氣。
他又抽出兩張一百的,遞給正在埋頭吃肉的王大勇。
「大勇,大半夜折騰你搞散熱,還差點燒了你的插排,辛苦費。」
大勇憨厚地笑了笑。
也沒客氣,把錢接過來,塞進褲兜,繼續啃手裡的羊腿。
楚戈手裡還剩下三百塊。
他抽出其中一張五十的零錢,遞給坐在對面的蘇微。
「蘇微同學,排雷的錢,陳拙掏了五十,這五十算我給你的。」
蘇微看了一眼楚戈,又看了一眼陳拙。
沒說話,把錢接過來收好。
楚戈手裡捏著剩下的二百五十塊錢。
他看了一眼手裡的錢,忍不住罵了一句。
「靠,怎麼是個二百五。」
桌上幾個人都愣了一下,隨即大勇忍不住哈哈大笑起來。
連一直有點繃著臉的蘇微,眼底也閃過一絲笑意。
楚戈無奈地搖了搖頭,把錢揣起來。
「行了,各歸各得,這頓燒烤我請。」
他拿起桌子上的加多寶。
「以後論壇上再有這種活兒,我應該還少不了接。」
楚戈看著桌上的幾個人,眼神里透著一股極客的狂熱。
「我鼓代碼,陳拙搭架構,陸嘉算邏輯,大勇搞後勤,蘇微同學搞校驗,咱們這草班子,能在這大學裡橫著走。」陳拙沒拿啤酒,他端起手邊的水杯,跟楚戈碰了一下。
「不錯的想法。」
陳拙喝了口水,放下杯子。
他轉過頭,看向正吃得滿嘴流油的王大勇。
「大勇。」
「嗯?」大勇擡起頭。
「周末有空的話,帶我去一趟徽州的百腦匯。」
陳拙抽出一張餐巾紙,擦了擦手。
「去攢一新電腦。」
大勇一聽這話,眼睛立馬亮了。
「行啊!配個什麼級別的?奔騰4?顯卡上什麼?還是就你之前說的那套配置?」
「主板和顯卡都要市面上能買到的最好的一檔。」
陳拙語氣平靜。
「硬碟要大,顯示器要純平的,看著舒服一點。」
楚戈在旁邊聽著,有點驚訝。
「配這種頂配的機子,那可得大幾千了。」
「不心疼啊?」
陳拙笑了笑。
他看著不遠處馬路上昏黃的路燈。
「去機房存代碼太折騰,而且教育網下國外的文獻太慢。」
陳拙收回目光。
「工欲善其事,必先利其器,就當是買個工具吧。」
他稍微停頓了一下。
說出了今晚最重要的一句話。
「而且,我還需要你幫我買一私人雷射印表機。」
這句話一出,桌上除了早有心理準備的大勇,其他幾個人都愣住了。
連蘇微都停下了喝飲料的動作,看著陳拙。
「雷射印表機?」
楚戈都以為自己聽錯了。
「放宿舍里?你打什麼東西需要用那玩意兒?那耗材可不便宜。」
「列印國外的預印本論文。」
陳拙語氣很淡,就像是在陳述一個極其普通的日常需求。
「那些外文文獻太多,在電腦上看著傷眼睛,去外面的列印店,長年累月下來,不僅貴,而且麻煩。」他看著桌上的幾個人。
「楚戈,以後論壇上再有這種底層優化的單子,你接著接,遇到繞不開的邏輯,來找我和陸嘉。」陳拙指了指剛才楚戈分錢的位置。
「規矩照舊,按勞分配,各賺各的錢。」
他拿起筷子,夾了一粒花生米。
「賺的錢,你拿去升級你的主板內存,大勇去淘他的二手零件,陸嘉自己攢著買書。」
陳拙看著自己兜里那六百塊錢。
「至於我,國外的那些前沿論文又厚又費墨。」
他溫和地笑了笑。
「我賺的這筆錢,剛好夠我去買A4紙和備用碳粉盒的錢了。」
楚戈咧嘴笑了,他舉起手裡的加多寶。
「也行吧,你開心就好,為了A4紙和碳粉盒。」
大勇也舉起杯子。
陸嘉猶豫了一下,端起面前的水杯。
蘇微拿著健力寶。
陳拙端著水杯,跟他們碰在一起。