程序员:为什么受伤的总是我

本文写于1999年。

中关村每一个程序员心里几乎都有一本辛酸账,中关村的恩怨中70%以上属于技术和市场的恩怨。为什么程序员有这么多的苦水要述,是他们的期望太高?还是……为什么,许多程序员最好必须走上自己做总经理的路,自己给自己做主,才算走对了路?

周志农的遭遇

1991年,“自然码”的发明人周志农先生和超想公司共同创业时,他决不会想到,

1994年,他会在一次计算机展示会上大声宣布和超想公司彻底分手,同时收回“自然码”的使用权,我想此时周志农先生的心情一定异常复杂:激动、愤怒、委屈亦或兼而有之。像周志农先生这样和所在公司决裂,在中关村已不算新闻。只不过周先生激烈的举止和悄然进行的“跳槽”大相径庭,故而分外引起业界注意。

1995年,“自然码”发明人周志农先生在“‘自然码’著作权”一案中一审被判“侵权”,他和他所在的长城商务促销公司将为此赔偿超想公司40420元,承担双方诉讼费26030元,并被取消了复制、销售“自然码”软件的资格。

尽管先有自然码汉字输入法,然后才有超想公司;尽管用户先认识“自然码”,然后才知道有个超想公司;尽管很多用户是冲着自然码输入法,才购买超想DOS的;尽管周志农先生是超想公司的总工程师。但当他离开超想公司时,他就什么也没有了。

法院认定,含有自然码输入法的CXDOS是职务作品,著作权应归超想公司所有,同样,和DOS版ZRM具有相同编码的ZRMforWin2.0是超想公司委托赵全新开发的产品,根据双方协议,软件著作权归超想公司所有,赵全新享有署名权。

如果说CXDOSV5.0是职务作品,那么“自然码”1.0一定不是职务产品,因为它发表于1989年,那时超想公司还没个影呢!如果说“站在1.0版‘自然码’肩膀上”的5.0版是职务产品,那么“自然码”5.2一定不是职务产品,因为5.2版发表在周志农离开超想之后,而且“自然码”5.2版较之5.0版有很大的改进,比如在使用高位内存方面。另一方面,周志农和“自然码”Windows版的关系,也不像有些人想的那样简单,可以说没有周志农自然码DOS版,何来“自然码”的Windows版。ZRMforWin好比是“自然码”这棵大树的一个枝杈,谁能说它和作为树干的自然码输入方案没有天然的联系呢?

但周志农先生一审输了,这是事实。法不容情,法律只讲条文,不讲感情。一个研制发明了“自然码”的人最终“侵犯”了“自然码”的著作权,这在感情上,总让人觉得过不去,但它合乎法理,法本无情。

1999年,周志农超想一案最终结案。周志农和超想达成一致的和解意见。双方放弃以前的所有讼争,今后超想公司只能使用“超想自然码”,不得使用“自然码”及仅仅以“自然码”为前缀的名称。

这场官司一打就是五年多,对超想,对周志农都不是好事。

高傲的员工无情的老板

在中关村,老板和老板会面,员工和员工碰头,谈论最多的就是某某从某公司出走,某某被老板“炒”了,某某跳槽,某某负气另起炉灶,如此等等。

尽管大家都是有知识的人,有些话不便直说,但频繁地发生“炒鱿鱼”和跳槽现象,却每每把表面的斯文撕得粉碎。这背后隐藏的心理大约是:老板感觉手下员工居功自傲、毫无节制地摆谱,漫无边际地要价,不知道自己是谁,老板把这样的员工称之为高傲的员工;而员工则觉得自己的老板不仁不义,只知拼命赚钱,攫取最大利润,不知关心员工甘苦,员工把这样的老板称之为无情的老板。

高傲的员工自有高傲的理由:作为程序员,他们会认为,公司软件之所以畅销,是因为自己的程序写得好。自己的技术是这个公司立业之本,所以自己是这个公司的命根子,公司一刻也离不开自己;高傲的销售经理则宣称,本公司机器卖得好,全仰仗自己推销有方,“好机器多着呢,为什么只有咱们公司的能销得最好?”

无情的老板自然也有充足的理由“无情”:第一,没有我的投资,何来你的优秀软件;没有我投资进货,你又能推销何物?是我给你们搭了一个演出舞台,给了你们一个就业的机会,你们应感谢我才对,还敢摆什么谱?第二,你以为你是最好的,你就是最好的了吗?好程序员有的是。中关村最不缺的就是程序员,随便就能抓到一把。另外,清华、北大还有大量的优秀程序员储备,而且价格便宜;至于推销,说到底只是件体力活,有什么可夸耀的。

高傲的员工觉得无情的老板无情,一是因为老板给的工资太低,和自己的劳动价值不成正比;二是因为公司只注重宣传品牌,从来不提研发人员。一位外地来京的优秀程序员在某公司干了两年后,愤然回乡。临行时,他说:“我这两年,除了每月2000元的工资外,什么也没捞到。到头来,既没有名,也没有利,做出的产品是老板的,创出的品牌是公司的,都和我毫不相干,就是再干十年,我还是‘打工仔’。我要回家,中关村没有我的梦想!”而无情的老板对这位优秀程序员的离去丝毫也没有挽留的意思,老板觉得,这位程序员虽然在DOS上“很牛”,但现在是Windows时代,DOS上的豪杰,在Windows上,一样要从头学起,而这位DOS高手的年龄已超过学习的黄金期了,廉颇老矣。

高傲的员工觉得老板给自己的工资低、荣誉低,是横向比较的结果,员工们最爱说的一句话是:“凭我这能力,在别处值4000,在这才……”。老板听见这话,会立即反问他,“那,你为什么不去别处!”高傲的员工此时会被问得哑口无言,但他心里会暗自嘀咕:“为什么不去?不是还没联系好吗?你以为我会赖在你这里不走?”这大概就是“跳槽”的前奏。

员工喜欢比较,老板自然也有比较的权利,“为什么别人投200万,当年就实现100万的利润,而我才有50万的利润,是你们员工不给我上心,还是因为你们能力不够?嫌我给的工资少,还有比我给的更少的公司呢?为什么眼老往上瞧。”

高傲的员工对付无情老板的办法很多。比如,消极怠工。3个月能写完的程序,非要拖上半年。因为程序一旦写完,老板就不会给你软件开发期中的高工资了。老板为了避免程序员消极怠工,往往采取承包计件工资的办法,以加快软件开发周期,但如果程序员觉得老板给得太少,他会把软件写得很粗糙,敷衍了事。但这粗糙的程序应付老板检查还是绰绰有余的,因为程序的好坏,很难有个统一的衡量标准,同时,老板也很难有程序员那样的理论水平。为防止老板炒自己的鱿鱼,程序员一般很少在原程序里加注释,这样老板要“炒”一个程序员,等于要“炒”掉一个软件,没有注释的原程序,对别人来说等于是天书,软件要升级,只能重写。曾经发生过这种情况,某财务软件前后8个版本,每个版都是由不同的程序员重新写的。

劳资关系一旦进入“高傲的员工,无情的老板”死循环,你看我不顺眼,我瞧你不满意,剩下的只有老板炒员工鱿鱼或者员工炒老板鱿鱼了。为避免此种想象的发生,有人提出了“技术入股”模式,试图解决这一棘手的问题,但在法制尚待健全的今天,老板最后不给员工兑现技术股,员工又拿老板怎么着?另外企业成败兴衰,并不完全取决于员工是否努力,风云变幻的市场因素有时是不可控制的。所以,有些员工宁愿拿即得的高工资,也不愿入所谓的“技术股”。

中国软件业因他们而精彩

求伯君、吴晓军、雷军、朱崇君、周志农、刘旭、简晶作为中国第一代成名的程序员,他们个人奋斗的酸甜苦辣同中国软件的起落同步。国内接触过计算机的人都使用过或仍然使用着他们用智慧和心血凝结而成的程序。也许他们中的有些人会随着时间的流逝而失去昔日的光彩。有些会在新一轮的角逐中再次成为赢家,无论如何,在他们身上会有许多值得玩味的东西,这可能是中国软件的一笔特殊财富。

简晶渴望激情

“中国龙”的作者简晶说:“我越来越觉得,程序员是吃青春饭的。一个程序员对于编程所怀有的激情,不可能长期保持,至少不可能连续地长期保持。”

简晶的此番论述生动地道出了时下大家十分关心的“关于新老程序员划分”的正确解释。我们常说某某程序员“老了”,其实,这个“老”字指的并不是其生理年龄(比如30岁这个分界线),而是其心理年龄。

衡量一个程序员老与不老,主要还是要看他是不是还能焕发出学习新知识、写出经典程序的激情。有些程序员是自愿“老了”,因为他们已经丧失了对新技术的狂热与兴趣,丧失了过“除了睡觉就是写程序”的枯燥、艰苦生活的勇气。我的朋友王祖朝曾经是编写《天汇》的主力之一,30多岁的他现在仍然还斗志旺盛,他说他现在觉得写程序并不比谁差,他说他写到40岁,应该没有问题。

简晶显然并没有老,当然也不肯服老。他开始转到VC时,我问他,“为什么不早些转到Windows上来?我们差一点把你列入‘老前辈’了。”简晶说:“并不是我想转就能转的,在此之前,我一直肩负着UCDOSSDKforC/C++的开发任务,实在是没有时间学习啊。”

周志农问简晶:“用SDK的人多吗?”简晶说:“不多。有本事用C语言的人,现在都转到Windows上去了,现在还在DOS上编程的大都只会些FoxPro。”看来简晶继广受好评的“中国龙”之后,做了一个不是太合适或者说是曲高和寡的产品。

简晶现在的工作是为新版UCwin做实用工具。他已经做好的一个被鲍岳桥称作“Mail急救包”的程序。

上网的人都有这样的经历——给台湾或海外朋友发一封中文的电子邮件,用GB码写完后,考虑到对方不能看GB码文件,还要把其转换为BIG5的文件,但究竟有没有转换成功,还要转发给自己一份看一看,才算最后放心。但如果对方连BIG5的中文系统都没有,该怎么办?“Mail急救包”的解决方法是:把中文MaiL事先做成一个不依赖于汉字系统的在包括西文环境在内的任何环境下都可以显示中文的文件。这有点像郑州洪涛李亚平很早之前就在DOS下做的那个不需要汉字系统支持,就可以显示汉字的软件TTE。它主要用来做软件的README。

谈到作为后来者的UCwin怎样和以汉神为代表的中文平台产品竞争,简晶说我们可能会在BIG5和GB的转换上有所突破。比如,我们购买了BIG5和GB的转化词库,这个词库的使用,可以让UCwin自动区分出GB里“头发”和“发展”两个相同的“发”,正确地在BIG5中对应出两个不同的“发”。

由于当时中文平台的竞争主要集中在BIG5和GB的转换质量上,所以简晶十分关心微软IE4.0中文版是不是已经把BIG5和GB做在了一起,能同时支持GB和BIG5。因为我在金山公司的朋友卢新冬正在做IE4.0中文版的测试,所以我很确定地告诉简晶IE4.0中文版现在还没有这样做。尽管NTWorkstion、IE4.0都自称支持多国语言,但它们对同是汉语的GB码和BIG5码都不能同时支持。但倘若它们同时支持了GB和BIG5,那么简晶们的这一次的努力和辛苦岂不是又要白费了。可怕的微软!

简晶是那种有才情,肯吃苦,喜欢无拘无束的人。现在,他在家写程序,一个星期去公司一次,和其他程序员沟通。简晶的游侠性格还体现在:他曾经没有任何商业目的地将“中国龙”进一步改进为“龙梦2000”放在BBS上,而当时,他的身份已经是希望电脑公司软件事业部的副总工程师了。

有人称简晶为艺术家,我不敢苟同,但简晶的确是一位有着鲜明独立个性的优秀程序员。

吴晓军痴心不改2013

第一次见吴晓军是在科利华集团晓军公司关于商业管理软件的新闻发布会上,当时他正忙着以晓军公司总工程师的身份介绍晓军公司的十个管理软件。我当时很诧异:吴晓军该不会改用Delphi编写管理软件了吧?

后来在京交会上,发现吴晓军仍然钟情2013,耐心仔细地向用户展示他的2013L版。有人对此大惑不解:既然DOS已经日薄西山,而且,现在2013也不是主流的DOS中文平台,连赚取最后利润的机会都没有,那么,还做它干嘛?

但对于一个程序员来说,一个做了10多年,曾经又被广泛认可的软件,想要轻易放下,绝不是件容易的事。就像简晶离开还要完善“中国龙”,陈江宁离开怡江明星还要把“天汇”在Pwin95/EOS小窗口下切换而不花屏改好一样,吴晓军也要把现在DOS中文平台所能达到的技术高度,全做到2013上。有没有人用是另一回事,做好2013则是吴晓军的心愿。吴晓军此刻的努力更多的可能只是为检验自己的能力。既然是为了实现自我,谁还会去管这些努力,能否带来利润?

对于后来成为市场第一的DOS中文平台的是UCDOS,而不是最早成名的2013,吴晓军的解释是:他没有抓住机会。“早在1993年的时候,我们已经有能力做‘直接写屏’的软汉字系统,但那时公司的汉卡卖得正火,市场人员坚决反对推出软汉字2013,这样就给了UCDOS后来居上的机会。”

为了抓住机会,吴晓军是有魄力的。为了推动产品,吴晓军曾经卖掉过汽车和住房。这是许多发了一点小财,就整天想着怎样护住钱袋子的生意人所绝对不可比拟的。吴晓军和机遇擦肩而过,不是因为眼光短浅,也不是因缺乏魄力。

世事无常。谁能想到吴晓军会离开以自己的名字命名的晓军公司,然后又回到晓军公司挂个总工程师的名份。他现在每天都要去中国农业生产资料集团公司信息中心上班,主要工作是网络和机器的维护工作,他是那里的总工程师。

吴晓军现在最开心的是,2013的老用户找上门来,求他能帮助改进一下2013,以满足新的需求。许多用户告诉吴晓军,他们仍然在用2013,而没有改用UCDOS,因为2013打印速度比UCDOS快,这让吴晓军很满足。

包括鲍岳桥在内的许多做中文平台的程序员都承认自己在做DOS中文平台时,从吴晓军那里汲取了丰富的营养,UCDOS“主刀”鲍岳桥的第一本书就是《2013剖析》,想必这本书为他以后做UCDOS奠定了坚实的基础。尽管经历了许多风雨,但吴晓军还是保持着风趣幽默的性格。在周志农的婚礼上,有人称自己是“大老粗”。吴晓军则讲:“你算什么大老粗’!比岁数,我比你‘大’,比年龄我比你‘老’,所以我才是‘大老粗’。”

吴晓军曾经用算不上开发工具的DEBUG写下了2013H这样壮丽的篇章,H版以后他开始用汇编,现在他打算用VB写程序。对于像吴晓军这样的传奇人物,不应该过多地考虑他在使用什么开发工具,有人用了一辈子VC,也没能写出一个被10个人用过的程序,而吴晓军用十分笨拙的DEBUG却写出了几乎每个使用过计算机的人都用过的2013。

周志农梅开二度再创自然

即将走出版权官司困扰的周志农,在1996年5月的时候,已经意识到“自然码”的升级远比自己官司的胜负重要。作为“自然码”作者、著作权人,周志农究竟“有没有侵犯‘自然码’的著作权,能否最终取消超想公司“自然码”著作权使用资格”,今后法律自有公论,急也没有用。而且,版权官司只是他和超想公司之间的事,而旧的“自然码”在Win95下“不稳定,不方便,功能不全,智能化处理弱”却是几十万“自然码”用户共同的事。看着许多“自然码”忠实用户,忙乱地在DOS下输入纯文本,然后在Word里面排版的局促,周志农觉得完成一个成熟的能在Win32、Win95下稳定运行的“自然码”已经刻不容缓了。

周志农说:“软件持续升级是程序员在软件发售之初就对用户许下的诺言。这个诺言要一直履行到绝大多数用户彻底抛弃这个软件为止。那种因为公司商业利益或者‘长远打算’,而中途停止软件升级的做法是极端不负责任的。怎么能看着那些积累了大量自定义词,早已得心应手,每天都离不开“自然码”的忠实用户去尝试着改变习惯,改用其他听起来神乎,但并十分不好用的输入法呢?重新熟悉,重新适应、重新积累用户词库对用户来说是一件无比痛苦的事。”

所以,周志农在推出的“自然码”60最新版的README中,第一句话就是,对久等了的用户表示深深的歉意。这是一个优秀程序员应有的品味。面对一次又一次失败的合作,一次又一次地被现实愚弄,周志农仍然书生气十足地相信计算机领域没有合作就不可能有大的发展,目前国内软件开发已经从个人单打独斗发展到了分工合作。

1995年初,周志农找到了志同道合的朋友杜红超、王磊、何公道和高岩文。王磊和何公道是“英汉通”、“即时通”的主创人员。由于“英汉通”是字典软件,与输入法比较相似,所以王磊和何公道写起“自然码”来,驾轻就熟。

周志农一再强调:“得到他们的相助,真是三生有幸。当然,这要感谢洪涛公司的总经理杜红超的介绍和其他人的支持和帮助,杜红超为了“自然码”60版,做出了很大牺牲,因为王磊和何公道同时也在做“英汉通”新版,开发“自然码”必然要分散他们一部分精力。”

“自然码”60版刚刚完成,便在社会引起了很大反映,很多用户提前将升级费寄来,但周志农却不急着将不成熟的软件卖给用户,而是一直等到第二年5月20日才正式发行,这中间曾多次给最初的用户做免费升级。

“自然码”60版推出以后,让周志农颇为意外的是,卖的最好的居然是480元一套增强版,而不是价格才30元注册版。通过了解,才知道其中的原因是:使用自然码的用户往往很集中,一个单位开始有一个人用,后来大家发现“自然码”的确易学好用,便纷纷从全拼改到了“自然码”。这样一个单位买一套“自然码”,全单位都可以用,而注册版则只能在一台机器上使用。

对于“自然码”60版的定价,有人说过高。对此,周志农是这样看的:“产品价位虽然重要,但产品质量和稳定性更重要。有些软件制作时间短,投资少,急急忙忙地推出,结果漏洞百出。对于用户来说,买了这样的软件再便宜也是浪费,也是白花钱。“自然码”不是为了给人试试看的,而是要让用户长期使用的,只有保持适当的价位才能真正为用户负责到底。”

“自然码”从最开始的第一版就比同类其他软件的价格高,现在也仍然是这样。这就是周志农关于性能价格比的看法。

程序高手出身的北京金山总经理雷军曾经对我说:“‘自然码’的加密是我做的,我读过周志农的源程序,他的程序写得效率很高,很精致。周志农应该是80年代中国最好的程序员。”如此之高的评价,不知是否有雷军和周志农私交不错的原因。

“自然码”60版推出以后,周志农在开发上并没有稍作停留,在完成了DOS版的BIG5码输入以后,他又坐在两年前花1万多元买的17英寸MAG显示器前,忙着改进、规范“自然码”的新形旁,构思语句缓冲输入以及Windows版的BIG5输入的总体框架。看着在计算机前忘我工作,且兴趣盎然的周志农,你绝对想不到他已经是36岁的人了。

刘旭凤凰涅槃NFC40

1989年年底,瑞星公司总经理王新找到在中国科学院数学所计算机科学研究室工作的刘旭,邀请刘旭出山,刘旭摔给王新一句话:“40岁以前,只做实验系统,不想搞商品化的软件。”刘旭说出这句话和他的“出身”很有关系。自从1978年九十月份,在炎热的福州,穿棉大衣走进零下5度的机房,在计算机前坐下来,手拨13条语句启动计算机,把自己写在纸带上的程序输入计算机的那一刻起,刘旭脑子里就根深蒂固地认为搞计算机是科研和学问,同商品没啥关系。

1990年,受深圳华星防病毒卡在广告里面宣传一年销两万套的刺激,王新又拿着新加坡的一个杀毒软件TNT再次找到了刘旭,希望刘旭能参照TNT,开发一张反病毒卡。刘旭看了一眼TNT说:“要做肯定要比它做得好,只是我现在没时间。”

盛情难却,刘旭就花了二周时间为瑞星防病毒卡做了很详细的整体设计,找了一个博士生编程,很快做出了产品。

当时走防病毒的路子,一个重要的原因是当时产品必须以卡的形式出现,软盘方式根本就没有人买。既然是卡就有一个升级的问题,杀病毒是针对具体病毒的,必须频繁升级,所以,刘旭当时的主导思想是希望自己设计出的防病毒卡能够防未知病毒。

1993年4月份的时候,瑞星防病毒卡达到了销售的顶点,一个月销了一万套。但后来因为包括公司多元化在内的种种原因,造成了防病毒产品在1994年开始滞后。“1.5版本实际上不兼容DOS6.0,1994年7月开始,国内DOS6.0上得非常快,不兼容性就特别强烈,6月份销量往下跌。一直到11月份,我们才推出Ⅱ型卡。”伤心往事难再提。

1996年7月,应夏恩公司邀请到美国交流反病毒经验的刘旭看到宏病毒在美国泛滥成灾,感染率高达90%,而当时国内还没有出现过宏病毒。美国同行问刘旭,以防未知病毒著称的防病毒卡能不能防住宏病毒?并对刘旭说,如果防病毒卡防不了宏病毒就肯定没有销路,因为在美国能不能杀宏病毒已经成了一个反病毒软件公司能不能生存的首要条件。刘旭回答:“还没有碰到过宏病毒,不知道能不能防。”但刘旭自己心里很清楚,自己的防病毒卡防不了宏病毒。“因为宏病毒和DOS病毒的感染机制不一样,一个感染数据,一个感染程序。”

美国之行,宏病毒给了刘旭太深的刺激,回国后刘旭就开始研究宏病毒。研究之前,刘旭夸下海口,说有个十天半个月就可以搞清楚Word的文件结构。但一真干,刘旭就开始摇头:“Word的文件结构太复杂了!”而且,刘旭感到自己瞎子摸象一样费力分析Word文件结构,假若微软本来就能够提供Word的文件结构,那么,自己的分析岂不是在白浪费时间。于是,刘旭就和公司市场经理一起跑到微软要Word文件结构的资料,但是微软明确地告诉刘旭,绝对不可能提供。同去的市场经理很失望,但刘旭反而高兴了起来,“瑞星公司拿不到Word文件结构的资料,国内其他公司也应该拿不到。我认为机会来了。”刘旭就喜欢和人拼技术。

刘旭开始卷起袖子大干:写一个Word文件,用DEBUG分析一下它的结构,然后,修改这个文件,再用DEBUG分析文件结构在哪里改变了,加上一个宏,分析宏加在了Word文件的哪个部分。“我在大学里搞编译,猜人家的意思,猜得相对比较准。”

刘旭来北京10多年了,1997年春节他第一次没有回福州老家。刘旭对程序人生的概括是“这不是人干的活”,“非常苦,苦不堪言。1997年,将近30天,我每天只睡2个小时,到7月份,我的脸都是绿的。在科学院,我曾经连续50天,每天搞到早上6点多,睡到上午10点起来,然后再干到第二天6点多,编了6万多行C语言,而且全部调通,苦不堪言。”

“做程序没有自我牺牲精神,程序肯定写不好。做程序就是拼命精益求精,永不满足,一定把它做成我目前所能做到的最好的。”

而且“写杀病毒软件,更要带着十分的责任感,因为杀病毒软件在理论上是有副作用的,杀不好会把文件杀坏,杀病毒其实是病毒的逆过程,杀病毒软件如果有问题,本身就是病毒。所以,我写程序的时候,总有一种如临深渊、如履薄冰的感觉,压力很大。”

但“做完之后,大家都承认你做的东西确实有特色,广大用户在用,那种感觉不是用钱能回报的。所以,下辈子从头再来,我可能还是写程序,程序给我带来很多乐趣。”写程序还可以满足刘旭不服输性格的需求。“我这人很自负,很难有一个人让我很服气,除了我不在意的方面,否则我一定都要超过别人。”至少写反病毒程序,刘旭永远都要求自己超过别人。“我可以吃再多的苦,可以苦不堪言,可以连日加夜地写个不停,但我不能忍受别人的反病毒程序比我强,我不能容忍这种情况发生。”

苦干了5个月时间,1997年3月,刘旭拿出了第一个杀宏病毒的产品,但当时并没有引起很大的反响。对于滞后了一年迟来的反响,刘旭说,他要特别感谢Word97的“宏警告窗”,刘旭把“宏警告窗”称为检验反病毒软件质量的一块试金石。“它像一道关隘,能挡住所有带有宏的Word文件,不管这个宏是病毒,还是用户自己写的正常宏,反正只要是有宏,它就跳出来发出警告。这样反病毒软件到底有没有把宏病毒清除掉或者有没有把用户定义的宏当作宏病毒清除掉都会被看得一清二楚。Word7.0的时候,还没有‘宏警告窗’,所以反病毒软件的好坏并不是很直观。”刘旭认定瑞星8.0能够经得起Word97的考验,所以,他逢人便介绍这种用“宏警告窗”检验杀毒软件质量的方法。

朱崇君全靠自己

朱崇君在回忆CCED第一个Copy是怎样卖出去的时候,脸上始终盛开着笑容。“那时,我还在清华读研究生,天津大学力学系的用户在宿舍找到了我,他们问我,‘这就是你的公司?’我说这是宿舍。他们想买CCED,问多少钱。我当时真的没有想到CCED还能卖,更不知道CCED应该卖多少钱。于是,我没有道理地问人家:‘你们带了多少钱?’,他们说,七八百元吧。我想咱也不能把人家的钱全拿光了,就450元一份吧。发票是在清华鼓励学生勤工俭学的华实公司开的,仅交了3%的税钱。”

“CCED200和300都是联想公司帮助做的销售,我分别拿到了3500元的版本费。后来CCED卖得很好,联想又给我配了一个BP机。”

现在已经获得很大商业成功的朱崇君说:“现实环境下的中国程序员不仅要写好程序,而且还要学会经营。尽管理论上说,写程序的只管写好程序,搞市场的只管搞好市场,这是社会的分工进步。但在目前的中国,如果程序员最后不想落到为别人打工的地步,还是要学会自己经营。你整天在琢磨程序,而你在公司中却整天被别人琢磨,最终吃亏的必定是你。”

朱崇君的话可能绝对了一些,但无疑是肺腑之言。在经历了单打独斗之后,渴望与人合作;然后合作失败,灰心丧气,再回到单打独斗。朱崇君在与人合作方面无疑有着局外人难以理解的切身体验。

关于高级程序员和市场合作者最终决裂的例子多得不胜枚举。我想这里面可能有两个方面的原因令朱崇君们伤透了心:一是急功近利的生意人心理使合作土崩瓦解;二是自己在合作之初没有想到用法律、合同的形式保护自己的权益。

朱崇君在众多的程序员中,还算是比较知道如何运用法律手段保护自己权益。要不,他也不会有今天的成就。比如,在和其他公司合作的时候,只签一个版本的合作。这样,主动权就始终掌握在自己手中,不适宜合作时,可以通过软件升级解除原来的合作关系。再比如,朱崇君还在信息中心工作的时候,每年都要单位出据证明——CCED是朱崇君用自己的计算机在业余时间所做的业余发明。因此,朱崇君就没有周志农在离开原单位时遇到的“自然码”是不是职务发明的麻烦。

朱崇君精明能干、头脑清楚。他最早在国内提出软件注册销售概念,并在CCED的销售上成功地付诸实施。软件注册销售是避免软件在流通渠道上价格翻一番,软件开发商和用户共同受益的一套行之有效的软件销售方式。

朱崇君的公司名字叫乾为天,据说是八卦中的上上卦。希望这一卦能够保佑CCED顺利平滑地移民到Windows上来。

金山西点军校

金山BBS被称为西点军校,站上有光荣的少尉、中尉们。其实,金山公司本身就是一个程序员的军校。

在这个军校里,作为校长和副校长的求伯君、雷军都曾经是闻名全国的程序高手。但现在这两位高手都很少有时间写程序了。他们在忙经营。金山公司现在应该是国内产品线最长、最全的软件公司。它先后推出了从通用的“WPS97”、《金山词霸》到应用类的“金山书信通”、游戏类的“剑侠奇缘”、“金山游侠”再到教育类的“金山单词通”等6个新产品。怎样把这六个产品都规划好,让每个产品都挣钱,是两位程序员出身的老总要写的最难的“程序”。为此,雷军10年来没有学会的抽烟终于学会了,而且烟瘾还很大,并且老是鼓捣着不抽烟的朋友“尝一支,挺过瘾的”。为此,求伯君也不能在珠海过他的安稳日子,三天两头地往北京飞。

求伯君和雷军都十分爱玩游戏和BBS,为此,金山建立了中国最大的两个BBS——西点和西线,出了中国第一个游戏“中关村启示录”,和中国第一个真正可玩的RPG游戏“剑侠情缘”。但现在无论是求伯君还是雷军都没有时间上站“飙信”和摆弄游戏了,他们的任务是率领金山尽快闯过中国软件业在微软的重压之下面临的最困难时期。

求伯君是一个不太善于言辞的急性子。在珠海金山,求伯君为我们做演示用的DEC显示器左上角的塑料裂开了一个缝,求伯君说那是他们心急火燎,抱怨机器时,气得用手砸的结果。给我们演示《剑侠情缘》的时候,光驱出了一点问题,声音总是不对,求伯君急得不等光驱灯灭了,就摁开仓键把正在飞速转动的光盘取出。

但求伯君也有慢条斯理、坚韧不拔的时候,以及耐得住寂寞的勇气。WPSforWindows小组一干就是4年,虽然其间经历了《盘古》的挫折,但求伯君还是坚持慢慢来,百折不挠地继续做WPS97,并最终把它奉献给了渴望已久的忠实用户。

相对求伯君,雷军要“伶牙俐齿”得多。无论是推销金山的产品,还是论述金山的策略,雷军总是振振有词,头头是道。雷军作为一个好记者的天赋不光体现在说上,他的文章中有行云流水般流畅的《我说晓军》;也有周密翔实的《微软都做了,我们做什么》。我们经常开玩笑说,雷军在软件上的成功使媒介少了一个好记者。

由于求伯君和雷军都是程序员出身,所以,他们最知道程序员的辛苦以及他们最需要的是什么?这是西点军校里人才济济的最根本的原因。

在金山的“西点军校”里,我一下子记住了雷扬这个名字,是因为他仅在上海读了一年多本科就不上了。敢于只上一年大学的人毕竟不多,但求伯君即说,如果他能够预知未来,他就不会上大学或者不会上那么多年大学,他要腾出时间先去深圳,而后赶海南的机会。关于大学教育对一个优秀程序员成长的有何意义,我的一位十分谦虚谨慎、已经联系好出国但不拿到签证不向父母公开的朋友说,“他将来可以养家糊口的编程本事以及真正有用的知识都是自学的。”

雷扬是一个略带羞涩、很清秀的小伙子。我问他,大学突然决定不读了,父母没有表示异议吗?雷扬说,我的父母认为我已经长大了,有能力选择,他们已尊重我的选择。

1992年11月,刚刚20出头,从广西南宁来上海念书的雷扬没有坐在大学的课堂认真听课,而是坐上上海加华电视电脑有限公司开发二部主管的位置,那时他们主要从事三维动画系统与字幕机系统的开发。其中,1993年初,由他独立完成的“三维动画系统曲线汉字输入模块”,为公司创造了很好的销售业绩,并使公司获得了Autodesk公司开发商的资格。

尽管雷扬的本科只上了一年多,但他包括英语、数学在内的各方面的基础都很扎实,网络更是玩得很熟。雷扬到金山公司写的第一个软件是“金山词霸”,这个产品一出手,就比做了很多年,版本号数字不知是“金山词霸”多少倍的普通词典高出一截。

比起雷扬的羞涩,1997~1998年任北京金山副总经理的蒋涛可谓“久经江湖”,精干老练。1991年,蒋涛从四川大学数学系毕业后,放弃了武汉市工商银行科技处的安逸工作,于1992年8月加入珠海巨人集团,6个月后,由于工作出色,任开发四部部长,后任手写开发部部长,中文应用软件公司总经理。领导开发成功了巨人手写电脑Ⅰ代、Ⅱ代。后来,巨人战略转移,重点开发保健品。蒋涛毅然离开巨人集团,和李明合作开发销售《快道电脑助理》。《快道》这个不错产品的最后失败使蒋涛明白,一个软件的成功靠的不光是编程,学会市场的营销同样重要。这样1997年,蒋涛来到了正在招兵买马的北京金山公司。

1998年,蒋涛离开金山,先和“超级解霸”的作者梁肇新合作了一段时间,梁肇新在巨人的时候曾是蒋涛的手下,但是一段时间后,做为豪杰公司总经理的蒋涛又离开了豪杰公司,成立了美达美公司。在中关村闯荡了两三年,蒋涛认为他学到了怎样做市场,尽管他不喜欢北京的生活,但是他已经离不开了中关村。

雷扬和蒋涛他们是新一代程序员的代表,他们知识结构相对于老一代程序员来说要全面一些,但由于今后的程序编写更多地要强调标准化、模块化和多人共同开发,年青一代程序员成名的机会将越来越少。

在软件界,我们将要面临的是商业推销的时代。过去,一两个程序员个人打天下的时代将渐渐隐去。商业的标准经营使中国软件业失去的仅是许多传奇的故事,换来中国软件业的繁荣,那是可喜可贺的事,但如果失去传奇故事的中国软件业,从此,再没有了灵性和活力,那么,我们又将如何看待当前正在发生的这种变化?

尽管伤痕累累还是愿意过程序人生

程序人生这个词是借来的,西点BBS站上专门有个信区叫做程序人生,此信区专供程序员交流编程心得,共同探讨、解决编程中所遇到的难题之用。因此,这个信区的主旨和作用同本文将要描述的程序员有关程序的人生可能并没有太多的联系。程序人生信区说的是程序,而我这里讲的主要是写程序的人以及他们的喜怒哀乐,之所以借来一个别人已经借用过一次的题目,是因为,我觉得程序人生这个词太能概括程序员的一生了,程序员除去程序还有其他人生,但有关程序的那部分在程序员的一生中无疑是最重要,也是最主要的,甚至可以说,程序员的其他生活都附着在程序人生之上,因它而喜,为它而忧。程序人生由程序员自己叙述应该更加真实可信,我这里越俎代庖,一则是因为大多数程序员除了编程之外就没有时间和兴趣专注于别的事情,二则是因为并不是所有的程序员都具有程序员出身,都有现任北京金山总经理雷军那样旁征博引的本事。近半年来,我接触过十几位程序员,他们给人的第一印象就是木讷、羞涩和不善言辞,所以,业界从来就不缺知名的企业家、总经理、公司以及产品,而名声远扬的程序员却是凤毛麟角。

程序员众生相

同是程序员,彼此也有很大的不同:有的程序员一个软件写下来,就能形成自己的风格;有的程序员则喜欢变来变去,实现相同的功能,每次程序写的都不相同;有的程序员“路子很野”,写起程序来,没个规矩,什么都敢改,追求高效率;有的程序员却循规蹈矩,一切按标准写,不敢越雷池半步,以程序稳定可靠为最高目标;有的程序员写程序必须绝对安静,所以要白天睡觉,晚上写;有的程序员则能乱中取静,一边和别人闲聊,一边敲程序;有的程序员什么都想做,写过许多半成品;有的程序员却从一而终,一个程序一写就是7年;有的程序员写程序很有条理性,注释很完整,可读性很强,以求日后容易维护;有的程序员则是天马行空,想到哪写到哪,写到哪,就改到哪。写完了,自己都不知道该从何读起;有的程序员特别讲究界面,特别看不起界面做得很粗糙的软件,有的程序员则不以为然,认为像PCToolS500那样实用的界面最好;有的程序员喜欢编书,觉得编书很有成就感;有的程序员则喜欢买书,什么书都买,却未必有时间看;有的程序员很“自私”,写程序,过度地占用资源或者过度地“霸道”,从不考虑同时运行的其他程序是否能正常运行;有的程序员则彬彬有理,温文尔雅,很礼貌地对待其他程序,力求与它们“和平相处”;有的……;有的……真难以尽述。有人以周志农请王磊写自然码600Windows版为例,认为程序员过了30岁,就廉颇老矣,而程序员雷军则自信他能干上一辈子,有人把程序员分成DOS版的和Windows版的,但有人却认为以软件体裁划分程序员更加合理。风格迥异的程序员众生相,实在让我们看花了眼,看不清楚到底怎样的人生才算真正的程序人生,让我们还是来看一看。

一个程序员的真实状态

我曾经与一名程序员——小李同在一个房间住了两个月。这段时间里,我的作息时间整个给倒了过来,因为在凌晨3点以前,小李几乎从未倒头睡过觉。虽说,他的工作房间在我们卧室的隔壁,但他总是时不时地到卧室来拿毛巾擦把脸,喝口水,找些干粮吃,弄得我根本睡不好一个整觉,最后我只好按照他的作息时间表走,但是白天,我又缺少他那种天塌下来也能睡得香的本事。在这两个月里,我几乎没有看到过小李洗衣服,衣服脏得实在没法穿了,就换上一件以前换下的脏衣服或者干脆买一件新的。除了吃饭睡觉以外,他总是在写程序。那段时间,小李没日没夜地赶程序,是为了出国。后来,他终于如愿以偿地踏上了美利坚的国土。当时看,像他这佯出国就工作的机会实在难得,他的境遇让他那些正在考托福、GRE的哥儿们羡慕不已,但这个签证得来确实不易。美国老板要的是一个Windows加密程序,而小李原来主要从事的是DOS中文平台的开发工作,对Windows并不是太熟悉,他当时有的只是足够的聪明和边学边干的勇气。美国老板看中了小李的潜力,但对他究竟能不能按时拿出产品来,心里并没有多少底,所以,他当时并没有承诺,一定能把小李弄出去,只是说:你先在国内干吧,每月给500美元、做的差不多了,再E-mail给我看。于是小李就干,那时究竟能不能出国,小李心里更没有底,他只能用自己的程序向美国老板证明,把自己弄到美国去是值得的。

好的程序不光需要才气,更需要力气。三个月下来,在学校是体育健将的小李总是觉得自己心跳加速,体力不支,有一段时间,他老怀疑自己心脏出了问题,还去医院看了几次。

但到了美国又怎么样呢?

我刚刚收到小李发自美国的电子邮件,mail说:“我到公司的第一天,老板说,你必须付办签证的3000美元。尽管,当时在国内,他说我不用付这钱。然后是租房子,公司不肯给我担保,结果,我被迫借钱付安全费,去租一间昂贵的房子,一月500美元。现在我除了吃饭,剩不了几个大毛。每天只想着,是不是有钱付房钱和买吃的。我的薪水很低,但是光税就要交37%,很惨。而且,老板每到周末准说:‘星期一给我一个newversion(升级版)’。”

小李的老板是一个中国人,他如此欺负一个比自己小几岁的同胞是不是太过分了。所幸的是在本文付印之前,我又收到了小李找到新工作的mail。李兄多保重。

小李是学力学的,1995年才开始正式成为一个程序员。他的经历使我再次相信:好的程序员仅凭学校教育是不够的,有一个奇怪的现象能对上述结论提供有力的支持,那就是中关村好的程序员几乎都不是计算机系出身的。

我的朋友小王现在中国一所著名的学府读计算机硕士。他的导师动员他读“直博”,被他断然拒绝了,因为他觉得现在做的“学问”并没有多大用处,他说:“我们现在做学问就是做论文,而像我们研究网络并行处理的,国内几乎没有做试验的条件。因此,做论文就是收集资料,综合借鉴资料而已,这样的论文不做也罢。”

我这位朋友酷爱编程,可编程在他现在所在的实验室里,是不值一提的雕虫小技,以致小王现在连在实验室里写程序的勇气都没有,因为怕别人看见,笑话他又不务正业了。实验室里的同仁提起小王,都说小王“动手能力”很强,但说这话的时候,却并没有多少尊敬的意思。我的另一位朋友现在读计算机博士,靠在外面接些编程的活补贴零用,我曾经问他:“为什么读博士?”他说:“硕士毕业没有什么好去处,所以就读了博,读博至少可以继续待在北京等机会。至于读博士对编程能力有什么提高,我则一点都没感觉到。”我还有一位朋友,也是计算机博士,可几年博士读下来,他却发现做策划更适合于自己。

这就是目前的计算机教育。一位数学硕士出身的编程高手说:“不要相信计算机等级考试能挑选出好的程序员,公司的老板如果以计算机等级考试的成绩录用员工,更是荒唐透顶。因为一个没有摸过计算机的人,只要像考英语一样地做题目,背例题,照样可以拿一个计算机等级考试的高分。”

一个肯吃苦的学理科的聪明人,有一些写程序的天赋,一般只要一年就可以成为一个程序员,但仅有编程能力是不够的,你还要有编程的机会,就是说,要有人愿意一个月给你2000元工资,请你做软件,这样你就可以在参与一个软件工程中,积累编程经验。编程经验对于一个程序员来说,要比擅长汇编或是VC更重要。接下来,需要的是持之以恒。北京金山总经理雷军谦虚地说:他已不算是一个好的程序员了,因为他已经没有足够的时间,像他的同事那样每天编程8小时,一干就是一两年。

明星制软件署名以及同老板的关系

这两年来,大家感兴趣的话题莫过于廖恒毅去了微软,吴晓军离开晓军公司又“回到”晓军公司,周志农“侵害”了自己所写程序的版权,王江民亲自出山从烟台杀到北京推出KV300,一炮打响,丁鸣飞离利方写出了兼容性好又很“温柔”的汉神中文平台,简晶离开中国龙,投靠希望……

这些消息无不与平时一声不吭、一旦发生变动总会引起震荡的程序员有关。这或许是程序员最值得骄傲的时候。从这一次又一次的爆发之中,程序员的价值得到了集中地体现。想涨工资的程序员不妨多向老板提提这些事。

我知道一个程序员,他十分不满意老板给开的工资和位置,于是他就和老板说:某某公司要挖我,一月给4000元,让我主持开发某产品。老板一听急了,马上说:“我也能给你这个数,你还是留在本公司主持开发咱们自己的产品吧。”最终,这位程序员如愿以偿,既长了工资,又主持开发成功了质量过得硬的产品,名利双收。因此,对于一个程序员来说,如果你觉得自己的价值和所得不成比例,第一步,你不应该想到“跳槽”,或者消极地怠工(对一个程序员来说,消极怠工并没有什么好处,你不写程序,别人只会认为是因为你不会写,而不是你不愿意写,程序员只有在不停地编程之中,才能得到锻炼并证明自己,从而实现自我),而应主动找老板推心置腹地谈一谈,如果你确实有水平,而老板又是个“懂事”的人,那么,你的要求和想法极有可能得到实现,因为公司一般不愿意像换推销员那样走马灯似地换开发人员。程序员一走,可能就意味着一个产品的流产,而给程序员多加一两千工资对于一个公司来说,并不算什么。孰轻孰重,老板心里自然一清二楚。老板和程序员矛盾的焦点除集中在工资待遇上以外,还体现在软件的署名上。

公司老板认为:软件是软件公司集体智慧的结晶,不是哪一个程序员或哪几个程序员的私人作品,程序当然是程序员写的,可文档呢?包装呢?技术支持与服务呢?这些都是软件不可或缺的部分,可这些并不是程序员所全能做得了的。况且,Win95的作者是谁?OS/2的作者又是谁?公司老板不同意程序员在软件上署名的真实原因是:不愿意让程序员的地位凌驾于公司之上,因为程序员一旦成为明星,他会身价倍增,就有了和老板叫板的资本。成为明星的程序员对于公司的作用已不仅仅体现在其高超的编程能力上,他更多地成了某个软件产品,甚至某个公司的象征,他的去留意味着某个产品,甚至某个公司的兴衰。我们经常听到这样的说法:某某跳槽了,某某去美国了,某某另开公司了,所以某产品或某公司不行了的说法。因此,一位软件公司的老板说:培养编程明星等于往自己身上绑定时炸弹,明星制可能对一时吸引用户,笼络程序员有用,但从长远看,弊大于利,因此,明星制是危险的明星制。

通过下面这件事,我们大致可以看出在软件署名问题上,老板和程序员之间的“较量”有多么的微妙。

事情是这样,本来老板对程序员在软件上署名,并未表示强烈的反对,程序员们就把各自的名字给署上了,软件快打包时,老板突然婉转地提出,要把作者署名给抹掉,程序员一听,二话没说,就给去掉了,老板很高兴,但在这个软件卖到用户手中运行三个月后,原来被隐去的程序员署名会再次显现出来。

另外,程序员之间对软件署名,也存在着不同的看法,比如,有的程序员对有人在软件上署名软件专家某某某就很是反感,他说:他不明白软件专家是职称呢?还是某个权威机构授予的,如果是自封的可就没多大意思了。再比如,一个软件是开发小组的集体劳动的成果,最终却署上了某一个人的名字,其他程序员心里是什么滋味?

程序员老板

最好的程序员是那些有天分,爱编程,能吃苦,甘于寂寞,身体又好的默默无闻的苦干者,他们并不被很多人所知,因为他们当中的绝大多数没有鲍岳桥以及梦之队的幸运,他们在苦干了几年之后的某一天,突然发现自己除了编程能力提高了很多以外,还是一无所有,所写的程序是“职务作品”,所挣的工资仅能“糊口”。这时,有人觉得编程既苦又没有前途,于是就去炒股票;有人则想多挣一些钱,于是想办法出国挣美元;有人觉得还是无忧无虑的“田园生活”清高,于是干脆离开中关村回家“务农”;更多有想法,有主见的程序员则不愿受老板“盘剥”另起炉灶,张罗自己的公司。既是程序员又是老板,努力编程为自己挣钱,这是一种理想状态,可在这种状态下的成功者却屈指可数,因为同时兼备经营和编程两方面能力的人才确实不多。算起来,WPS的作者求伯君可以算一个,CCED的开发者朱崇君可以算一个,KV300的发明人王江民也可以算是一个。

但写出畅销软件《华文办公排版系统》的捷闻公司的老板姚志军却认为:程序员出身的软件公司老板今后会越来越多,而且成功的机会也会越来越大。姚志军解释说:“前几年,程序员开公司饱受波折,是因为还没有摸到市场的门道,因此栽了不少跟头,但通过这几年的摔打,对于产品如何定位,如何制定价格策略,怎样做宣传,怎样疏通渠道,怎样选择合作伙伴,这些事情程序员出身的老板心里多少都有谱了。”

姚志军现在不再做软件公司的老板了,他凭着自己的技术在一家系统集成公司“打工”,过得还挺好。

相对硬件来说,做软件所需资金较少,在当前,价格已经透明的市场上,硬件厂商拼的是规模和资金,而软件的竞争则更多地集中在市场定位和软件内在质量的好坏上。所以软件业对于一穷二白的程序员来说,是一个取得成功的捷径。CCED几乎没有什么投资,也没有投靠任何公司,全靠朱崇君自己一个人干。CCED在软件质量上也没有好上天去,它仅仅是抓住了WPS制表不方便这一条,就取得了极大的成功。诸如此类的成功激励着越来越多的程序员投身于老板的行列。

对于一个程序员来说,一生只要找准一次定位,抓住一次机会,此生足矣。因此,今天我们看到许多惨淡经营的小软件公司还在那里艰苦地维持,对于这些程序员出身的老板来说,或许替别人打工,都比现在一年挣的多,但他们还在坚持做自己的事业,因为他坚信,只要坚持不懈地努力,迟早会在软件上抓住机遇,而如果就此放弃,他们则一点机会都没有了。

来源:《中关村问题》

作者:刘韧