做技术的就不用关心计划吗?
很多程序员对计划有误解,也不愿意做计划,他们通常都会用一些原因来说做计划是没必要的。
一种典型观点是:“既然计划总是在变,干嘛还要做计划?还不如上手就是干来的爽快!”
这就好比我看过的一个段子:“既然飞机老是晚点,还要时间表干吗?”“没有时间表,你怎么知道飞机晚点了呢?” 计划也是这样,给你提供一个基准线,让你知道后面在执行的时候,是不是出现了偏差,可以根据计划不断地修正。
还有的人说,做计划那是项目经理的事,我是程序员,项目计划与我无关。
我在专栏中常说你要有大局观,不要将自己局限在程序员的身份中。试着做计划就是一个非常好的培养大局观的方式。比如说,你在制定计划的过程中,需要去综合考虑各种因素:有哪些任务要做,可能存在什么风险,任务之间的依赖关系是什么,等等。
参与做计划的过程,可以让你对项目的各种事情了然于胸,这就相当于扩大了你的上下文,让你有更高的视角看待当前工作遇到的问题。
另外,我还见过很多人抱怨项目经理制定的项目计划有问题,却很少看到会有人愿意主动参与制定项目计划。如果你不主动参与计划的制定,最终就只能按照项目经理制定的计划执行了。出现计划不合理的地方,你也只能接受,工作就会一直很被动。
当然,有时候你可能确实是没机会参与到当前的项目计划中。不过,万事皆项目,你一样要学会做计划,因为学会做计划,会对你工作生活的方方面面起到积极的作用。
比如很多人都有一些目标:要转型做管理、要移民、要写一个业余项目,然而很多目标都无疾而终了。这是因为光有目标还不够的,必须得要付诸行动。而要行动,就需要对目标进行分解,进而变成可以执行的计划。
如何制定计划?
如果有一天,你接手了一个项目,通常第一件事就是得去制定一个项目计划。那么怎么制定计划呢?
制定项目计划,通常有三个基本步骤:
- 第一步:任务分解;
- 第二步:估算时间;
- 第三步:排任务路径。
以前我在飞信时,有一个项目叫“留言飞语”,就是飞信用户可以在网站或者 PC 客户端,互相留言,当时我负责这个项目的服务端,正好我还留着当年制定的计划,