正文

第三章 比尔·盖茨是这样思考的(7)

如何移动富士山? 作者:(美)威廉·庞德斯通


人们在解决智力题的过程中往往有文不对题甚至是愚蠢的感觉,智力题的作用就是向你提出挑战。对有的人来说,他们很乐意接受这种挑战。就像爬山运动员,他们梦想登顶,就是因为喜欢面对山峰本身的挑战。一个好的智力题解决者不仅有着解决难题所需要的智慧,更应该主动面对智力题带来的任何挑战。

当软件变得日益庞大,单个的人已经很难只靠自己的力量完成整个软件的制作。MS-DOS 1.0版本的绝大部分的工作——程序码、编译、找漏洞等,都是由蒂姆·佩特森完成的。随着软件产品变得越来越复杂,就有必要对两个甚至更多的程序开发员进行分工。这种分工说起来容易做起来难。把不同的人写的大块程序合并起来并不是一件容易的事情,除非这些人在写程序的每一步都能够牢记这一点。因此必须在程序开发人员之间建立起一种有效的沟通,来保证他们都能够按照相同的“正确”方法来工作。问题是程序开发员可不是一群“随意”或者“善于”沟通的人,相反,这些人往往是喜欢在深夜单独工作的“夜猫子”。这就产生了一个大问题。

查尔斯·西蒙尼是解决这个问题的人之一。西蒙尼是一位知名计算机科学家,但他选择了去对理论持有怀疑态度的商界工作。在施乐公司帕洛阿尔托研究中心,西蒙尼写出了第一个“所见即所得”的文字处理软件。但施乐公司根本不热衷于把公司实验室研制的窗口和鼠标界面推向市场,西蒙尼对此非常恼火。有一次到西雅图出差时,他在没有预约的情况下顺道拜访了微软公司。西蒙尼接受的面试相对比较容易,一位经理(史蒂夫·鲍尔默)看了西蒙尼的简历后,认为比尔应当接见这个人,但是比尔当时正在开会。当比尔开完会后西蒙尼已经不得不去机场乘飞机回家了,盖茨就陪他一起去了机场。他们的个性碰撞出了火花,西蒙尼很快接受了去微软工作的邀请。

西蒙尼认为可以通过设立一个“主程序员”的新职位,来解决多个程序员之间的合作和沟通问题,这同中世纪手工艺人的做法有点相像。主程序员对程序的总体规划和程序的编写负全责,他手下还有一个助理团队,这个助理团队负责程序代码的优化和挑错。

这是一个非常有用的主意,但由于程序员特有的个性,这种做法在他们中间也引起了一些麻烦:每个人都想成为主程序员。按照他们的说法,没有一个人想要成为所谓的“程序奴隶”。由于在一个项目中只能有一个主程序员(这也正是问题的所在),因而大多数程序员都做着普通的编程工作。

但是由于微软业务的迅速膨胀,主程序员的职位概念也很快走到了头。软件产品变得越来越大,一个主程序员已经不能满足项目的要求。还有一个更重要的问题是,主程序员不一定擅长软件设计。随着软件越来越复杂,以消费者为对象的设计问题渐渐从纯粹的代码编写中脱离出来。要让同一个人来负责两方面的工作,会让人心有余而力不足。尽管可能有人多才多艺,是剧作家的同时还能是一个好的橄榄球后卫,但是,如果你雇用一个人的目的是让他从事这项工作,而实际上又让他从事另一项工作,你肯定会感到失望。

“主程序员”这个称呼后来就不再怎么有人使用了。尽管微软是一个令人惊奇的“优秀”男人集中的地方,但是这个过度男权化的字眼还是让人不舒服,于是他们改用了一个中性的称呼——项目经理。目前项目经理这个工作岗位在软件行业非常普及,但据我们所知,这个称呼很可能是微软办公软件Excel的开发者杰贝·布卢门撒尔的发明。


上一章目录下一章

Copyright © 读书网 www.dushu.com 2005-2020, All Rights Reserved.
鄂ICP备15019699号 鄂公网安备 42010302001612号