2020 12 月读书笔记之三: 10x程序员工作法

      作者是Thourgh works 的首席咨询师,标题的意思不是说让你真的能写代码速度快10倍,而是让你最终的效果达到10倍。程序员内部有个说法,说好的程序员的产出是一般程序员的10倍甚至100倍。

      作者给出了4个原则去实现开发效率的提高:

1. 以终为始

        这个词太耳熟,第一次看到是在 "高效率人士的七个习惯",不错那是自我管理上对我影响最大的一本书。这个原则用到软件上来讲就是先想清楚用户如何使用我们的软件再进行开发,不要盲目,比如亚马逊的开发流程是1.写新闻稿,2写FAQ, 3 写用户文档,4再开始写代码。另外我们需要定义DOD,也就是我们要定义清楚什么是做完了让整个团队达成完成的共识。作为开发者拿到需求除了要通过用户故事去细化细节逻辑外,更重要的事情是理解用户故事的目标,如果提出了不合理的需求应该不做。还有包括用持续集成来快速反馈代码能否完成工作,用精益创业的方式避免一次做太多的功能,做事情前要先推演且要用数字说话。

2. 任务分解

        一个人做事的能力在于他分解任务的能力,只要能正确的分解任务,复杂的任务都能得到很好的执行,测试驱动开发TDD是一种很好的任务分解方法,可以把要实现的功能先写测试,Kent Beck 的做法清晰而有节奏,每个任务完成之后,代码都是可以提交的。 而大多数程序员之所以开发效率低,很多时候是没想清楚就动手了。我们要训练自己微操作的能力,任务足够小的情况下,你被打断重新回到工作的效率也更高。

3. 沟通反馈

       沟通的目的一般是达成一致或者是大家共创,要沟通有效我们最好使用可视化的沟通方式,比如图表,我比较推荐XMind, 我们也应该经常去看用户真实的反馈,让反馈的路径短,速度快。另外团队内部也应该经常反馈从而及时发现问题,解决问题。如果有问题尽早暴露问题。我们可以利用看板,持续集成,回顾会议,当遇到问题时候问5个为什么等来提高效率。

4. 自动化

     这个原则最能直接体现效率的提高,因为直接减少了人工参与,我们需要尽量的自动化,比如开发环境,项目初期搭建,可重用的组件等,当然还包括自动代码检查,自动验收测试,自动发布等。

    总结一下:  我们的目标不是写代码,大量的代码写出来都没多少人用,我们的目标是帮助产品经理去验证用户的需求,很多的需求都是我们对用户的想象,我们不一定要通过代码来验证需求,比如Dropbox是先发了个视频到油管,有人关注再进行开发。我们要做到高效,首先是要做正确的事情,即不去做我们不应该做的事情,然后再通过上面的原则去提高自己和团队的效率,从而达到10x程序员的水平。

推荐指数 4.5  颗星

你可能感兴趣的:(2020 12 月读书笔记之三: 10x程序员工作法)