十年程序苦旅

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万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章