Chinaunix首页 | 论坛 | 博客
  • 博客访问: 728584
  • 博文数量: 204
  • 博客积分: 6552
  • 博客等级: 准将
  • 技术积分: 2724
  • 用 户 组: 普通用户
  • 注册时间: 2007-09-29 18:41
文章分类

全部博文(204)

文章存档

2012年(6)

2011年(66)

2010年(99)

2009年(31)

2008年(2)

我的朋友

分类:

2011-08-04 12:07:26

整理/高松

张湘辉,1994年加盟微软,现任微软大中华区CTO。本次采访中,张湘晖介绍了他在技术方面的成长经历,管理经验,以及心得感悟。

走近张湘辉

程序员(以下简称“程”):您最早怎么接触到计算机的?

张湘辉(以下简称“张”):接触计算机挺偶然的,完全因为生活所迫,觉得计算机行业的工作环境比较舒服,都是待在大机房,穿白大褂,有空调,所以向往这种好的工作环境,而并不知道电脑是什么,要选什么专业。现在看来还是选对了。

微软大中华区CTO张湘晖
微软大中华区CTO张湘晖

程:早年的经历,对您影响最大的事和人是什么?

张:影响最大的事情与电脑无关。可能和老师有关,我从小没好好读书,当时突然来了一位英语老师,他的英语讲得特别好。后来才了解到,他从外交部下放到湖南,就留下来做了英语老师。这件事对我的触动很大,第一次觉得别的语言可以那么美。

程:当时怎么选择技术方向的呢?

张:大学对学习软件兴趣比较大,后来到美国,就毫不犹豫地选了软件开发。这个过程中,接触到一位老师的研究还挺有意思的:他考虑如何把软件开发的整个生命周期,尽量做得有一致性,即你要做什么,结果出来就是什么,这里面应用了大量人工智能的技术,所以就师从于这位老师,读了软件工程的博士。

程:这期间您有什么收获呢?

张:读博士时对软件产业和软件开发过程中的问题有了较多了解。读完博士之后,尽管有些大学给了我教职,但也没有去大学教书,因为还是想做些实业,于是进了一家在西雅图的软件公司Aldus,它之后被Adobe收购,我就到Adobe做软件开发与设计。当时有一款制图软件(类似于Photoshop),叫PhotoStyler,这是由一家名为Ulead台湾公司研发的(最后被Corel收购)。当年他们的创新能力是很强的,所以我跟他们配合一起来做PhotoStyler,这真是受益匪浅。

首先让我了解到软件开发的整个过程,原来读书时学的都是纸上谈兵,那时开始遇到了实际问题,并去解决。这段时间里,更多的是看到中国人在做软件方面的才智。Ulead实力非常强,当时在中国大陆做软件的还没有那么多,但从他们那里可以看出我们中国人做软件是很有潜力的。

跟他们共事一段时间后,我想一定要回国做软件。所以后来听说微软在招人建立研发中心,我就很踊跃地申请了,这对我来说简直是梦想成真。到微软工作,同时又在中国,这是一件非常完美的事情。

回国做软件

程:来中国做软件,您对微软这个决定如何理解呢?

张:我在1994年8月底被派回来创建研发中心,这充分体现出了微软对中国市场的觉醒。微软当时在做Windows 3.2,这是一款划时代的产品,也是我回国后的第一款产品。我带领了一支非常年轻的队伍,在美国版发行六个月以后,发布了中文版。中国用户第一次如此之快,就享受到中文版的微软产品,此后中文版与英文版的发行时间差越来越小,现在几乎是和英文版同步发行了。

上面提到的时间差跟软件开发实践是有关系的。如果一心做美国版,不涉及其他语种,等做中文版时,就会发现有很多东西是原来设计所没有考虑的,比如对一些字体的支持,对一些输入法的支持等种种问题。特别是对汉字的支持,早期的GB-2313字符集共包含6763个汉字,这导致最早的软件里面会有一些中文显示不出来。所以,要从上游来解决所谓时间差太长的问题,从最早期开始考虑对中文版的支持。这就要求中国团队能够和美国版的团队有机配合,现在这个配合是越做越好了。

因为前面的事情做得比较好,那么一些重大的问题,其实在做第一个版时就已经解决了,当然这与技术标准的进步也有很大的关系,比如Unicode的出现,早期支持两万多汉字,到今天支持十万多个汉字,今天谁要编撰《康熙字典》,用我们这套系统,也不需要再加字。从这点看,对弘扬中国文化是很有益处的。

程:刚来到微软中国还是遇到很多困难吧?

张:当时确实很困难,但也挺有意思。最早的研发中心设在科学院第二招待所,那里原来是个歌舞厅,上头还有灯在转。别的不说,就是供电也是很大的问题,当时电的质量很差,所以必须要有稳压器,它能发出很可怕的呜呜的声音,而稳压器本身也过热,又专门买电扇吹稳压器,这哪里像开发世界一流软件的地方,当时心里还非常犯嘀咕。虽然条件差,但我们做软件采取的方法却是最先进的。此外,我们专门租了一条直连美国的网线,那么快的网速在当时中国绝无仅有,以此保证开发的及时和高质量。

程:作为见证者,你也看到了微软在中国的发展,请回顾一下期间微软的技术变迁是怎样的?

张:从研发的角度说,刚开始我们在中国做测试和汉化。之后开始做很多中文项目,并组建起庞大的科研队伍,研究怎样能够将中文处理更好、查找更方便、输入更方便等方面,并开始有些中文版独特的功能。1999年3月,微软宣布维纳斯计划,我们将比尔·盖茨请到深圳参加发布会,这具有象征意义的举动,还只是第一步,能够看出为中国市场做产品,这样的努力一直都在持续着。

我印象最深的,是在1998~1999年之前,微软对Internet 还不是很重视,用有些人的话讲就是“不赚钱”。但是微软这样一家几万人的公司,当时做出了一个决策:Everything is Internet,这是殊为不易的,这件事情给我很大的启示。从此,在Internet领域,微软从不是玩家到第一玩家,从操作系统、浏览器到以后不断涌现的新产品,我的体会是微软在拥抱新技术时,虽然及时性没那么好,但是一步一个脚印,踏踏实实去做,最终还是很有信心能赢过来的。

随着移动计算、智能手机,以及平板电脑的流行,特别是云计算这样颠覆性模式的出现,IT完成了从量变到质变的过程,这是大家有目共睹的,微软在这中间则一直是很重要的玩家。

程:您是如何这个管理庞大的研发机构,并形成有效的技术沉淀的?

张:这是有关软件开发周期的管理问题。做软件与做工程设计有很大的差别,因为其中人为因素很多。有人不再把软件定义为一种科学或工程,而是一门艺术,经常一两个人可以做出很漂亮的软件,而这样设计飞机几乎是不可能的。设计飞机有一套工程方式,可以多加人手,加快效率,做软件则相当不同。当然不是说加人没有用,做大的软件项目,直觉往往是多加点人,但这跟谱好曲子一样,十个作曲家也没法取代一位贝多芬,不过你可以通过很好的管理,让他们共同完成一支很好的曲子,甚至媲美贝多芬。这就是软件管理的精髓,微软在这方面有很多的创新。

以Windows 7为例,包含七八千万条甚至上亿条代码,五六千人同时开发,还有很多合作伙伴确保周边产品兼容。对这样一个超大的项目而言,不能一眼盯到结果,不能像跑百米一样,始终盯着终点。我们的经验是盯终点肯定乱,因为要经历非常漫长的过程。

从心理上说,当发现离终点还很遥远时,人就会泄气,不能以那么快的速度玩命跑下去。最好的方式,是将事情分成很多步骤来做。Windows7从开始到完成可能要耗时两年,以两年时间为一个周期,那么前六个月团队就会被弄垮,所以你必须以也许每两个月为一个终点。就像跑一千五百米,我们要考虑第一圈跑多快,第二圈跑多快。

这就需要把每个终点区分得很好,设定有效的里程碑,在逻辑上要很精准,是不是到了这个里程碑,同样要非常清楚。这样每个里程碑达到时,大家可以庆祝一下,重又奔向下个目标。如同爬珠穆朗玛峰,没有说不断爬上去,而是先到大本营,再到第几个营地,最后才能登顶。

设定里程碑是横向的时间划分,纵向来讲是人的管理。比如,怎样找到问题,找到问题又交给谁去解决,怎样互相有效交流,怎样互相检查代码,这方面的很多做法,我觉得微软到今天仍是独一无二的。

同时,今天的软件开发实践跟原来有些不同,早期网络没这么发达,必须把一件事完成才能发布。在Internet永远是Beta,也就是把产品阶段分得更细,这是一个精细而完善的发布过程。用户也更喜欢高密度的发布。但是要注意重大功能出现的时候,还是要从总体设计,而不是在结构没有很大变化的情况下,突然塞进一个很大的新功能,这需要考虑到软件模块设计等因素。

关注与推荐

程:您目前关注哪些技术?

张:云计算及其生态系统,是非常值得关注的。IaaS能够把现有的计算中心、数据中心的效率提高,将管理水平提升上去。要提供更多适合于云的应用服务,建立这样的生态系统需要时间过渡。

我们认为在云时代的整个生态系统里,通吃是不可能的,没有一家公司能够做到,要提供最好的用户体验,就要求大家用通用的标准去开平台环境,在其上开发应用,厂商之间还要有很好的默契。通过和客户打交道,很多人都要求支持混源(MixSource)的环境(有的用Windows,有的用Unix/Linux),在不同环境下开出来的应用,还能够很好地有机结合在一起,这样的实际需求是很大的。对此我们做了大量的工作,数据级、程序级的互操作都做得很好。所以在Azure平台上,无论是使用 Java、PHP、Ruby,还是.NET Famework等写的东西,都能得到应用。

另外,提高用户体验也是热点,比如支持多点触屏的智能手机,能提供更加贴近用户习惯的体验。再比如,人机交互过程已经从鼠标过渡到语音、肢体,甚至表情,微软的Kinect就是非常好的例证,仅靠动作就可以完成人机交互。这方面的进步是突飞猛进的,也将给技术人员更大的空间,做出更有趣的东西。

阅读(449) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~