梦断代码阅读笔记03
刚开始读这本书的时候,我是抱着一种读故事的方式去读的,但是慢慢读的过程中,就会发现,这并不是一本故事书,在通过每一个小故事的讲述中,讲述了软件开发的历史,每一次大变革的经验,在这次的读书过程中,我对书中的内容作了如下摘要:
1、布鲁克斯法则:往已延误的项目中补充人力,只会使其继续延误。----《人月神话》作者
2、布鲁克斯发现,在实际开发中,编码只占软件项目开发时间的1/6,
有一半时间用于测试和修正缺陷。
3、布鲁克斯提到,“在预估及安排项目进度上的每一分努力”都是“危险且具欺骗性的神话”。
所谓“人月”,是一种科学管理概念,它假定生产力可被拆分为不连续、无差异、可替换的单元。
4、布鲁克斯观察到,“只有任务能分派给许多相互之间无需沟通的工作者时,人和月才是可互换品。”
5、布鲁克斯发现,制作软件的大量工作受困于“序列约束”,
它限制了任务分解的程度:完成某项任务的先决条件,这与人力投入多少无关。“十月怀胎”,
布鲁克斯写到,“无论多少妇女参加都一样。”
6、1985年,麻省理工怪才斯托曼出于对商业软件产业封闭代码积习的憎恨,创办了自由软件基金会
(Free Software Foundation)。基金会发布了一种特殊的软件许可,依据该许可,你能够获得全部所需代码、
复用这些代码、组合到新产品中---但利用该代码创建出来的任何产物,也必须采用同样的许可。
这种被称作GPL(GNU Public License)
7、GNU--一个旨在创建占据各大学计算中心的自由UNIX操作系统版本的项目。
8、瑞蒙德指出托瓦茨(Linux)其中的两个要诀:其一,低成本、广泛地接入像互联网那样的网络,
让开发者之间能建立迅速、可信的沟通渠道,存储可被开放访问的共享知识和代码池;其二,围绕一种领导方式--形成合作团队的
良好风气,欢迎新人进入、鼓励成员做出贡献,同时尽可能增加合格成员。
9、‘眼球足够多,缺陷无处躲’---李纳斯法则。
10、莲花公司于1988年发布了Agenda软件(列表管理软件)。它突破了计算机的严格逻辑与人类的语焉不详之间的阻隔,
开拓新天地。它的创建者们认定这样一些超乎常规的原则:用户不用关心软件的存储结构、添加新分类,且不会导致数据丢失;
用户应该能够用自己创建的新方式查看数据--也可以在自己创建的视图中操作和修改数据。
(二十年后的今天,只有少数能做到上述几点,这些目标是多么胆大妄为)
11、然而,万千宠爱集于一身的Agenda却没能达到“杀手级应用”的境界。
部分原因是已经成为巨兽级企业的莲花公司急于在商业市场大获全胜,不知道该怎么利用这个软件,
也有可能是作为创始人的卡普尔弃公司而去,让莲花公司无心销售Agenda软件。