十年程序苦旅

2002年7月國際上碩果僅存的free測評組織Softbase繼續進行着從硬件到軟件的數十項年度評選,在Anti Virus Top 100中,來自中國的安天實驗室的Antiy Ghostbusters名列第45名,這固然算不上什麼很大的榮譽,但畢竟是惟一入圍的中國產品。我們今日走近的,就是這個軟件的主程序員之一,中國安天實驗室(Antiy Labs)網絡安全開發組負責人張慄煒。
張慄煒出生在黑龍江煤炭重鎮雞西。初中時代的他,生平第一次接觸到電腦,儘管玩得不亦樂乎,但初中畢業時,在AppleII上寫一個小遊戲,對他來說,已經不是什麼問題。
到了高中,他終於不滿在Appple Basic裏寫一些淺淺的東西了,系統的內部結構吸引了他,但苦於沒有老師指點。高一的一個天氣陰沉的下午,他們班負責爲學校打掃衛生,他從一堆落滿浮灰的資料中發現了1本指令手冊和1本參考資料,頓時他面前一片晴朗。儘管都是英文,但從此他開始了蘋果機上的彙編語言學習。當時每週只有1次計算機課,他苦於上機時間不足,於是義務爲機房打掃衛生來騙取上機的時間。計算機課的老師非常喜愛這個程序迷,於是給他配了一把機房鑰匙。他終於如魚得水。
老師發現除了數學之外,張慄煒的各科成績都在下降,大爲不滿,第一次高考,張慄煒落榜了。三年彙編編程經驗,換取一次大學落榜,沒有人覺得是值得的。也許除了他自己。
參加復讀的張慄煒沒有完全忘記的他的程序員夢想,竟然不知從哪裏找來了一本C的小冊子自娛自樂。他自己回憶說,當時學C沒有任何吃力的感覺,可惜的是當時能找到的資料太少,雞西的書店裏,根本找不到資料,而且那一年沒有上機的機會。
再次高考張慄煒被齊齊哈爾輕工學院錄取,專業是化工機械。至今他的高中老師仍然惋惜:“完全考得上名牌學校的腦袋,就被計算機耽誤了。害人啊。”
來到大學的張慄煒,第一件事情就是到圖書館去借C的編程手冊,齊輕工的條件非常一般,當時的圖書館裏只有一套三卷本的 《Turbo C函數手冊》,張慄煒就都借走了。說來很巧,當時有一個大三的“成名高手”,TC玩得很熟,本來借這套書查閱一直是他的專利,當來到圖書館說書被借走了,而且是被一個大一新生借走,大感詫異。他放出話來,要會會這個師弟。後來,這個掌門師兄,張慄煒,加上另一個和張慄煒一起復讀、一起上齊輕工的兄弟,就在一起混了,由於三人總是把持《Turbo C函數手冊》,人稱TC三人幫。 
學校裏的機器配置不高,愛去上機的人不多,他們三個晚上看書交流,白天一起上機。張慄煒度過了生命中比較愜意的一段時光。
大二的上學期張慄煒因頻繁逃課,被降級處理。
連掌門師兄都覺得很過意不去,但降級後的張慄煒一切如故,除了看書和編程,非常熱衷的事情,就是參與組織學生計算機協會。
1994年的寒假,張慄煒以齊輕工學院學生計算機協會副會長的身份,走訪了哈爾濱工業大學學生計算機協會。由於正值假期,他只見到了他的高中同學,當時哈工大計協開發部副部長桑樹多,他們都如數家珍的介紹起各自計協的組織情況和骨幹, 當時他並沒有在意桑樹多提到的一個叫肖新光的名字。更不會想到,7年後,他和這個人會把“接頭”地點,選定在哈工大正門。
又一年過去了,95年的十月十日十點中,當張慄煒的同班同學們順利升入大三的時候,張慄煒因多科不及格被學校開除。
離開學校的前幾天,張慄煒走遍了齊齊哈爾爲數不多的電腦公司,那些公司老闆絲毫不覺得一個彙編和C爛熟於心的程序員會比一個裝機工更有價值。
失去了才知道可貴,一臺可以使用的計算機竟然那麼難於尋覓。家裏也有一些變故,欠了很多外債,張慄煒陡然感覺到生存的壓力。回到家的張慄煒,每天早上到很遠的市場上批發水果,擺攤叫賣。
在中國式的那種街道集貿市場中,臉色烏黑的張慄煒,和那些高聲吆喝的小販沒有任何不同,如果說不同,那就是他永遠揹着一個帆布軍挎,而書包裏仍然會放着一本《計算方法》或者《數據結構》。
他買貨看書兩不耽誤。
賣水果之後,張慄煒開始賣冰糕。張慄煒的繼續學習之旅是與這些同步的,儘管記不清具體時日,但這種日子絕對不止一年,不知道這種日子的痕跡有多深刻。直到如今,張慄煒還總是買回成斤的冰淇淋給安天的兄弟們享用,或者成一袋子的水果。以至大家懷疑,那是一種水果情節,或者冰糕後遺症。
如果對程序員來說,水果小販的經歷已經難以想象,就更無法想象張慄煒還當過修路的民工。
在一羣膀大腰圓的民工中,他顯得很瘦弱,但他不會幹得比別人少。
如果你從牡丹江做汽車到雞西,那段公路上就有我的汗水,張慄煒自豪地說。
民工的生活很苦,還要受工頭的壓迫,張慄煒爆發了,一天,他和工頭髮生了衝突,那是他平生第一次打架,對手是一個人高馬大的工頭,結果可想而知。張慄煒決定離開包工隊了,他是沿着公路走回雞西的,當他看到家鄉熟悉的建築,淚水終於滑落了,不是因爲想家,不是因爲委屈,是因爲當他重重的把行李捲摔在地上的時候,一本《數理邏輯》從行李捲兒中滑落出來,他突然想起了,他是一個程序員。
他的手指已經超過一年沒有觸摸到鍵盤了。
他告訴當時在北京某公司擔任程序員的桑樹多,他要到北京找工作。 
桑樹多幫他聯繫了幾家公司,可是要不就是簡歷人家看了就搖頭,要不就是簡短的面談後,連實習的機會也不會給。沒有人相信,一個只讀了兩年大學,又沒有就職於計算機公司的人,會是一個成熟的ASM/C程序員。
他再次回到了黑龍江,開始了在計算機公司的打工,拼活之旅。攢機器,掐網線,看網吧,總之,一切沒有技術含量的活都幹過了。
但這只是表面現象,內在中,他正試圖讓自己完成一個資深的DOS程序員到資深Win32程序員的轉變。非常偶然的一個機會,讓這個轉變得以徹底完成。
當時的安天實驗室正全力給航天部某基地開發一個型號加密網關係統,因此原計劃開發木馬查殺工具Antiy Ghostbusters 2.0就沒有人力了。
一次,實驗室創始人之一的肖新光與當年哈工大計協的夥伴桑樹多談及此事,桑樹多一下就想起了張慄煒。於是,桑主持了一次OQ上的三人會談,一拍即合。
只有程序員才能衡量出程序員的價值。
2001年2月,白雪紛飛的殘冬裏,他們約見在哈爾濱工業大學正門,爲了便於確認,張慄煒告訴肖新光,他揹着一個帆布軍挎,裏面放着一隻燒雞。
張慄煒只在做爲安天實驗室本部的民宅裏呆了一天,當時實驗室多數成員在武漢做航天部項目,實驗室決定爲了便於管理,所有開發到武漢進行,當天他和留守人員吃光了那隻燒雞,然後就和新的夥伴們踏上了南下列車。
4個月後,能夠查殺4200種木馬的Antiy Ghostbusters 2.0誕生了。
肖新光說:“認爲張慄煒行,當時完全是一種直覺,因爲此前雙方幾乎沒有談任何具體的技術,剛開始的第一個月,進展特別緩慢,我甚至對他有些失望。但過了第一個月張慄煒就像火山在噴發”,他被壓抑的太久了。
在安天,張慄煒得到了一個傳奇人物的指點,他就是安天實驗室創始人之一,曾受到美國貝爾專題研究邀請的趙志剛高級工程師。在張慄煒眼中,趙工是那種集合天才程序員和專家類型特性的人物。
在編寫Ghostbusters 2.0的同時, 張慄煒參加了安天IDS產品Antiy Numan V2.0的開發,並開始着手規劃Antiy Numan 的新版本。
Antiy Ghostbusters 2.0開發完成後,安天實驗室經過再三考慮,決定不發佈這個版本,而直接以此爲基礎,開發更爲強大的集成安全工具Antiy Ghostbusters 3.0,新的工具融合了木馬查殺、應用程序網絡訪問控制,文件監控、註冊表監控和安全工具套件。這次不再是張慄煒單兵作戰,而是小組協同作戰,張慄煒擔任項目系統程序員,負責掃描、查殺引擎和底層驅動的編寫。
Antiy Ghostbusters 3.0規劃期爲15天,實際開發時間爲45天,測試只有5天,就上站發佈,幾乎違反了所有的軟件工程原則。但這樣一個大集成的軟件的穩定性卻在所有人的意料之外。軟件發佈之後,除了發現了掃描到某種特殊的zip包會出現掃描的異常中止外沒有出現大問題。
對於Softbase的排名,張慄煒並不滿意,首先Antiy Ghostbusters並不應歸入反病毒類產品,而應歸入安全產品(Security),同時Softbase的排名,是根據國際上PC Magazine雜誌報道的次數。由於Antiy Ghostbusters僅僅參加了2002年PC Magazine的橫向測試,因此排名不算高。
張慄煒在安天,即將度過29歲生日,在1年多的時間裏,他從高級程序員晉級爲系統程序員,也成爲了安天實驗室的第九位股東,並開始領導安天負責網絡安全研發方向的Antiy Numan小組。
十年程序苦旅,一番少年情懷。

採訪手記——安天的程序員體制
安天的程序員體制如下:
見習程序員——程序員——高級程序員——系統程序員——系統分析員。
和大家印象中的體制相比,多了見習程序員和系統程序員兩個層次。對此,安天實驗室的解釋是:一般程序員到安天需要一個熟悉過程,不能馬上上手,同時,需要幾個專門負責底層技術的人,他們就是系統程序員。張慄煒就是系統程序員。
值得一提的是:安天的系統程序員都不是科班出身,張慄煒大學肄業,另外兩位程序員學歷也不高,也許他們是那種所謂的鬼才。不過安天的兩位Leader並不同意,他們認爲:張慄煒是那種結合和編碼型程序員和Crack型程序員特色的人。永遠寫出更值得放心的程序,也永遠敢於承擔艱難的攻關任務。——“上的廳堂,下的廚房”,在一個輕鬆的玩笑中,採訪結束了。
發佈了17 篇原創文章 · 獲贊 31 · 訪問量 14萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章