我第一次看到《程序开发心理学》时,说实话对这本书的内容的实用性是有所怀疑:软件开发行业日新月异,新技术、新产品层出不穷的领域,40年前的书会不会过时,内容太陈旧了,对于现今的软件开发工作没有任何帮助。看过样章后不得不说这本书是一本神书,可以说是一个奇迹。为什么说是一个奇迹? 40年的时间,软件开发行业发生了翻天覆地的变化,但是本书对软件开发的思考的内容依然精彩,内容丝毫没有过时。
程序开发是人类行为
原因在于作者抓住了程序开发中普遍适用的规律性的东西,将程序开发作为一种人类行为来考察的观点。软件开发的主体是人,人是软件开发活动的参与者,程序开发是人艺术创造的过程,同写作、作画并没有质的差别。程序开发是在特定的环境下,特定的程序员在特定的心理状况下的艺术品,其中任何一个因素的变化都可能导致艺术品的结果不同。
程序开发团队
在本书试读样章中,我重点关注了“程序开发团队”这个章节,最近刚从公司离职,自己出来创业,也是第一次带团队。从0到1打造公司的团队,关于团队的结构我也考虑了很多,团队的人员结构需要从实际情况出发,考虑到薪资支出以及公司经费的现状。正如书中所说“遇到一名糟糕的主管要比找到一名出色的程序员容易得多”,因此要努力成为一名出色的管理人员,书中很多例子给了我方向。
程序员工作满意的关键
书中阐述的集体中程序员对工作满意的关键,划分为4个方面:
1. 物质的奖励与机会。
2. 工作本身所具有的挑战性及趣味性。
3. 其所隶属的更大单位的总体条件,比如雇员的福利、工作条件,以及该单位在同类单位中的相对低位。
4. 主管与领导的能力。
我的感受
在创业之前我一直在大公司供职,非常赞同作者总结的四个方面。头三条可以通过规章得到满足,公司福利明码实价写在合同中。因此决定程序员对工作的满意程度方面,主管与领导者会在很大程度上导致其对工作不满意,从而导致工作效率的降低。在书中提到希特勒式的独裁领导,不适合程序开发工作的管理的。还有一种就是管理模式死板,思维僵化的领导,正如书中的两个例子中的领导,一个强制上下班打卡计时,一个领导严重控制办公用品的消耗,都是没有从根本上解决问题,反而使问题恶化,程序员消极怠工。
现今IT互联网公司的主力是80后和90后,这两代人的思维活跃、创新能力强、喜欢自由、渴望被认可。如果按照固定的的管理模式,根本不能激发80后/90后这代人的创造力和对公司的认同感。书中提出了一个民主化的集体,能适应环境的改变,但是现实中很难实现。
领导者需要明白的事
领导者除了管理团队外,还需要和管理层沟通,将管理层的信息带给团队。领导者如何处理与管理层之间的关系非常重要。领导者需要明白:
1.无论主管们怎样地强调诺言,他们真正关心的只是结果。
2.如果希望得到的结果与在整个团队的参与下所确定的目标工作一致,那么这一目标就会非常轻易地实现。
分享到:
相关推荐
实训期间,学员们通过编写小程序,尤其是GUI界面设计和事件处理,感受到了Java的实用性,尤其是对于游戏和应用程序的开发。 实训过程中,学员们体会到学习编程需要具备的素质,如冷静思考、专注细致以及良好的心理...
专业的指导和建议来源于这些文献,它们可能包括了有关教育学、心理学、计算机科学等领域的经典著作和最新的研究成果。 最后,文章还可能强调了教材选择的重要性。一本好的教材对于教学的成功至关重要。在选择教材时...
- **知识点解读**:小学教育心理学关注的是小学教育中教师与学生互动的心理活动规律。 - **选项解析**:正确。 ### 27. 推动教育学发展的内在动力 - **知识点解读**:教育问题的发展是推动教育学前进的主要动力。 ...
5. **编程思维**:在解决复杂问题时,冷静思考和专注是编程人员必备的心理素质。实习有助于培养这种思维方式,使实习生能更好地应对未来的挑战。 6. **自我提升**:Java语言的强大在于其灵活性和实用性。实习生通过...
成为一个优秀的内部讲师,不仅需要深厚的领域知识,还需要掌握一系列的教学技巧和心理学原理。以下是根据提供的训练讲义整理的一些关键知识点。 **课程规则与环境** 创建一个安全的学习环境是首要任务,这意味着...
【描述】:“同辈压力”是一个社会心理学概念,通常指的是个体在群体中感受到的一种压力,使他们倾向于遵循群体的行为或观点,以获得接纳或避免批评。在JavaScript开发环境中,这可能表现为开发者为了保持与同行的...
它强调了理解人类行为心理学的重要性,并提供了实用的方法来创建既富有吸引力又实用的用户体验。无论您是初学者还是经验丰富的设计师,这本书都能为您提供有价值的见解和灵感。通过学习本书中的理念和技术,您可以...
这些内容可能包括数据结构设计、用户界面实现、结果解析和报告生成等方面,展示了如何将心理学理论与编程实践相结合。通过深入学习和理解这个项目,开发者不仅可以提升编程技能,还可以了解到如何利用MBTI提升个人和...
首先,社团应设定明确的学习目标,如掌握特定的编程语言、设计网页或开发应用程序等。其次,活动内容应与时俱进,紧跟信息技术的最新发展,如人工智能、大数据、云计算等领域。此外,活动形式应多样化,包括讲座、...
7. **社会工程学与心理学**:在IT领域中,尤其是在安全领域,社会工程学被广泛应用。文章中的家庭成员通过对话和非言语交流方式达到各自目的的过程,反映了社会工程学原理中利用人的心理和行为模式达成目的的思想。 ...