有一些编程问题与信仰有关, 当管理者试图要求统一时可能会激怒程序员, 这些问题包括:
- 编程语言;
- 缩进风格;
- 大括号的摆放位置;
- 所用的集成开发环境;
- 注释风格;
- 效率与可读性的取舍;
- 对方法的选择(如 Scrum, 极限编程, 渐进交付);
- 编程工具;
- 命名习惯;
- 对 goto 的使用;
- 对全局变量的使用;
- 量度(特别是有关生产力的量度, 如每天编写的代码行数).
--<<代码大全>>
有一些编程问题与信仰有关, 当管理者试图要求统一时可能会激怒程序员, 这些问题包括:
--<<代码大全>>
心理取向(Psychological Set)是这样一种现象: 人们看到的是他们所希望看到的东西.
比如下图里, "春天里的巴黎":
你看到几个 "the" 了? 这种取向常常导致调试时的盲目.
--<<代码大全>>
交流路径的数量与项目成员数量的平方大致成正比.
当有 10 名程序员时, 相互间的交流路径就有 45 条.
当程序员的数目到达 50 时, 其潜在的交流路径将超过 1200 条.
对于一个大的项目, 改善交流效率的常用方法是采用正式的文档.
--<<代码大全>>
有关程序员编程生产力的个体差异的一份研究发现:
最好和最差的程序员的初始编码用时比例为 20:1, 调试用时比例为 25:1, 程序规模比例为 5:1, 程序执行速度比例为 10:1;
一句话总结: 程序员之间有着数量级的差异(不过薪水的差异却不会如此~~)
--<<代码大全>>
Bell 实验室曾经做过一份程序员怎样花时间的调查, 发现一个程序员大约有 30% 的时间花费在"对项目没有直接好处"的非技术性活动之上: 步行, 个人事务等等.
其中, 有 6% 的时间花费在走路上, 一个星期大概是 2.5 小时.
--<<代码大全>>