本书的第一个大部分讲焦油坑,何为焦油坑,作者,以焦油坑来形容大型系统开发,任何动物,碰到焦油坑都难以逃脱,猛犸象,恐龙这种大型食肉动物也是无法逃脱,挣扎,只会使他们越陷越深,就如同我们的系统开发工作,一个小问题看似好解决,但是当各个小问题聚集到一块,就是一个难以解决的大问题,而编程系统产品是由很多编程程序以及系统组合而成的可交互、协作的程序集合。编程系统产品与简单程序并不是一种线性关系,真正的大型编程系统产品也不是简单程序的简单堆叠。这也就是所谓的“焦油坑”。
每个软件人都知道这是焦油坑,但却有无数人会争先恐后的跳进去,这就是软工人的追求,不断学习,不断突破,开发一个东西,能为人类带来便利,就是他们最大的快乐。
本书的第二个标题就是人月神话。每个软工人都是乐观主义者,他们总觉得软件开发一定会随着他们所想的那样发展:一切都将运作良好,每一项任务仅花费它所“应该”花费的时间。然而对于大型软件来说,这一切都只是幻想,因为“一切都将运作良好”就是一件概率非常小的事情。人月,是软件项目中一个人一个月的工作量。在实际软件项目中,将项目的设计、开发、测试、部署各个阶段分工给不同的人,这无疑是对项目的一个分解,而在不同的人之间分解项目,无疑会带来额外的成本,沟通与交流,从而消耗掉任务分解所节省下来的时间,所以简单来讲就是3个人要干3个月的事情不是说安排9个人就能1个月干完了。同时在项目开发遇到障碍时,更多的支援,只会导致项目更加缓慢。
个人感受:
初读这本在软件工程管理领域畅销40年的巨著,感受颇深,其中,人月神话所提出的问题,在上一本书《梦断代码》中也同样体现,编程是一个焦油坑,但我们却愿意跳进去,在过去的学习生活中,我对于学习编程并不够积极,对于比较困难的问题,喜欢打退堂鼓,而软件工程就是一个不断突破,不断创新的学科,只有不怕麻烦,不怕困难,才能真正的进入这个领域。
打退堂鼓的做法,只会让自己离这个行业越来越远,而且永远无法感受到这个行业真正的快乐
在今后的学习生活中,要习惯跳进焦油坑,敢于挑战难题,不断学习,不断突破,才能真正成长成一名合格的软工人。