你按照涂料桶上的说明做了吗?
我家最近在做一些粉刷工程。这意味着,我需要按照涂料桶上的说明去做。
如果我没有按照说明去做,后果会怎么样呢?这里列出了一些普遍的粉刷错误:
最最常见的错误是,没有读懂或者没有按照生产商的说明去使用工具和材料。至于粉刷,最常见的错误是:
·墙面不干净,没有用砂纸打磨过,没有涂底漆(如果需要的话);
·涂料调配不当;
·粉刷工具上沾了过多的涂料;
·使用了沾水的粉刷工具;
·没有处理好墙面或天花板的潮湿问题就直接粉刷;
·直接在光滑的瓷漆上粉刷。
让我觉得特别有趣的是,这些列出来的错误中没有一条与我的粉刷技术有关。对粉刷匠的技术熟练程度居然提都没提到!为了保证质量,你不需要花上几周时间去锻炼你的粉刷技术。你甚至不必是一个出色的粉刷匠。你要做的只是按照桶上的说明去做!
当然,这些似乎都是常识。但是,在你开车经过的街道两旁看看,不知何故,你总能发现有些房子的主人没按涂料桶上的说明去做。
在过去的很多年里,软件开发一直是这种被粉刷坏的房子的缩影。但是现如今,软件开发领域已经足够成熟了,我们已经有了好些个可供参考的“涂料桶”。大概在2000年的时候,JoelSpolsky在一篇题为“TheJoel Test: 12 Steps to Better Code”(12个步骤,写出更好的代码)的文章里给出了下面的这个清单:
1. 你使用源代码管理系统吗?
2. 你能一步之内完成软件的一次构建吗?
3. 你每天都出版本吗(dailybuild)?
4. 你有一个跟踪bug的数据库吗?
5. 在写新代码之前,你先解决bug吗?
6. 你有最新的开发计划表吗?
7. 你有产品规范文档吗?
8. 程序员有安静的工作环境吗?
9. 你在使用最好的商业工具吗?
10. 你有测试人员吗?
11. 在面试过程中,你让应聘者写代码吗?
12. 你做可用性测试吗?
当然,你可选择的涂料种类(以及你须遵循的相应说明)是有很强的争议性的,而且见仁见智。但最最起码的是,请你保证在软件开发项目中按照“涂料桶上的说明”去做。