以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 软件工程论坛 』   (http://bbs.xml.org.cn/list.asp?boardid=48)
----  [灌水]歪说软件工程28篇  (http://bbs.xml.org.cn/dispbbs.asp?boardid=48&rootid=&id=31211)


--  作者:wcdxyl
--  发布时间:4/25/2006 10:12:00 AM

--  [灌水]歪说软件工程28篇
歪说软件工程1 - 科学沦为艺术
  话说某大学生美眉在妓院找了一个操作电脑的工作,以后她要不沦为妓女,要不总被认为是妓女。
  当软件工程作为科学遭遇实践,它要不沦为艺术,要不总被认为是艺术。
  科学与艺术的相同在于都是人生产的;科学与艺术的区别在于,科学操纵人,而人操纵艺术。
  当软件工程不是去操纵人,而是由人来操纵,结果就是软件工程还是管理的艺术。
  当科学沦为艺术或被认为是艺术,要不该怎么样就怎么样,要不原来怎么样以后还怎么样。
  歪说软件工程2 - “SoSo”主义
  话说小两口A婚后财务由老婆打理,老婆每天给老公10元零花钱,并且经常询问老公花钱的情况。这种叫“精细管理”;
  小两口B,老婆每个月给老公300元零花钱,并告诉老公可以随便花,但规定花完就没有了。这种叫“粗放管理”;
  小两口C,老婆把自己和老公的工资一起全部放到一个抽屉里,大家都可以随便取、随便花,当然花完就没有了,没花完的做为积蓄。这种叫“信任管理”;
  软件工程中的管理模式也大抵超不出以上三种或其组合。
  英文中有个词叫“SoSo”,福建方言中有个词发音类似“Shǎo Shào”的词,意思都是“马马虎虎”,即“tiger-tiger-horse-horse”。中国人有四种:新加坡人、香港人、台湾人、大陆人,大陆人大都喜欢“马马虎虎”,或者说许多时候都只能马马虎虎、难得糊涂,或者说大都是“SoSo”主义者。
  软件工程却希望做到像上文所述第一种的“精细管理”,这时就会与大陆人的“SoSo”主义冲突,故大陆软件公司搞软件工程成功很困难。
  但是,其实“SoSo”主义是“和谐社会”的基础。
  歪说软件工程3 - 成人纸尿布
  话说杨利伟乘神州5号上天时不能用马桶,是用的类似成人纸尿布的设备。
  小孩带尿布是因为撒尿是不自觉的,但大人用尿布,对于没有经过特殊训练的普通人来说,不知道会是什么样的感觉,估计会很不爽快。
  软件工程中也经常有“使用纸尿布”的行为。有时因为软件发布期限所限,只能采用一个临时的解决方案把需要解决的问题解决,由不得程序员用更多时间去实施更爽快的解决方案;程序员有时会因为暂时想不出更好的方法而采用临时的解决方案;或者确实因为水平所限,只能采用别人会觉得很不痛快的解决方案。
  这些都没什么,都很正常。最不爽的是,当更痛快的解决方案可以用时,仍然由于种种原因----比如懒得用、或不敢用、或习惯了用老方法等等----而继续保持“使用纸尿布”。
  歪说软件工程4 - 光彩守护员
  话说老Y每天上班都路过一座大桥,注意到桥上总有工作人员值班,起初都以为是守桥的,但想想也不对,如果是守桥的应该是荷枪实弹的武警才对,后来有一天看到工作人员穿了一个马甲,背后有几个字“光彩守护员”。
  这年头可能不怕阶级敌人炸桥,就怕小偷小摸偷装扮桥的许多价值不菲的灯具,小偷拆不走桥,拆灯具则容易。不管是怎样,修一座大桥,能创造一些职业甚至行业是事实。
  软件工程经过多年发展也创造了许多职业甚至行业。比如专业软件工程咨询师,以及咨询公司,专业测试员,以及专业搞测试外包的公司,都有活得上好的。
  这个世界变化快,如果总以己之见度人,容易范坐井观天的错。
  歪说软件工程5 - “小燕子”性感写真
  话说昨晚当地八卦电视台八卦节目播出一则消息,瞪着两只白痴空洞的牛眼到处晃荡曾经看似清纯可爱的“小燕子现在长大了,也拍起了写真集,穿着性感内衣,把白花花的皮肤展示给大众。不管她展示的是内衣还是自己,给大众展示性感的目的是达到了。
  这不能说是进步或者随大流,只是自然的成长,作为一个演艺公共人物,取悦大众是她要做的工作,毕竟大众的审美取向是多样的,朴素可爱可以取悦一部分人,性感迷人也许可以取悦更多的人。
  作为软件工程产品的软件其所有功能最终通过软件界面为用户所用,如果一个软件刚开始一直坚持朴素的界面风格,后来也开始表现得或性感或妖艳,这也不能说是错误或者退步,只是自然的成长,毕竟软件是给用户用的,尤其是用户多的大众软件,用户对软件的认可许多时候也依赖于用户对软件界面的直观感受和审美取向。
  歪说软件工程6 - 思想生产力
  话说丫丫生物公司发明了一种稻谷种子,既适合在水田播种、又适合在旱地播种,而且不怕任何病虫害、产量远高于已有产品,所以一段时间后全球都种这种稻谷了,但缺德的是,这种稻谷种子是做了技术处理断子绝孙的,收割后的稻谷不能用于做种子,所以都只能不断地从这个公司购买种子,所以它已富可敌球。
  当然,这是没有发生的可能。但,垄断“种子”销售的商业模式早已成熟,具体到信息产业就是有各种卖“标准”的公司,这些公司在商业价值链的顶端,对标准有独占的权力,其它人要用都要获得授权。
  “标准”通常伴随着某种概念,概念是思想的产物,在软硬件行业,一个有价值的概念通常都能迅速地转化为商品,不管是芯片还是软件还是书籍。比如我们耳熟能详的“B2B”、“UML”、“中间件”、“极限编程”等等,都已经是某种产业链的基础。
  基本上没有中国人原创的能成为生产力的概念,许多东西等中国人明白过来,别人已经赚了很大一把了,不过也有努力跟进也很赚钱的,比如金蝶的中间件、阿里巴巴的B2B。
  可能中国人太忙了,没有时间思想。在思想能够迅即转化为生产力的社会,谁占据先机谁就将处于商业生态圈食物链的顶端。
  歪说软件工程7 - 安静的迪吧
  话说老Y在震耳欲聋的迪吧中与群魔乱舞,他突然停止下来,在声音震动的浪涛之中,突然感受到一种宁静,于是在旁边坐下来,开始静静底地享受,好像自己与整个世界都已沉寂下来。
  人都是因冷才知热,因热才知冷。老Y喜欢技术,时常把自己置身技术的不同领域,感受到许许多多的嘈杂,同时也在宁静中明白。
  不论过程整体的RUP、XP、UML,还是架构和编码的OO、SOA、AOP、IOC,都是为了解决一个问题,即分工合作的问题,即不同的部门、不同的人、不同的代码,都能尽可能把自己擅长的事情做好,而不需要太多地管别人是怎么做的,但又能低成本地实现有效的沟通与合作,自己已经做好的事情别人不需要重新做。
  歪说软件工程8 - 鲨鱼与天蚕
  话说海里的鲨鱼可以闻到1公里之外的血腥;陆上的雄天蚕能够感知到4公里外正在求偶的天蚕雄蛾的存在。
  离圣诞还有很多天,街上已经布满圣诞的味道,到处可见圣诞小屋和圣诞树。几十天后的圣诞商机是固定,似乎不需要去预测,但软件行业变化多端,1年以后的商机已经很难预测,更不用说多年以后。
  听闻大公司为了保持竞争力,而投入研发力量现在做未来的预测产品,许多东西做出来时可能没有意义,但等有意义时,哪怕只有1%的产品是成功的,它也能因为遥遥领先对手而占尽先机。
  歪说软件工程9 - 比基尼
  话说老Y从乡下来到迷人的夏威夷海滩,看到满眼的比基尼泳装,甚是不习惯,心里想到:“比基尼展示了令人感兴趣的部分,但却隐藏了关键的部分”。
  许多竞争对手的产品在它们的技术白皮书中展示了许多技术特性,许多业界领先的观念得到了怎么样的贯彻与实现,甚是诱人,具体研究,有些果然如此,但不知道它是怎么做的,当然,这些就是被隐藏的关键,只有努力深入研究才能搞清楚。
  歪说软件工程10 - 红绿灯
  话说比较早的时候街上的红绿灯很简单,一个方向红的时候一个方向绿,每隔60秒交替变化。这时用简单的定时模拟电路控制就可以了,而且通过电阻电容的调整也能调整变化间隔。
  后来觉得这样很不人性化,用户界面不好,让行人干等不好,应该加一个数字计时器,显示还剩下的需要等待秒数。这时用模拟电路的架构就不行了,必须用数字电路,需求变化第一次导致架构变化。
  许多路口,由于两个方向的流量不一样,导致需要两个方向的灯亮的时间不一样,比如一个90秒,一个30秒,这时要求红绿灯能进行设置。对数字电路架构添加这种功能不是很难。
  再后来,由于许多路口的流量变化很大,要求红绿灯能智能控制,于是安装了摄像头监控流量,与红绿灯一起跟监控中心联网……,就是所谓的智能交通。
  需求总是变化的,其中许多是由竞争对手而不是用户驱动的;许多需求导致产品架构变化,代价通常是很大的。
  歪说软件工程11 - 池鱼
  话说小池塘里只养了一种鱼,冬去春来,春来冬去,鱼儿不停地生殖繁衍,看着一群群小鱼儿长大,然后又会有新的一群,但尽管没有人捕捞,鱼儿从来没有把小池塘填满过。
  鱼妈妈会一边生小鱼,一边把自己的小孩吃掉。简单的自然生态自己维护着自己的平衡。
  软件市场也是一个自然生态系统,微软再大,它也不会吃掉所有市场,自己长满整个池塘。
  歪说软件工程12 - 浪漫的事
  话说IBM向开放源码社区贡献了一个Java集成开发环境“Eclipse”,这个原来没有什么名气的IDE,现在已经成为一统Java开发工具江山的开放平台,IBM收购的Rational商业开发工具体系已经全部迁移到Eclipse中,Borland的Java开发工具体系也在逐渐迁移,做Java的Sun原来也做有自己的IDE,现在基本上放弃自己做了。
  “Eclipse”是日蚀的意思,不过这个项目现在确实有遮住“太阳”(Sun)光辉的趋势。中国人想象“月蚀”是天狗把月亮吃了,这是一件很浪漫的事情,开放源码也是一件很浪漫的事情,“天下为公,各尽所能,各取所需”,不过,开发的东西要能确实可用、实用,而不只是一种玩具,却一点也不浪漫,同样要一行行代码地编写,一行行代码地测试。
  Eclipse的所有源代码都可以在其网站上下载到,下面是3.1版本一些不完全统计数据:
  开发目录708M;
  目录个数1.4万;
  文件个数5.2万;
  Java源程序文件个数3.5万,共199M,代码行数592万;
  其中JUnit测试代码文件个数1.3万,共40M,代码行数119万;
  文档*.htm个数0.36万,共45.9M;
  文档*.ppt;*.doc;*.swf个数33个,共17.4M。
  歪说软件工程13 - 树
  话说山上的树长得高低不齐,高大的树都有高大的主干,如果是千年老树,则主干更尤庞大;许多低矮的灌木则到处都是枝桠,看不出哪儿是主干。
  软件的生长理应如能长高的树,而不是低矮灌木。树木从地底下长出来,先只有一片叶,一小枝,而后成两片叶,枝叶自己生长的同时,主干也不断生长。
  而许多软件都生长成低矮灌木,因为主干没有生长,即生长的过程中没有不断积累并形成自己的技术基础。
  歪说软件工程14 - 李宇春
  话说李宇春成名后代言的广告不少,可以被轻轻地总结一下。
  老Y所知的大概有三种:食品、手机、电脑,第一种显然是消耗品,手机基本上也已经成为消耗品,商业社会的魔力就是能把技术转化为商品并以时尚的名义销售,消费者既消费实用又消费时尚,但产品会在购买后一年后价值降低到原来的一半或更低,电脑也是这样,所以也可以说是消耗品。
  老Y一朋友,家里做批发生意,98年开始用管家婆软件,用到现在没做升级,当然店面和店员也没什么变化。许多商品软件都是耐用品,当然消耗品的也多,比如售价<1000元的各种游戏,许多人买了用不久就会去买新的,而购买售价>1000元的商业软件大多数消费者还是很慎重的,因为使用后如需更换还要付出额外的成本。
  作为耐用品的商业软件,其广告代言人,从各种广告可以看出,大都选择老成持重的。
  歪说软件工程15 - 超人鲁班
  话说一个工地上,许多人在忙着修一座拱桥,其中一个老头,每天不紧不忙地凿着一块石头,凿得方不方、圆不圆、长不长、扁不扁,大家都以为别人认识他,都没理他,他凿好后就扬长而去。桥快要竣工时,桥面中间出现了一个空隙,怎么努力也弄不来一个合适的石头,有人想起那个陌生老头凿的石头,把它搬来,结果严丝合缝。那个老头就是鲁班。
  古代的拱桥都不太长,鲁班不画工程图也能把它修好,但如果请他来修旧金山金门大桥,估计他也得先学好几何学和力学。软件工程也有很多学问,下文摘抄MartinFowler在《企业应用架构模式》中的一段话:
  “即使你对极限编程[BeckXP]不感兴趣,你还是应该认真地思考三个方面的技术实践:持续集成[FlowerCI]、测试驱动的开发[BackTDD]和重构[FowlerRefactoring]。这些技术虽然不是万能的灵丹妙药,但它们能够帮助你在需要的时候更容易地改变你的系统。除非你比迄今为止我见过的人更能干或更走运。”
  歪说软件工程16 - 现场直剥
  话说老Y住处楼下就是一个自由市场,好几次听到一个卖柚子的在吆喝:“梁平柚子,一元一个,现场直剥……”。“现场直剥”的意思是买了之后现场直接给你剥开。
  语言可以这样用吗,妙哉!随意摘录一句古文:“夫玄黄色杂,方圆体分,日月叠璧,以垂丽天之象;山川焕绮,以铺理地之形……”(刘勰,《文心雕龙》)。真不知道这些辞藻是怎么被堆砌起来的,奇哉!
  发明汉字的仓颉看到这些,估计也会问道:“汉字可以这么用吗?”。软件产品用户多了,有时收到用户的反馈,说怎么怎么操作后出了什么问题,程序员心里想:“这个软件居然可以这么用?”
  如果用户说了怎么操作,那要解决问题比较好办,如果用户没说,只说出的问题,就麻烦了。软件中有很多隐藏的假设,比如假设用户会这样操作、假设用户这个地方会输什么内容,一旦这些隐藏的假设被“不守规矩”的用户触碰到,就可能导致问题。
  但软件总不可能把什么都考虑到,就如仓颉不能限制卖柚子的也玩汉字谐音,程序员在软件没加约束时也不能限制用户不能那么操作,所以为了避免出问题,解决方法之一就加尽可能多需要的功能约束,之二就是遵循“契约编程”的道理,在每个方法、每个函数做约束,以便出问题时能知道问题所在。
  简单的方法是可以这样:由于每个方法、每个函数对传入的参数都会有一些假定,可以把已知的假定直接写成代码约束,比如用Assert来要求某某参数不能为空,同时给出违反约束时的提示。
  歪说软件工程17 - 横过深渊的一根绳子
  话说尼采认为“人之所以伟大乃是他是一个桥梁,而不是一个目标”。尽管这座“桥梁”如“横过深渊的一根绳子”,“渡过是危险的,在路上是危险的,回顾是危险的,在中途战栗和踌躇是危险的”,但人却必须越过它。
  软件产品即使把周期拉长,也很难断定它是一个桥梁还是一个目标,但确实不管前进、还是后退、还是踌躇也都是危险的。
  比如CRT显示器,几年前还几乎都是弧面的,没有平面的,而现在几乎没有人买弧面显示器甚至有人都知道什么是弧面显示器了。两种显示器,从基本需求的角度来说,都能满足显示的需求,但竞争总是使更先进的功能变成常态,竞争导致优胜劣汰。
  软件产品如果前进而没走对,可能危及即得的地位,而如果不前进或者后退就容易被竞争对手找茬,所以不管速度如何还是要前进,为了避免前进的风险,我们求助于软件工程的一些过程管理方法。
  歪说软件工程18 - 小精灵的意见
  话说《指环王》里的弗罗多说:“不要征求小精灵的意见,因为它们将会既说Yes又说No”。
  商业软件产品的许多用户有时也是既说Yes又说No,或者说既要那个又要这个。
  先换个领域,倘若一个生产猪饲料的,猪显然不知道自己想吃什么该吃什么,即使是养猪的也未必都知道或能科学地知道,所以厂商有责任研制有效的饲料产品,即告诉养猪的你的猪吃这些饲料就可以了。
  软件产品用户虽然作为人是有积极主动性的,但大多数时候确实是不知道自己要的是什么的,所以作为厂商,应该是特定商业领域的专家,有责任并有义务研发有效的软件产品。因为有长期的积累,所以不信口开河,因为有大量用户的验证,所以确实有效果。
  不征求小精灵的意见,是因为有能力告诉它们可以这样,而它们大多数认为这样确实可以。
  歪说软件工程19 - 巴比伦塔
  话说据圣经记载,在今天相当于巴格达附近的地方,人们曾想建造一座通天的巴比伦塔,使人类的智慧,达到上帝的高度。根据设计,整座塔共有七层,而当时其他的塔楼都仅有五层,而且这座正方形建筑的底座边长为91.50米。面对如此浩大的工程,耶和华惟有将之归结为人类不知天高地厚的狂妄自负,于是,他害怕这件事情,因此就有意把人们的语言搞乱了,使他们彼此不能听懂对方的语言,人们因对立而争斗,上帝却从中达到了自己的目的。
  巴比伦塔没有修建成功,但许多软件能以恰当的分层设计而成功,所以分层已经成为一种基础的设计模式。
  所谓层次的概念就是一层一层分割一目了然的处理方式。层次体系就是利用分层的方式来处理复杂的功能,层次系统要求上层子系统可以使用下层子系统的功能,而下层子系统不能够使用上层子系统的功能。一般下层每个程序接口执行当前的一个简单的功能,而上层通过调用不同的下层程序,并按不同的顺序来执行这些下层程序,层次体系就是以这种方式来完成多个复杂的业务功能的。
  软件分层有以下优点:
   良好的透明和封装;
   高内聚、低耦合;
   易于扩展、维护和重用;
   开发人员易于分工,提高开发效率。
  缺点:
   效率降低;
   开发难度增大。
  歪说软件工程20 - 餐具洗洁精
  话说老Y冬天有时吃完晚饭过许久才洗碗,碗中的油都结成坨,还好有餐具洗洁精,解油效果比热水好,但冬天为了手不冷,热水还是要。
  当然,简单的方案是既不用餐具洗洁精也不用热水,但是由于需求的复杂:既要手不冷、又要不油腻,所以用了两种方案。
  做软件也是这样,需求总是复杂的,许多时候并没有单一的方案能完美地解决所有问题。
  歪说软件工程21 - 狗屎GDP
  话说一则著名的笑话。两个学经济的学生在路上为了一点点小事争得面红耳赤,谁都说服不了谁。正当争执得不可开交的时候,两人看到了路边有一堆狗屎,甲就对乙说:如果你吃了这堆狗屎,我就给你5000万。乙想了想,把狗屎给吃了,虽然很不舒服,但甲给了乙5000万。走着走着,两个人又见到一堆狗屎,乙心理很不平衡,就对甲说:如果你也吃了这堆狗屎,我也给你5000万。甲为了赢回那5000万,也忍痛把这堆狗屎给吃了。结果乙又把那5000万还给了甲。两个人越想越不对劲,什么都没得到,还白吃了两堆狗屎。于是他们去找了一位很有名气的经济学教授。那个教授听了他们俩的事后,颤颤巍巍地伸出一个手指,激动地说:1个亿呀,1个亿!你们俩仅仅吃了两堆狗屎就为我们国家创造了1个亿的GDP……
  GDP计算的是流动率,即对一段时间内的流动量进行求和再除以时间,目前时间都是以1年为单位。
  对于软件开发来说,不能追求GDP式的流动率,如果一个软件开发了几个月,就推倒重来,代码的流动率显然是最大的,虽然这种情况并不是不会发生,但应该是要避免的。软件开发追求代码复用,复用不同于文章写作中的引用,引用是拷贝粘贴一个然后进行修改,而复用不是。
  也有时追求复用是妨碍发展的,比如中国经济中的一些国营企业问题,有时只有推倒重来,为现在和以后的流动率做贡献。
  歪说软件工程22 - 温暖的被窝
  话说在寒冷的冬天,早上要从温暖的被窝中爬起来,并不是一件舒适的事情。
  当人对于某些人、事、物习以为常后,便会产生「舒适区」;而改变,就会变成「非舒适区」。由于人是自我保护的动物,因此多会选择躲在舒适区。
  软件工程中也经常触碰到人的非舒适区,比如在要更换使用的工具软件、更换代码底层、更换代码结构、更换编码惯例、更换工作方式,等等情况。
  歪说软件工程23 - “阿波罗”计划
  话说在1961年,美国总统肯尼迪向全国发言,宣布开始一个为期十年的太空计划----“阿波罗”登月计划,目标是要把一个人送上月球;1969年登月计划成功完成。
  下文是人们对该计划为何能成功的总结,相信也适用于软件工程:
  “首先,选择了一个明确的目标----把人送上月球;
  其次,有一个基本的计划可以遵循,许多问题都还没有解答,但已有一个起步之处----一个基础计划;
  第三,有一个目标时间----在十年之内把这个梦想变成现实。
  参与登月计划的男人女人们一天接着一天地为实现他们的目标一起工作。他们并不确切知道怎样把一个人送上月球,但是他们忠实于目标并且确信它能被做到;他们并不确切知道宇宙飞船看起来是什么样子,更未想到计算机在这个项目里会起到那样大的积极作用。虽然存在着许多未知的因素,但是他们始终把目标摆在面前,他们利用了团体的智慧,即使碰到暂时的失败,也保持着实现目标的信心。因为他们确信他们的目标能够被实现,结果就是美国提前一年成功地把人送上月球。
  再重复一下他们开展计划的步骤:
  第一、设定了一个目标
  第二、着手制定计划
  第三、严格规定了一个实现目标的时间
  第四、利用集体的智慧
  第五、每个人都在头脑里不断记着目标
  第六、开展行动
  第七、抱有实现目标的必胜信心”
  歪说软件工程24 - 郎闲评
  话说留洋博士郎闲评自信深喑西方经济学之道,曾通过第一财经的“财经郎闲评”节目,通过数据推理揭示国内几个巨大国企的老总借资产改革之名,行转移侵吞国有资产之实,虽然做得合中国法律、但并不合情合理。他所说的东西实在关系国计民生,所以一石激起千层浪,他也成为众矢之的。除了揭示“内幕”,他还给出了解决之道,即推行“职业经理人”制度。
  所谓“南橘北枳”,西方发展了一两百年的经济学,在只有二十多年市场经济经历的中国是不一定完全行得通的。所以有评论说,你用的数据没错,推理也没错,但我们的做法也没错,现在的资产改革模式,也是二十多年摸索的结果,你没有理由一下子就否定掉,你根本就不懂中国国情。
  国情确实是个很好的接口,似乎能让对方无话可说。其实西方软件工程科学中的CMM等,在中国也有类似的遭遇,CMM说我的东西就是好,许多公司说,你不懂我们公司情况,你的东西我们不适合。
  但话又说回来,中国已经步入市场经济,已经不是以前靠许多政府官员凭经验、靠感觉、拍脑袋搞经济的时代了,学者型组织“中央政府经济智囊团”已经对中国经济决策起着非常重要的作用。郎闲评说的东西,其实许多人都知道只是没说而已,所以,有人说他只是“皇帝的新装”中说真话的男孩。这种人不能多,但也是很需要的,本来就是要有人勇于说真话的。
  中国的文化以“人”为大,这样的文化承认甚至纵容人性的弱点(比如贪婪),西方文化以“科学”为大,这样的文化努力通过科学、法律等来限制和平衡人性的弱点。中国要走搞经济求发展的道路,而不是追求“鸡犬之声相闻,老死不相往来”的境界,就迟早要走西方经济的发展道路并求助于经济科学,只是需要一个过程而以,毕竟科学不是人说了就算的,其实事实也已经是这样。
  中国搞市场经济,成果有目共睹。许多软件公司搞CMM,也有收获甚丰的。
  歪说软件工程25 - 能见度不到5米
  话说今天大雾,能见度不到5米,老Y最近一直走一条新修的大道上班,今天也是,结果在一次拐弯后越走越觉得不对,新修的路两旁也没有公交站牌等明显标志,在路中,觉得自己就像被压在一口大锅下,不知道怎么出去,只好凭感觉原路折回到老路,这条路更熟悉些,路边标志也明显,有益于方向感的保持。
  软件开发中开发新东西有时也是,前方能见度不到5米,只能凭感觉先往前走,方向感好才能顺利到达目标,路径熟悉或走过也有利于到达目标。但有一点,就是目标首先要清晰,否则只有能走一步算一步,边走边清晰目标,折回原路另外找路有时也是不可避免的。
  歪说软件工程26 - 有罪推定
  话说古时候衙门逮到一个嫌疑犯,嫌疑犯经常要自己来自己来证明自己是无辜的,否则就会被判有罪。这种叫“有罪推定”原则,即“如果不能证明是好的,就是坏的”,这会造成冤案太多。
  随着社会法制的进步,嫌疑犯不需要自己来证明是无辜的,而是其在被证明有罪之前都是无罪的。这种叫“无罪推定”原则,即“如果不能证明是坏的,就是好的”。中国的刑法中规定嫌疑犯有义务配合警察调查,这种“有义务”可能会被加上“强迫”两个字,所以可能还有刑讯逼供的现象。据说中国的刑法也将承认“沉默权”,即“你有权保持沉默,但你说的一切都将成为呈堂证供”。
  但是,在软件开发中,任何全局资源(全局变量、全局实例等)在被证明无辜之前都符合“有罪推定”原则,应尽量避免使用。
  歪说软件工程27 - 德拉姆与黑洞
  话说云南省以马帮运输茶、盐、粮食的古道已有近千年的历史,马帮就像今日的汽车,在山路中将背上的货物运往各地。《德拉姆》是田壮壮的一部纪录片作品,记录云南滇西北怒江流域原住居民的生活现状,以及“最后的马帮”的古道之行,据说片名取自其中一头在路途中死去的马的名字。很难想象,人们还可以如此简单如此简朴地生活,那里可以没有互联网、没有计算机,甚至可以没有公路----正是因为还有地方没有公路,所以还有马帮的存在。
  马帮是还存在的一种现实的生活方式,而黑洞就完全是精神的产物。爱因斯坦提出广义相对论的第二年,即1916年,就在理论中发现了黑洞的存在,但直到1960年,科学家们才理解并接受了黑洞的存在。据天文观测,我们银河系的中心就有一颗超大质量的黑洞,它的质量是太阳质量的400万倍。今天,黑洞已经广为人知,并有许多人靠研究黑洞就可以生存。
  马帮和相对论都离普通人的生活十万八千里,但它们都存在着,你不能说哪个落后哪个先进。做软件的公司中,有许多小公司,它们甚至可以不知道软件工程为何物,几个人拉些项目做,活得上好;也有大公司,一个项目动不动就几百万几千万行代码,需要很多人的协作,它们努力研究并实施软件工程,以避免失败的惨痛。
  《德拉姆》中从云南丙中洛乡到西藏察瓦龙乡,只能沿怒江而上徒步而行,但公路已经在修,马帮的生活会随着公路的修通而完全改变。许多时候,我们都会并且可以忽视外界的变化,但是同时也无法觉察我们自己是如何变化的、或者过去是如何消失的。
  歪说软件工程28 - 汪道涵
  话说汪道涵仙去,几乎所有媒体都报道了昨日各界人士为汪老送行。最早知道汪道涵是在当年高考时,因为要背的时事政治中有“汪辜会谈”的内容。
  在靠厦门有个叫“青屿岛”的地方,肉眼可见台湾方面立的“三民主义统一中国”字样,当然,青屿岛上也有“一国两制统一中国”的大字。老Y老家在福建,特别关心台海局势,心想要是哪天打起来,一炮轰过来,可能俺们家乡就没了,没法不关心。由于国家的战略筹划问题,福建以前几乎没什么工业,家乡人民要打工都得南下深圳、广州等地。
  正所谓“神仙打架,百姓遭殃”。在软件领域,微软为了与SUN竞争,搞了.NET,结果就是大量的公司产品战略都要跟着转移,有许多的资源要投入到其中;同时,大量的程序员也要开始学习,当然,这个不一定是“遭殃”。
  商业社会谁拥有的智慧资源多,谁就当神仙做规则制订者。其他公司要想摆脱被动,还是只有努力自已也当神仙,成为规则制订者。

--  作者:jiachong
--  发布时间:4/25/2006 1:08:00 PM

--  
这个好,看到完整版了
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
62.500ms