首页 > 代码库 > 《梦断代码》摘录及感悟

《梦断代码》摘录及感悟

1 摘录


1.1 软件开发艰巨


"好的软件开发工作始于打造开发者本人。"只要是做某种取悦自己活满足自己的东西,程序员就会动力十足,努力做到最好。

侯世达定律:做事所花费的时间总是比你预期的要长,即使你的预期中考虑了侯世达定律。特别是在进行有关提高效率的讨论时(如《人月神话》和极限编程)。其自指的特征反映了即便意识到任务的复杂性,预计花费的时间仍是困难的。

一切倒塌又得以重建,再造它们的人满心欢喜——William Butler Yeats 《天青石雕》(Lapic Lazuli)

软件相对于现代技术的区别是,软件是唯一不考虑质量(测试之前)的领域

我在尽力保持耐心、不做蠢事,即使接受有东西没做完的事实。也需要了解做了什么,否则等于引火自焚。<注:可见,当时主人公有多么的无奈>

现在我们身处地狱般的境地,有那么多的好主意要拿来毙掉

用贴纸、每块只表示大致同等的工作量

产品经理与开发经理之间的拔河赛

低估了实现项目远大抱负所需的代价,组建一个工程团队要比想象中更难

个人自以为懂得很多

时间——特性——金钱:这一黄金三角之中往往只能选二,而不得不抛弃第三个

别做大项目 (linus)

<现在的软件开发并不会比之前的好过多少,基本上也是按照数据、设计模型、讨论、测试、集成这样的流程进行。做项目时的喜悦,项目发布时的痛苦,代码检查等>


1.2 软件不断创新


一次又一次,那些大度在技术工业的太阳底下不再有新鲜失误的人输个精光。

具备延迟绑定动态为例精髓的语言:20世纪50年代的 lisp,20世纪70年代的 SmallTalk

GMail 消除了浏览器在用户每次操作时与服务器进行信息交换的需要

Mozilla 奇客精英,黑洞达数年之久,失去关键程序员的支持,但最终诞生了 Firefox

为之奋斗的未来惊鸿一瞥——而那未来仍是如此令人痛苦地遥远

当萨奇回答说开发时间只有两个小时时,相片blog,基于chandler,基于现有熟悉的项目开发能加快项目的进度?


1.3 怀有改变世界之心的大神


卡普尔:很多的名誉,充足的资金,想要更多的荣誉:如果你做了另一件了不起的事情,就让世界看到你的实力。

20世纪80年代,瓦茨·汉弗里从 IBM 退休,之前在 IBM 成功执行强制进度计划后,发个宏愿:离开 IBM 后,我要改变世界的软件开发方式。因为安坐在沙滩上,实在太无聊!

程序员:获得杰出源代码,杰出软件架构,软件设计师,生命历程,获取诗歌艺术硕士学位。

软件开发者,为制作一部电影而临时组合,然后解散,再重新为拍下一部电影重新组合

1.4 推荐的资料


《计算机编程艺术》(书)

《哥德尔,埃舍尔,巴赫:集异璧之大成》(书)

《土拨鼠日》(电影)

2 总结


好早就看完这本书了,这真是一本超级好的书。看完之后也是感触良多,一个满是荣誉、财富的人,带着一群世界顶尖程序员花费好几年开发软件,最终失败不重要,因为一路鼓舞了很多人,甚至机缘巧合地拯救了firefox,改变了世界。
一直想写读后感,好处多多。可这读后感啊,一直拖、一直拖了将近一个多月了,到现在还没有写。为了一个月发表四篇博客,就写成这种形式了。
写文章正如写代码一样,不能一开始考虑太多,不然永远开始不了。

最后,写文章时,发现有同行已写了读后感,大家可以参考:
[http://www.cnblogs.com/banana-totolv/archive/2011/06/08/2074765.html]

《梦断代码》摘录及感悟