优秀程序员的开发效率是普通程序员的 10 倍

一个思考框架

畅想未来:

  • 我现在是个什么水平?
  • 我想达到一个什么水平?
  • 我将怎样到达那个目标?

这三个问题实际上是帮我们确定:

  • 现状;
  • 目标;
  • 实现路径。

当一个产品经理给我交代一个要开发的功能特性时,我通常会问他这样一些问题:

  • 为什么要做这个特性,它会给用户带来怎样的价值?
  • 什么样的用户会用到这个特性,他们在什么场景下使用,他们又会怎样使用它?
  • 达成这个目的是否有其它手段?是不是一定要开发一个系统?
  • 这个特性上线之后,怎么衡量它的有效性?

image.png
我们不是一个人孤独地在工作,而是与其他人在协作,想要做到高效工作,我们就要“抬起头”来,跳出写代码这件事本身。所以,我在开篇词里说,程序员解决的问题,大多不是程序问题。

总结时刻

大多数人工作低效是由于工作中偶然复杂度太多造成的,只要能够更多地将注意力放到本质复杂度上,减少偶然复杂度造成的消耗,我们“真实”的工作效率自然会得到大幅度提升。
而想要减少偶然复杂度的消耗,就要了解一些高效的工作方式和行业的最佳实践,而这一切是可以用统一的框架进行思考的。

运用这个思考框架,我们需要问自己一些问题:

  • Where are we?(我们现在在哪?)
  • Where are we going?(我们要到哪儿去?)
  • How can we get there?(我们如何到达那里?)

为了把这个框架应用在我们程序员的工作中,我给了你四个思考原则:

  • 以终为始,确定好真实目标;
  • 任务分解,找到实施路径;
  • 沟通反馈,解决与人打交道出现的问题;
  • 自动化,解决与机器打交道出现的问题。

如果今天的内容你只能记住一件事,那请记住:面对问题时,用思考框架问问自己,现状、目标和路径。

最后,我想请你思考一下,如果把这个思考框架运用在你的职业发展规划上,你会如何回答这三个问题呢?