这是一本20年前的关于IT研发博客集,但令人感觉惊喜的是,20年后的2020年,这本书里大部分的理念,还依然适用,大概这就是可迁移能力的体现。
对现阶段的我来说,其中有几点对我来说(甚至我觉得是很多人都需要学习和所欠缺的)受益匪浅的理念。
1、如何预估开发时间
在“把计划做准确”的章节中,作者提炼出了对开发任务做出更准备的办法,一般情况下,大部分预估时间,只把开发时间放了进去,然后再凭感觉加一点buffer。而乔尔提出,要把预估时间评估的更准确,还应该把休假、调试、集成、缓冲的时间计算进去。我总结了一下,评估开发时间可以使用这样一个公式:预估任务时间 = 纯粹开发的时间 + 调试时间(开发时间1或者2)+ 集成时间(开发时间1或者2)= 开发时间* 3 至 开发时间 * 5 。
另外,越是庞大的任务,就会导致评估的时间更加不准确,所以应该拆分大任务为小人物,确保任务的时间在2-16小时之内。
评估时间,也只能是任务开发者本人进行评估,而不应该由其他人代评估。
另外,以上只是针对独个任务的时间评估,当需要评估一个任务群的完成截止时间时,还应该加入节假日、缓冲时间,否则后果自负。
当交付时间确定,但评估时间大于实际时间时,有两种做法:
(1)推迟交付时间;
(2)砍掉不必要的功能;
推荐第二种,因为通过这种方式,可以精简应用,并找到真正重要的功能以及不重要的功能。而被剪去的功能,往往在后续的版本中,也不一定会排上日期,因为那些可能都是多余的功能。
2、开源软件经济学
这是一个我之前没有仔细思考过的方面,到底免费或者开源,它们的盈利点在什么地方呢?这本书用了一节的内容来阐述了开源软件所带来的经济效应,看完了之后我还是不太明白。但是却为我打开了一扇新的大门,准备好好学习一下《经济学原理》和《微观经济学》。或许等我对这部分的经济学有了一定的理解之后,能够对开源软件的经济效应有更深的理解吧,也能揭开这背后的神秘面纱。
看完书后,感觉受益匪浅,对自己日常工作提供了一定的方法支持,对平时工作中遇到的问题,有了一些解答。
学习,总是不会让人失望的!
网友评论