友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!
合租小说网 返回本书目录 加入书签 我的书架 我的书签 TXT全本下载 『收藏到我的浏览器』

微软研发致胜策略-第12部分

快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部! 如果本书没有阅读完,想下次继续接着阅读,可使用上方 "收藏到我的浏览器" 功能 和 "加入书签" 功能!


我领导Microsoft 680x0 的交叉发展系统(在Macintosh 和
PC 之间使用),我的顶头上司,也就是有权变动我计划的
人,名叫莫特。每隔一段时间,莫特就会到我的办公室来
问我有关680x0 的C/C++ 编译器项目进展的问题。他每
次来必定会问一个问题:
“FORTRAN 进行得怎么样了?”
莫特很清楚我们根本不做F O RTRAN 的编译器,但
是他喜欢F O RT R A N,而且他相信一个好的M a c i n t o s h版
F O RTRAN 编译器一定很有销路。事实上,如果把我们做
好的C/C++ 编译器修改成F O RTRAN 编译器并不太难,
我和莫特都知道,微软开发编译器都是遵循大部分教科书
所描述的三阶段方式:
1 。前端处理(front end) :把高级语言(如C / C + +,
94
微软研发
致胜策略下载
FORTRAN 等) 解析成中间代码。
2。 优化( o p t i m i z e r ):对中间代码做执行时间的优化
处理,诸如程序代码搬移、调整,同次表示式消去等
等。
3。 后端处理(back end):从经过优化的中间代码,产
生最佳的执行代码。
当然,实际工作比这三点略述要复杂得多。但是由这
些您可以看出来,要推出一个Macintosh 用的编译器,只
要重新写一个后端处理,就可以把英特尔80x86 的编译器
转成摩托罗拉680x0 的编译器。
从理论上说,一旦我们完成了680x0 的后端程序,我
们就可以用它来把所有的英特尔80x86 的C / C + +、
F O RT R A N、Pascal 的后端处理替换掉,这样就做出摩托
罗拉680x0 的C / C + +、F O RT R A N、Pascal 的编译器了。
这就是莫特对F O RTRAN 特别有兴趣的原因。然而事实
上,我们要做F O RTRAN 编译器的话,必须把后端处理
完全做好才行,当时我们只完成了95% 的C / C + +编译器
后端处理。
每一次莫特问我有关F O RTRAN 的问题时,我的回
答也是千篇一律:“我们还没有开始。”然后再补充道:
95
微软研发·致胜策略
保持进度下载
“主要是因为F O RT R A N编译器的关键组件—后端处理,
尚未完成的缘故。”
莫特也许是对的, F O RTRAN 编译器在M a c i n t o s h上
也许会有很好的市场,但是他忽略了项目最优先的目标。
就算是有再好的市场,也实在没道理要把做了一半的项目
停掉,更何况他自己也认为C/C++ 编译器的市场潜力应
该比F O RTRAN 更好。要不是莫特的个人兴趣,我不会
和他讨论这么多次,他的个人兴趣已经蒙蔽了他身为主管
的智能。
您必须保护项目不受外界的左右,尤其是当这种操控
来自特权人物之手。像莫特这样,想法明明是错的,您却
得服从上意。如果是我刚开始担任主管时,我会向压力低
头,服从上级的意思,现在我学会了独立判断,不论是谁
的建议或要求,我一定会先问自己:“这样做对产品有没
有帮助?对于目标的完成有没有策略上的价值?这样做是
否会使我忽略了更重要的事情?这样做的成本和风险会不
会太高?”您必须好好想这些问题,答案如果对项目无益,
您就不应该照做。
96
微软研发
致胜策略下载
是您在为项目负责。
不要让任何人的建议阻碍项目的进行,包括上级
的建议。
真正的成本
为什么莫特会认为M a c i n t o s h上的F O RTRAN 编译器
值得开发呢?是因为很多人想买吗?还是因为F O RT R A N
对Macintosh 有特殊意义呢?其实都不是,真正的原因是
他自己对F O RTRAN 情有独钟,他希望能够得到一份免
费的Macintosh FORTRAN 编译器,如此而已。
我对能附送那些副产品的兴趣,绝不下于任何人。那
是一种欣慰的感觉,因为自己是一位优秀的软件开发专家,
才能有这么多精彩的创意,额外做出这些副产品。但是这
些副产品对公司或产品都没有策略上的价值,充其量只是
一种消费者回馈。如果它们有策略上的重要性,早就放在
产品设计的计划里面了。
有趣的是,我们也可以把C/C++ 编译器的前端处理
换成Pascal 的,那么我们又多了一个M a c i n t o s h的P a s c a l
97
微软研发·致胜策略
保持进度下载
编译器了。但我从来没打算这么做,虽然我们都知道
M a c i n t o s h曾经有很长的一段时间只有Pascal 程序,苹果
计算机所有的手册和范例程序都是采用P a s c a l,而且苹果
计算机的Pascal 编译器市场并没有太大的竞争。现在的情
况则完全改观了,苹果计算机如今已是C/C++ 语言的天
下。但是如果我们要在C/C++ 编译器产品之外附送一种
语言的编译器,那Pascal 绝对比F O RTRAN 要适当。
莫特对F O RTRAN 编译器有兴趣,纯粹因为它免费,
而不是基于任何策略性的考虑。但是F O RTRAN 编译器
真正的成本可未必那么便宜,如果我们要把F O RT R A N
编译器引进市场,我们要做的事情是:
◆ 完成后端处理,目前剩下5% 尚未完成,这大概要
花几个月的时间。
◆ 想办法让F O RTRAN 和M a c i n t o s h的操作系统交谈,
因为M a c i n t o s h向来是用Pascal 写的,而Pascal 的
记录,FORTRAN 无法支持,所以这方面有个鸿沟,
需要另外设法跨越。
◆ 撰写手册和线上求助的文档。
◆ 完整地测试F O RTRAN 编译器,包括它的链接能
力,除错工具,以及其他的各种辅助工具。
98
微软研发
致胜策略下载
其实还有一些额外的行政工作也是不可或缺,例如训
练产品支持小组等等,以上只是几项开发性质的工作。现
在您觉得F O RTRAN 编译器很便宜吗?好吧,即使前面
三项可以利用C/C++ 编译器的东西过来改一改,但测试
工作没有快捷方式,它可是完全无法打折扣的,任何产品
都要有同样严谨的测试工作,F O RTRAN 编译器必须通过
和C/C++ 编译器同样一丝不苟的测试程序。
所以F O RTRAN 编译器绝对不是白吃的午餐,虽然
比起完全从头开始的C/C++ 编译器,成本低廉得多,但
是“便宜”可能仍然是高价—只要问问最近买过二手波
音747飞机的人就知道了。
免费的软件或功能其实并不存在。想想看,您每次听
到广告中的“免费”,内心的反应恐怕是抗拒多于接受吧,
感觉上,这就像是听到“参观某工地表演就可以免费参加
夏威夷六日游大抽奖”一样。大部分时候,这类的免费软
件都没什么重要性,只有极少极少的例外会中大奖,如果
您希望确实掌握项目朝正确的方向进行,就请专注在有策
略价值的工作上,不要被一些花俏的噱头分心。
99
微软研发·致胜策略
保持进度下载
天下没有真正免费的软件
炒鱿鱼宏
不只是上级会提出不合理的请求,行销人员也可能会。
有时候为了争取一张大订单,行销人员会为这位大客户要
求一些匪夷所思的修改。您必须捍卫您的产品,避免被这
些不正常的杂音所扭曲。
当我负责Microsoft Excel 时,行销人员要求开发一个
炒鱿鱼宏( L AYOFF macro),而这个宏的内容您大概已经
猜到了,就是一份名单,用随机的方式挑出其中一些人来
遣散,因为大公司想要裁减人员,又不想造成反弹或不公
平之议,干脆用计算机随机选取,反正遣散谁都一样,正
好利用Excel 来推卸责任。
如果您熟悉E x c e l,您就知道并没有这个宏。这个宏
我做不来,所以我拒绝了这个要求,因为我认为这会伤害
我们的产品。而我的上级也同意我的看法,所以我们成功
地阻挡了这个要求。但行销人员持续要求了好几个月,他
们认为要有这个特色,才能让顾客更需要Excel。
100
微软研发
致胜策略下载
这个炒鱿鱼宏成了我们开发小组的大笑话。“这样好
了,我们就来做这个宏,里面做点手脚,凡是遇到我们的
名字就忽略过去,这样我们就永远不会被炒鱿鱼了!不,
还可以更好,我们把程序写成让行销人员的名字优先中奖,
这样一来,行销人员永远最先被解雇!”当然我们不会真
的这样做。最后的结果是,行销人员另外写了一个使用者
自订的宏,去满足那位大客户,而我们始终没有在产品中
加入这个讨厌的宏。
就我多年的经验,这类荒唐爆笑的要求其实很少见,
因为行销人员一点儿也不想伤害产品,相反地,他们和开
发人员一样渴望有最好的产品,只不过有些时候他们并不
那么清楚怎么做才是对产品最有利的,因此会要求一些也
许不应该开发的功能特色。这种不该加入产品的功能特色
有两类,一是不符合产品的未来发展方向,仅仅因为这项
功能属于杂志上所列评比清单中的一项;二是特殊客户的
要求。有时候,功能齐全不一定是最好的,有自己独特的
风格更重要,在产品中加进了太多枝枝节节的东西,可能
使产品过度膨胀,也花费了太多开发人员的时间精力,未
必是值得的。
遇到这种情形的话,您该怎么办呢?以我的经验,您
101
微软研发·致胜策略
保持进度下载
应该探究这个需求背后的动机。好好想一想。如果行销人
员跑来对您说:“惠普公司(HP) 的HP12c 商业用计算器
有五项功能是我们的电子表格所不能提供的,希望你们把
这些功能加上去。”对产品而言,加入这些功能有没有策
略上的价值?能不能真正改善产品?或者只是因为行销人
员这么想:“嘿,别人都有这个,就我们没有,须得加紧
赶上。”这些功能也许真的很重要,而前一版中来不及加
入,也许是当时觉得不值得开发,现在您仍然要坚守原则,
不值得开发的功能就不要做。
策略性行销
我希望上面的例子不会造成您对行销人员的负面印
象,因而对他们的建议不予理会。有时候他们的要求并不
妥当,但是他们通常都很有道理。至少我的经验是如此。
有时候,行销人员要求增加某个功能,由产品的观点
来看是没有策略上的意义,但是由行销的观点却非常有必
要。比方说,以产品的观点而言,实在没有必要支持2 3
种不同的档案格式,使用者只需要一种格式就够了,即使
是要与别的软件互读档案,也只需要业界标准的几种档案
格式;但是就行销的观点,如果产品没有非常足够的档案
102
微软研发
致胜策略下载
兼容性,就会降低顾客购买的意愿,或者,如果他过去所
使用的档案格式是本产品不兼容的,而他不能失去过去的
资料,那本产品对他就没有什么吸引力了。
如果您认为某些修改产品的要求应该予以拒绝,因为
不能改善产品,那么请考虑是否能大幅增加销售量。炒鱿
鱼的宏是应该拒绝的,因为它对产品有害,只对少部分大
客户有用,对大部分的小客户是无用的,而且对产品形象
颇为不利。
如果行销人员常常阅读杂志,很在意上面的评比清单,
您可能免不了这类的问题:对于功能特色的要求,是为了
在评比的项目上领先别人,而不是产品本身策略上的需要。
行销人员很可能会看到对手有一个很受注目的特点,或是
很红的卖点(尤其是对手的销量因此增加时),就强烈要求
开发人员跟进,这时候您的产品方向可能会因此转变,您
得特别小心,产品的长期目标不可因此而偏废。
应该开发策略上具有重要性的功能,
而不是把媒体的评比项目都做齐全。
103
微软研发·致胜策略
保持进度下载
很酷,但并不重要
在第1 章中我提过一位使用者界面函数库的组长,我
和他一起检视函数库的工作清单。清单中有一项六星期内
要完成的工作,是要容许协作厂商所开发的独立小程序直
接挂入微软的非窗口应用软件。其目的是将小算盘、小作
家、时钟等Windows 和M a c i n t o s h必备的附属应用程序,
也能在非窗口应用软件(主要是MS…DOS) 中用到。我认
为这项功能很有趣,但对于微软内部2 0个使用本函数库的
小组而言,并不重要。
于是我问这位组长,是谁要求加入这项功能,他说没
有人要求,这是因为前任组长觉得它很重要,才会列在工
作清单上。我再问是否有哪位组员对它很有兴趣,这位组
长说不知道,不过他加了一句,如果我把它删掉,被前任
组长发现的话准会跳起来。
我猜想如果前任组长对这项功能如此坚持,应该是有
某个小组真的想要,只是现任组长不知道罢了。所以在我
删掉它之前,我先问过使用本函数库的2 0个小组,有没有
人对这项功能很需要,或是对它很有兴趣,结果我得到的
回答几乎都是清一色的:“噢,我们听说过。是某某人一
直说服我们这个东西非常重要。”
104
微软研发
致胜策略下载
大部分的应用软件小组根本就不想要这个功能,有许
多更有趣的工作等着他们。况且,要完成这个功能的话,
附属应用程序集就会为了能够与协作厂商的程序交谈而变
得复杂,那么,应用软件与附属应用程序集之间,就需要
大量的沟通。他们并不想要有个桌钟或计算器摆在画面上,
他们要的是真正能加强应用软件功能的东西,例如文法检
查或是其他的重要工具。提供一般用途的使用者界面固然
不是坏事,但这项功能本身要花六星期来做不说,它还连
带使其他的部分也复杂化,我们没有时间做这项工作,也
不愿把现有的程序弄复杂。
到此为止我几乎已经决定把它删掉了。但我还是先找
了前任组长谈,了解他的看法。他对于这项功能将被删掉
的事颇感失望,但也别无他法。他主张开发这项功能的理
由是,这是一项有趣的挑战,很能磨练写程序的技巧,而
在MS…DOS 的环境下使用弹出式的附属应用程序是一件
很酷的事。他说的不错,但除了酷之外,没有其他更具说
服力的理由。
至于协作厂商呢。。
协作厂商也许
返回目录 上一页 下一页 回到顶部 0 0
快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!