软工第二次阅读笔记
到底谁该负责?
首先,对于《有人负责,才有质量:写给在集市中迷失的一代》一文中的观点,我只赞成其中一部分,对于另一部分我保留自己的意见。当然文中一些观点对我还是很有启发的。以下内容仅是我个人的拙见,如有不对,欢迎指正。
我所赞同的:
1、现在的软件越来越复杂,大型软件构件在无数小软件(或者库)上,但是现在的各种库又非常多,而且各种库之间还有各种依赖,正如文中所述,“Sam Leffler的graphics/libtiff
是前面提到在安装www/firefox
之前必须安装的122个包中的一个,但安装后的Firefox浏览器却无法渲染TIFF图片。问题出在哪里我还没来得及查清楚,但这122个包中的10个需要Perl,7个需要Python;这其中又有一个devel/glib20
,同时依赖着Perl和Python,至于为什么,我到现在都没想通”。为了保证如此恐怖复杂依赖度的软件能顺利编译,软件本身需要提供驾驭如此恐怖依赖特性的配置文件,光编写这个文件就已经很恐怖了。表示曾经暑假信誓旦旦的想学习安卓开发,但是最后败给环境配置,加上自己偷了一下懒,最后都没学成,压力好大 ̄へ ̄
2、自由软件的规范性与商业软件相比,确实有很大差距。一个UNIX衍生了多少种版本的系统,甚至同一个inux发行版的同一个版本,都要发行GNOME2、KDE、GNOME3等不同的版本,自由软件再这么自由下去将不可能获得商业和主流用户的认同,甚至连开发者都快用不下去了。与此同时,我又想到了前段时间和一个同学讨论Android和ios未来前景的问题,谈到一个很关键的点就是ios相对封闭,但是它保证了自身环境的持续可靠性,好处就是bug少,安全性高。反观,Andriod为开源的系统,方便民间自制,但是与此同时,民间各种版本横行,良莠不齐。而且,就算有谷歌公司隔段时间发布新版本进行调控,但是市场上官方版本自身就版本分化问题涛声依旧,更要命的是旧版本和新版本的软件还不完全兼容,这就意味着开发者需要付出更多的精力去开发新版本以便适应系统的新版本,消费者也需要付出更多的精力去适应新的系统,和一些新的操作。
我持保留意见的:
以上的种种确实是现在软件行业普遍存在的问题。但是上面的种种问题是谁造成的呢?作者认为是一些没有专业基础的“农民”在里面搅合造成的,这些所谓的“农民”或许是不能胜任当前的工作,或许是做了一些简单的“复制和粘贴”,最终导致了整个软件环境的臃肿。但是在我看来,这只能是其中一个很重要的原因,但是并不是根本原因。根本原因在于”市集“没有制定好”市集规则“,每个人都在做着自以为正确地事,但是却没有统一的标准,各有一家之言,长此以往的结果,必然是整个软件环境的混乱。再进一步思考,为什么没有制定好”市集规则“?应该由谁制定这些”市集规则“?我觉得这个群体中的精英(有天分,有很强的实践经验,又受过良好训练),相对于那些没有专业基础的“农民”,他们更应该为这一切负责!作为精英,有义务反哺使自己成为”精英“的这个系统。作为精英,有义务引导整个系统朝着有利的方向发展。作为精英,比别人强,有义务站在更高的地方,用前瞻性的眼光规划蓝图。如果精英都做不到这些,难道你要指望那些没有专业基础的“农民”吗?“精英”和“农民”谁更有能力承担起这些责任?谁更应该负责?!
除此之外,我的收获:
1、“所谓质量,只有在某人对它负责时才有意义,而这个“某人”只能是一个人,不能是几个人——二重奏除外”。因为我个人比较倾向于以后转向于管理,所以对这些东西就比较关心,对于这个观点很赞同,而且深有体会。以我个人的经历而言,我曾经把某个任务交个了五六个人去做,一周后的最后的结果是做的糟糕透了,通过与他们的交流,反思出原因是我没有选出小组长(负责人),总结多人负责不如一个人负责!
2、彼得定律,就是说在一个根据人的业绩、成就和价值来提拔人的组织中,最终会把一些人提拔到他们并不胜任的位置上。这句话,我推敲了很多次,觉得有一定的道理,但是不一定完全对。这个取决于提拔“的性质,如果提拔是对某人的贡献的嘉奖,那么也许会出现“把一些人提拔到他们并不胜任的位置“。但是,如果提拔是从一群人里选出适合的人来担任某个职位,那么彼得定律还能生效的几率就要小很多。
我的问题是:
1、 开源软件和封闭软件,哪个才是未来的趋势?21世纪是互联网的分享时代,开源软件貌似更符合这个趋势,但是封闭软件更强的可操作性和安全性是软件行业的不懈追求。
2、 “精英文化“和”平民文化“哪个对环境更有决定性?
3、 我还是想问问我文章题目所述的问题,到底谁该负责?“精英”?还是“农民”?
4、 吐槽一句office2013,中文的双引号真的好难用,各种乱入,各种奇怪……