在本章中,能够看出身份不一样、位置不一样的程序员得到的编码体验是有天壤之别的。以少年游戏玩家的身份在编码实践中体会到的更可能是编写代码改变世界的巨大快乐,做为产品的经理人,则是以“对付”的姿态面对本身的产品,而在这成长期间也会见证软件世界中的各式悲剧。程序员
从本书做者四十岁时遇到的最严重的更新问题来看,当公司计划升级其软件平台或者从新搭建一套大型系统时,首先要避免遇到CMM成熟度等级中的“初始级”状况:“过程通常是专门化的和无序的。在这类组织中,项目的成功每每取决于我的的能力和拼搏精神,离开了具有一样能力和经验的人,就没法在下一个项目中得到一样的成功。”在该次事件中,主力程序员离开后剩余高层难于应对遗留下的问题。其次,企业要发张必需要有完善的软件工程思想,此次问题中体现出该公司全面测试不充分以及以前工做总结不够完善等问题。网络
进一步思考,在软件开发过程当中遇到软件缺陷、延误和不按设计思路运行等问题的缘由在于虽然人类与计算机经过各式语言(如C、C++、Java等)进行联系,可是机器计数与思考的方式仍会与人类存在不一样。测试
不一样于永久性建筑的建造,软件虽然也在构建这个世界而且已经深刻渗透到这个世界可是却不可见又脆弱,人类这种对脆弱代码的强烈依赖形成了巨额的经济损失。与此同时,程序员也陷入调试除错的苦境,他们的做品永远未臻至善。编码
对此困境,咱们只能期待渐次前行,直接幻想毁掉目前软件大厦或者寄但愿于优秀的程序员只是软件发展的动力,没法一蹴而就。设计
如今程序员在开发软件之时最多见的矛盾就是时间与任务的冲突,这个矛盾咱们多多少少都遇到过,该矛盾的缘由在于需求不明确、完成任务预估时间与实际须要时间不符、计划不完善、复杂软件各模块关系混乱问题解决受制于人、各任务优先级不明确、开发使用的基础软件有问题。调试
团队扩增引起开发进度延迟,对此能够低成本、普遍地接入像互联网那样的网络,让开发者之间能创建迅速、可信的沟通渠道,存储可被开放访问的共享知识和代码池;或者围绕一种领导方式造成合做团队的良好风气,欢迎新人进入 、鼓励成员作出贡献,同时尽量增长合格成员。游戏
团队问题解决后就要处理实现的问题了,进取精神、速度、努力对于造成伟大团队都没必要不可少的,其中最重要的就是实际行动了。事件