23埃尔马纳里克国王在哥特国王格贝里克与世长辞之后,又过了一些日子,最高贵的阿马尔家族成员埃尔马纳里克继承了哥特王位。但是,尽管他们依靠高超的速度,曾经多次在战场上解救自己,到头来还是在稳健而缓慢的哥特人面前溃不成军,最终被迫像其他民族那样,老老实实地为哥特王埃尔马纳里克服务。在打垮了赫卢利人之后,埃尔马纳里克又把目光投向了维尼特人。......
2023-12-07
第29章 工程师的谎言
当今的程序设计是软件工程师与宇宙之间的较量,前者拼命创造更大、更好、更容易操作的傻瓜程序,后者努力制造更大、更好的傻瓜。截至目前,宇宙是获胜者。
——里克·库克[1]
虽然我非常看重和尊敬工程师,但他们确实经常说谎。或许说谎是进行伟大创新所必需的,因为那么多人告诉你想做的事情不可能实现或者人们根本不需要。但是只要你明白他们在说谎,那就没问题。
1.“我对市场营销一窍不通。”这是个故做谦虚的谎言,其实这个工程师在想:“我对市场营销一窍不通,但是与我的开发工作相比,又能难到哪儿去?我应该进行市场营销和工程设计,我只希望工商管理硕士们提出一些配得上我的程序的想法。”不过,不要过度担心这个谎话,因为当工程师错过一个又一个最后期限,开始意识到他自己的问题更大时,他们会对这个谎话进行自我更正。
2.“我们就要进行贝塔测试了。”这是句毫无意义的话,因为什么时候进行测试关系不大,真正重要的是什么时候结束贝塔测试(当今贝塔测试既有效又迅速的最后期限是“在你花完钱以前”)。
在过去的好日子里,阿尔法测试的意思是“所有的功能都实现了,虽然不一定正常运行”,贝塔测试的意思是“不会再出现重复性漏洞”。但今天贝塔测试的意思是:“我们向投资人承诺的产品推出日期已经不能再往后拖了。”
3.“我会对程序进行注释,这样接替我的人会明白我做过什么。”这是一个善意的谎言。工程师的确想对程序进行注释,但是随着时间消逝,最重要的任务已发生了改变。给管理者的问题变成了:“你是想让我对程序进行注释呢?还是快点完成编程?”答案猜都猜得出来。幸运的是,缺少注释通常影响不大,因为程序本身漏洞百出,不到1年就有要整个重写。
4.“我们的程序结构具有可扩展性。”这是我最喜欢听的谎话。典型的情况是,一个没有推出过产品的工程师会先利用Visual Basic语言创造出一个原型,然后再这么说。整句谎话似乎是这个样子:“谷歌搜索引擎的结构不像我的这个这么有伸展空间,它同时可支持2500万个搜索。我们能轻轻松松地解决10亿。”幸运的是,大多数情况下,产品的采用比总裁“保守的”预测要慢,因此可扩展性没成为一个问题。
5.“这个程序支持该产业的所有标准。”这几乎是真的,但是遗漏了一小点:“这个程序支持所有我同意的行业标准。”工程师私自决定忽略那些她不喜欢的产业标准,比如微软公司发布的标准。对于工程师来说,这只是小事一桩,反正用户不会知道。
6.“我们有一个有效地错误提交报告数据库和系统。”可是,设计错误提交报告数据库和系统背后的假定是程序没有漏洞,所以数据库和报告没多大意义。一般来说,如果有记录的错误最大值不超过1000,那就说明公司没有仔细地追踪错误。
7.“我们可以让一个境外的印度程序组更快、更经济、更好地完成这个工作。”程序组普通成员通常不会说这个谎话,一般只有首席技术官这么说。不知怎么会使人们认为印度的每个程序员都又快、又好、报酬又低,而美国的每个程序员都又笨、又慢、又昂贵。这显然不是事实。(www.chuimin.cn)
8.“我们的贝塔测试站点喜欢这个。”在从事技术行业的25年中,我从没听说到过有公司报告它的测试网站不喜欢它的产品。这有三个原因:首先,很多测试网站十分荣幸地获得发行前的软件,他们不想说任何负面评论。第二,大多数测试网站对这个软件的使用率不高。第三,大多数测试网站不想说坏话来批评一个公司的新产品。因为如果那样做就会像告诉某人他的宝宝是个丑八怪一样不为社会所接受。
9.“这一回我们对了。”有关这个谎言的可怕之处是工程师又真的相信了,问题是“这一回”反复出现。我很信任工程师们,并且相信从长远来看他们能做对,但问题在于从长远来看我们都是会死的。
10.“这个程序太差了,完全重做都比调试和扩展当前的版本要快。”每个程序员都会这么评价其他程序员的程序,有些人照样会对重写后的版本这么评价。
11.“我喜欢思考结构的问题,但是我会写程序。”这说明这个程序员不会写程序,并且还可能不会设计一个好结构。
12.“这在我的电脑上运行良好。”“我的电脑”没准儿是世界上唯一一台能正常运行这个程序的计算机。
13.“当然我可以不写程序,改做业务。”这是每个工程师出身的创业者著名的最后箴言。这说明他(或她)既放不下写程序,又不能做业务。
14.“连我妈妈都能操纵显示器。”当然能啦,你妈妈有麻省理工学院的计算机博士学位。
我喜欢工程师们说的谎话,原因有三:首先,他们的谎话表现了工程师对公司实际运作情况的孩子般的无知;第二,工程师们确实相信他们说的谎话,而创业者、风险投资人和律师则不是;第三,他们说的大部分谎话并非不诚实,而只是“有点早”或者最终会实现。如果你是一名工程师,现在你就会知道你无意识地在做些什么。如果你和工程师合作,现在你知道工程师在哪些地方说了谎。
【注释】
[1]里克·库克(Rick Cook),美国轻科幻小说作家,以魔法系列丛书著称,作品多受计算机从业者喜欢。——译者注
有关TS00030125的文章
23埃尔马纳里克国王在哥特国王格贝里克与世长辞之后,又过了一些日子,最高贵的阿马尔家族成员埃尔马纳里克继承了哥特王位。但是,尽管他们依靠高超的速度,曾经多次在战场上解救自己,到头来还是在稳健而缓慢的哥特人面前溃不成军,最终被迫像其他民族那样,老老实实地为哥特王埃尔马纳里克服务。在打垮了赫卢利人之后,埃尔马纳里克又把目光投向了维尼特人。......
2023-12-07
及里克将杀奚齐,先告荀息曰:“三怨将作,秦、晋⑤辅之,子将何如?”译文九月,晋献公去世,里克、丕郑准备接纳重耳回国即位,所以率三位公子的党羽作乱。当初,晋献公派荀息辅佐奚齐。等到里克将杀掉奚齐,他事先告诉荀息说:“三方的怨恨将要发作,秦国和晋国的人都支持他们,你准备怎么办?”十一月,里克在朝堂上杀了公子卓,荀息自杀。......
2023-09-22
24匈人的入侵但就在这不久之后,像奥罗修斯所说的那样,匈人向哥特人发动了血腥的侵略战争。如此起源的匈人,后来逐渐接近了哥特人的国家。在创伤和匈人入侵痛苦的双重打击下,埃尔马纳里克绝望地结束了自己的生命,死时已满110岁的高寿。此处所说有关匈人起源的鬼怪传说显然与服用这种药草后在大脑中产生的迷幻状态有关。......
2023-12-07
路易·康美国宾夕法尼亚州费城;1961年路易·康一生设计了20幢私人宅邸,但只有9座建成了。实际上,康非常喜欢设计住宅,并将它们作为孕育和展示其思想的温床与标本。为单身女性设计的埃谢里克住宅位于费城北郊,完成于1961年,展示了已经成熟的路易·康风格的一系列重要特点。例如,埃谢里克住宅的起居室就是通过东南向的、全高且固定窗两侧的木制百叶窗通风。当此宅设计之时,这座位于费城的大楼正在施工中。......
2023-08-20
30阿拉里克国王当西哥特人的军队进入这座城市的郊区时,他们给正在里面居住的霍诺留皇帝派去了一个使团,询问皇帝说,他是否能允许哥特人和平地在意大利定居下来。公元406年8月22日,斯提里科在拉文纳被霍诺留斯皇帝杀害,此后阿拉里克才向意大利进军并包围罗马城,而攻占它则是在公元410年。——译注哥特国王,公元410—415年在位,阿拉里克的小舅子。......
2023-12-07
在阿塔拉里克国王和他的母亲活着的时候,这些贵族们一直遵守着先王的这个遗令,因此享有了将近八年之久的和平。在阿塔拉里克国王病逝后,阿马拉斯文塔被迫将王位授予提奥达哈德,因为后者是阿马尔王族此时仅存的男性后裔。......
2023-12-07
33盖瑟里克国王但是汪达尔国王盖瑟里克已经应波尼法提乌斯的邀请,前往非洲。波尼法提乌斯担心会遭到讨伐,果然不去罗马,并向当时占领着西班牙的盖瑟里克求援,答应把北非的三分之一割让给他。盖瑟里克欣然接受,立即率八万大军渡过直布罗陀海峡。波尼法提乌斯闻讯急忙阻止盖瑟里克进军,但为时已晚。——译注汪达尔国王,盖瑟里克的长子,公元477—484年在位。......
2023-12-07
22汪达尔战争作为希尔德里特的儿子、奥维达的孙子、尼达达的后代,格贝里克所获得的荣誉一点儿也不少于他的祖先。从战场上逃脱的部分汪达尔人重新聚集起来,把他们的老弱妇幼等不能作战的成员组织成队伍,离开了他们不幸的家园,向君士坦丁大帝请求一块容身之地。后来,仇视汪达尔人的政治集团煽动霍诺留斯皇帝,逮捕并处死了他。......
2023-12-07
相关推荐