《程序员思维修炼》读书笔记

来源:互联网 发布:ubuntu取消挂载命令 编辑:程序博客网 时间:2024/04/29 11:30

新手:  新手非常在乎他们能否成功。没有太多经验指导他们,他们不知道自己的行为是对是错。新手不是特别想要学习,他们只是想实现一个立竿见影的目标。他们不知道如何应付错误,所以出错的时候,他们非常容易慌乱。  但是,如果给新手提供与情境无关的规则去参照,他们就会变得能干起来。也就是说,需要这种形式的规则:“当X发生时,执行Y。”换言之,需要一份指令清单。------------新手需要指令清单Novices need recipes------------- 高级新手  高级新手能够根据过去的经验,逐步在正确的情境中采纳建议,但比较吃力。同时,他们能够开始形成一些总体原则,但不是“全貌”。他们没有全面的理解,而且的确不想有。如果你试图把一个更大的情境强加给高级新手,他们可能会认为该情境与那些原则不相关而忽略掉。--------------------------高级新手不想要全局思维Advanced beginners don’t want the big picture--------------------------- 胜任者  与更高水平者追随下意识反应不同,胜任者会探寻和解决问题,他们的工作更多是基于谨慎的计划和过去的经验。  处于这一水平的人通常被认为“有主动性”和“足智多谋”。他们往往在团队中发挥领导作用(无论是否有正式的头衔) 。他们是团队里的好人,既可以指导新手,也不会经常骚扰专家。  在软件开发领域,我们达到了这个水平,但是即使在这一水平,人们仍然无法按照我们希望的方式来应用敏捷方法——大家还没有足够的能力反思和自我纠正。为此,我们需要取得突破,达到一个新的水平:精通。----------------胜任者能够解决问题Competents can troubleshoot----------------- 精通者  精通水平的从业者需要全局思维。他们将围绕这个技术,寻找并想了解更大的概念框架。对于过于简单化的信息,他们会非常沮丧。---------------------精通者能够应用准确应用通用规则Proficient practitioners can apply maxims---------------------- 专家  专家是各个领域知识和信息的主要来源。他们总是不断地寻找更好的方法和方式去做事。他们有丰富的经验,可以在恰当的情境中选取和应用这些经验。他们著书、写文章、做巡回演讲。他们是当代的巫师。  根据统计,专家的数量很少,大概占总人数的1%~5%。 ------------专家凭直觉工作Experts work from intuition------------