《程序开发心理学》摘抄
1、重构无私的程序开发的社会环境。虽然程序的整体效率通常主要取决于最初所选择的结构,但是通过让第二个人来查看程序,我们至少增加了消除那些明显低效部分的可能性。这种方法的最后一个好处在于,它对于阅读其他人程序的程序员也有积极的影响.这样的程序开发组的整体竞争力将得到提升。2、只有准备好辞职的领导,才能获得真正的成功机会。3、个人技能也许很难取得,但是和与他人很好相处的能力相比,技能还是相对更容易通过聘请或培训获得的。4、如果主管希望项目能够稳定地进行,就必须遵循这样一条简单的格言:如果有哪位程序员是不可或缺的,那还是尽快让他走人为好。5、我相信与智力因素相比,个性、工作习惯和培训等方面的因素更为重要。优秀的程序员是培养出来的,而不是天生的。6、文档生成技术可以从代码本身直接生成流程图,使得维护文档的工作与维护代码的工作之间没有什么不同,所以就不会出现所有文档系统都存在的致命问题——时间滞后。其他人在这种流程图的帮助下阅读原始代码,比直接阅读原始代码更容易理解。7、系统是复杂的。一个计算机系统不只是包括硬件,也不只是包括软件,甚至不只是由人再加上硬件和软件组成。系统所涉及的任何过程,不论是正式的还是非正式的,都是系统的一部分;不仅各个部分当前的负载是如此,而且用户的态度和经验也是如此。即使是在被普遍接受的系统各"部分"之间,也没有明确的分界线:硬件与操作系统互相融合,操作系统与程序开发语言互相融合,程序开发语言与调试工具互相融合,调试工具与文档制作互相融合,文档制作又与培训互相融合,而所有这些都会融合到使用该系统的社会风尚中。这种复杂性意味着,一方面试验结果有着双倍的重要性,但另一方面为了获得和解释试验结果,也会遇到双倍的困难。
有关键情节透露