Windows多语言版本的开发模式从此被我改变 任何一个企业,即使像微软这样近于完美的企业,也会有很多的漏洞。按照软 件业的术语,漏洞就是Bug 。我很快就在身边发现了一个超级Bug 。 我所属的部门负责设计、开发并向外发布简体中文版、繁体中文版、日文版和 韩文版等非英语国家及地区的Windows NT软件。整个多语言版本开发部门是一个300 多人的大团队。微软当年开发多语言版本的思路是:先开发英文版,然后再将英文 版移植到其他语言版本上去。 以Windows 中文版为例。从英文版移植到中文版,并不只是翻译菜单那么简单, 许多源代码都得重新改写。比如Word里打完一行字会自动换行,可英文是单字节的, 中文却是双字节,一个“好”字,就很可能“女”在上一行末尾,“子”却到了下 一行开头。所以最初的Windows 3.0 上市后,中文版过了9 个月才上市。到了Windows 3.1 ,更是滞后了1 年多。Windows 95情况稍好,也差了将近8 个月的时间。 我越看越不顺眼:常年雇那么多人做新版本,成本太高;全球各语言版本推迟 那么久上市,贻误商机。我很快得出结论:出现这样的问题,一定是开发模式没有 找好。我开始动起了脑筋…… 当时我构想出的新思路是:改变Windows 的内核构造,把英文内核变成国际化 语言的内核。这样,移植便大大简化,只需进行简单的界面翻译即可,而且可以做 到与英文版的进一步开发同步进行。 思路确定以后,我需要得出改造模块的样本。Windows 操作系统有2800多个模 块,如果我一个人将这些模块逐一做出来,可能要花50年或者100 年时间。因为Windows 操作系统分三大部分,我认真分析这三大部分的共同之处和不同之处,找出一种模 式可以同时应用于这三大部分。然后我每部分各选做了一个具有代表性的模块,可 以充分显示我的思路的正确性。 之后,通过我的各种论证,证明这样的模式改造对公司有百利而无一害。我在 提交给上级的报告中指出,如果采用我的方法,可以就此改变Windows 操作系统的 多语言开发模式,而模式的创新将带来巨大的市场效应。微软产品在进入中国、日 本及欧洲的非英语国家时,将节省很多市场费用。同时开发部门也没必要再设立多 语言开发部门,将大大节省人力成本。 事实也的确如此。我的模式如今已成为微软Windows 软件的基本开发模式。我 的设计思想被Windows 95和Windows 98沿用,我还成了Windows 2000多语言平台的 主要设计师。全部采用我的设计方案的Windows 2000,在英文版发布了三个星期后, 就推出了中文版。我为微软抢夺了市场上的主动,多创造了数亿美元的利润。这是 我对微软最大的一项技术贡献。 站在公司的角度考虑:获得职场机会的诀窍 我曾经收到一封信,信中说:“我也是一位工程师,我如何才能像你一样,花 7 年的时间从普通工程师变成微软中国区的总裁?你有什么诀窍?”其实,我的诀 窍十分简单: 虽然进入微软时是一名普通的技术人员,但我工作时的心态,就仿佛我是公司 董事会成员一般:我不仅做好自己的本职工作,还替微软考虑有哪些做得不合理或 者不够完善的地方。 进入一家企业,你会发现企业的问题很多(特别是中国的企业,问题就更多)。 怎么办?很多人采取的方式是抱怨。但抱怨是最简单、最直接,但也最无效的方式。 年轻人到公司里千万不能抱怨,因为很多人比你还聪明,他们已经抱怨很多次了, 你无非就是N+1 次的抱怨。还有人会比这种抱怨的人好一些,他会提出一些解决问 题的意见,建议公司应该这么做、那么做。你自以为这些建议很了不起,但是从领 导角度来讲,这属于小儿科。也许领导当面会说这个建议不错,但是一离开办公室 他就忘掉这个建议了。你花很多脑筋给领导提出建议,但领导不会采用,因为谁也 不知道这个方案能否成功。所以, 我们在企业里要做的不是抱怨,不是提意见和建议,而是真正地对公司作一些 实质性的改进。 从本职工作中提升自己 职场新人还容易犯的一个毛病是,很多人会喜欢挑别的部门的毛病。你是做技 术的,却说公司的人事制度需要改革。你是做客户服务的,却非得告诉销售部门说 他们的市场推广方案有问题。 问题的确是存在的。而且站在外部的角度看,特别容易发现问题。但是往往只 有本部门的人才知道真正的症结在什么地方,最终应该做什么才能解决问题。所以, 一定要做自己最内行的东西,一定要在自己本身的职位上来提升自己。这也是 非常重要的职场定律。 差异化竞争:找到自己的核心竞争力 与微软的其他员工相比,我在技术方面是最差的。我若在技术上与他们竞争, 过许多年我也不过是个普普通通的员工,顶多做上个高级工程师。因此, 我的思路是避开和他们在技术上进行正面竞争,走差异化的竞争路线。我只有 找到自己的核心竞争力所在,并把它发挥到极致,才有可能从上万人中脱颖而出。 当我发现Windows 在多语言开发模式上的错误后,我同时注意到,其实当时有 很多人都发现了这个问题,甚至有不少人向经理提交了自己的书面解决方案。后来 我知道这些方案共有80多份。 我做过公司老板,知道当老板的管只会提建议的人叫挑刺的人,这类人往往会 让老板讨厌。老板对既能提出问题又能提出解决方案的人会有好感,但一般不会重 用。而老板最信任的则是,除了做到前面两点,还能论证出方案可行性的人。这些 亲身体会和总结,成为我在微软职场上的生存法宝。 既然仅提交书面方案效果甚微,我就开始发挥我的勤奋特长,利用晚上和周末 的时间将我的开发模式进行实验论证,并得到了完全可行的结果。然后我写了一份 书面报告,不仅提出问题也解决了问题,将我自己编的程序都放在报告中。 “Jun ,你不是第一个提出这个问题的人,也不是第一个带来解决方案的人, 但你是唯一一个对解决方案找到论证办法的人。”我的直接上司这样评价我。 我思考改造Windows 多语言版本的开发模式期间,还发生过一个小插曲。1995 年初,后来新浪的创始人王志东带着自己研发的中文平台RichWin 来到西雅图与微 软洽谈合作。那时候我进微软才两个多月,刚开始思考多语言版本的开发模式问题。 作为一名普通软件工程师,我参加了接待王志东的业务会议。在会上,王志东自信 满满地讲述着RichWin 是如何伟大,微软是多么需要RichWin ,没有RichWin 微软 在中国很难推广等等。他对RichWin 如此自信的理由很简单,就是因为微软当时做 不到中文系统和英文系统的同时发布。 王志东对RichWin 技术上的自信让我深感佩服,可也深深刺激了我。“你看不 起微软的技术,我就一定要下狠心改变这样的局面,因为我是微软的员工。” 十余年后,已离开微软成为盛大总裁的我在一次IT业高端会议上和王志东邂逅。 我给他讲起了当年的那段因缘,“你应该感谢我。因为当年微软使用了我提出的Windows 多语言版本的开发模式,所以拒绝了和你合作。否则你可能还在享受着RichWin 给 你带来的巨大利润,根本不会想到去创办新浪。”他听了哈哈大笑,“你说得很对。 不过我怎么也想不起来,当时一起开会的还有唐骏你。” 听罢他的话,我不禁也报以一笑。他的确无法回忆起来,因为那时的我实在太 普通、太平凡了。 -------- 虹桥书吧