读书笔记第三周:人月神话   这本书主要讲述了如何管理一个软件开发团队的问题,其中如何提高团队的效率可以说是本书的重点之一了.感觉这本书地中文版翻译得比较晦涩,很多表达比较模糊,看起来有些吃力,因此下周我可能会考虑借一下英文原版来看.本周的话我看了前两章,我觉得重要的收获有四点   第一,作者与我们交流了一名码农的职业的乐趣,编程是可以创建事物的,而这有着纯粹的快乐,如同小孩子玩泥巴一样.其次,编程可以造出对他人有用的东西,这也是人的一种自我实现,实现自我的社会价值.同时,编程的精妙,将各种复杂…
内核调试的难点在于它不能像用户态程序调试那样打断点,随时暂停查看各个变量的状态. 也不能像用户态程序那样崩溃后迅速的重启,恢复初始状态. 用户态程序和内核交互,用户态程序的各种状态,错误等可以由内核来捕获并显示. 而内核是直接和硬件交互的,内核出错之后整个系统就无法正常运行了,所以要想熟练的进行内核调试, 首先要熟悉内核已经给我们提供的工具,然后实实在在的去做一些内核功能的开发,在开发的过程中不断熟悉内核代码,增加内核调试的经验. 主要内容: 内核调试的难点 内核调试的工具和方法 总结 内核调试…
写了这么久的读书笔记,涉及到问题大多是一些如何把软件工程做好,如何把自己的职业生涯做好.但总感觉逻辑链上缺了一环,亦即:我们为什么要把软件工程做好,我们成为一名优秀的职业生涯的意义到底在于什么?我觉得如果这个问题不去想,那么这段三段论便不是完整的,不知道为什么要做的事情而去做,未免太浑浑噩噩了,说实话,就有点行尸走肉的感觉. 本来以为程序员的自我修养这本书能够解答我心中的疑惑,然而翻开这本书,却是一些列关于系统软件如何运行和装载的问题.窃以为,如果是关于这种如何提高自身技能的书,不应该用<程序员…
每逢读书笔记上交作业时刻,班级blog页面上总能看到<人月神话>相关的读书笔记,本次软工课邓老师推荐的第一篇读书笔记也是写的<人月神话>,算是对它“耳濡目染”了.本周,我终于抽空读了这本书,感觉确实名不虚传.以下,我将从几方面谈谈我的感想. 一.焦油坑与银弹 书中将大型项目形象地比作焦油坑,开发者往往在巨大的项目里遇到纷繁复杂的问题,并在其中越陷越深,难以掌握全貌和本质.在我看来,软件的开发确实存在其固有问题,在一个开发团队开始挖坑时,由于思路的些许偏差.交流和认知水平的些许欠缺或…
<Linux内核设计与实现>第六周读书笔记——第三章 20135301张忻估算学习时间:共2.5小时读书:2.0代码:0作业:0博客:0.5实际学习时间:共3.0小时读书:2.0代码:0作业:0博客:1.0耗时估计的公式:Y=X+X/N ,Y=X-X/N 第3章 进程管理20 3.1 进程20 进程就是处于执行期的程序(目标码存放在某种存储介质上),但进程并不仅仅局限于一段可执行程序代码.通常进程还要包含其他资源,像打开的文件,挂起的信号,内核内部数据,处理器状态,一个或多个具有内存映射的内存…
这也许是和候红老师的最后的几节课了吧,侯老师是一个很有思想深度,很关心同学的好老师. 一开学就布置了阅读<人月神话>的作业,说实话,我没有看,以我的速度可能2.3个小时就看完了,但是我觉得没有什么意义,在网上找了一个洗的很好的总结,大概看了看,并加入了一些自己的看法,因为目前才大三,没有什么项目开发经验,所以只能从平时的编程中遇到的问题来看待<人与神话>这本书. 参考: <人月神话>读书笔记——陈浩要安静(http://www.jianshu.com/p/da8a683…
第10章 未雨绸缪 在化学领域中,在实验室可以进行的反应过程,并不能在工厂中一步实现.一个被称为“ 实验性工厂(pilot planet)”的中间步骤是非常必要的,它会为提高产量和在缺乏保护的环境下运作提供宝贵经验.软件系统设计中也同样有这方面的问题,若把设计的算法应用到待发布的软件中,根据时间进度把第一次开发的产品发布给客户,显然这是非常糟糕的事情. 因此,管理上的问题变成了“是否预先计划抛弃原型的开发,或者是否将该原型发布给用户?”,将原型发布给用户,可以获得时间,但是它的代价高昂——对于用…
临近考试周,这里我通过平时阅读的<人月神话>十九个章节和知乎.简书等网页中网友们对<人月神话>的读后感,对书中各个章节进行简单的总结,以下均为个人手打观点的思考与整合,仅供大家参考. 乍一看书名,人月?什么是人月?并非我第一下所想到的超级赛亚人看到月亮时的情景.人月是在估计和进度安排中使用的工作量单位.每个每月的工作量,这和我在公司实习中在系统中统计外包人员UT数量的性质相同. 书中作者的观点是,用人月来衡量一项工作的规模是一个危险和带有欺骗性的神话.它暗示着人员数量和时间是可以相…
第一次听说人月神话还是在大一上学期的导论课那会儿,那会儿好像就已经确定了自己要学软件,于是就去问王建民老师能不能给我推荐几本软件工程方面的书,我想要提前自己学学,以为老师会给我推荐一些某种语言类的学习书,但是貌似不是,他推荐的一堆书里面其中就有这本<人月神话>,当时的我真的不理解,别的书还好,像是梦断代码,好歹里面有个代码俩字儿,但这个……那个人月是啥意思,人和月亮的神话故事??可是这和软件工程又有什么关系呢?也许是单纯因为好奇心吧,趁着双十一我就买了一本,但是好奇心来得快去的也快,书到手以后…
几乎是计算机软件开发的发展历史     人月神话,增加人手并不一定能提高开发速度. 原因在于,有些任务是无法分解的,存在先后顺序.无法同步进行. 增加人手,增加的是沟通成本,相互牵制.可以分解的任务就可以通过增加人手来加快速度.但是不能分解的任务,增加人手只会增加开发时长.打个通俗比方,怀孕需要12个月,增加人手,也不能加快时间. 作者赞赏的是,小型精干的技术团队是最好的.沟通成本低,开发效率高. 厨师煎一个蛋,需要5分钟,而顾客期望2分钟.怎么都达不到,2分钟的办法是,把火开大可以快速点(类似…