我们的几位主要开发人员已经说服管理层指派一名初级开发人员为他们记录他们的代码。
他们的论点是:
- 您将有两个熟悉一切的程序员。
- 这是结对编程,有点。
- 它更具成本效益=他们会做得更多。
- 它证明了他们的代码是可读和可维护的。
- 他们很乐意回答任何问题;所以这是一种指导形式。
然而,他们保持忙碌以保持最新状态的程序员数量似乎随着时间的推移而增加。
这是一个好主意吗?
哇!这不是我们的经验!
以下是一些被证明很重要的说明。
高级开发人员是反身的自我记录者。这是一个核心的招聘问题。有时需要告诉他们“把这个留给小伙子”。
这被视为高级人员的验证工具(我认为我们的初级人员被聘用的门槛很高)。
是的,代码应该是单一用途和自我记录的。如果后辈不能轻易评论,那是前辈认真对待的反馈。
小辈们应该把它当作一个重构练习,它的工作方式比你想象的更频繁。尤其是捕捉 YAGNI 问题、范围过大等问题。他们可以让他们的前辈成为目标。事实上,他们发起了这种变化。(如果他们真的开始反对,我们会支持它。老年人非常愿意调整 - 他们明白,他们比任何人都更需要为后辈的成功负责。)
您的高级人员不想解释他们的代码吗?
我们对“每个人都拥有代码”的敏捷原则有着坚定的承诺。我们认为这会加速这一进程。
最后,个人笔记 - 当我试图理解别人的代码时,我想做的第一件事就是在我试图理解它时重新评论它。为什么评论被视为如此繁重?
也许我们会过滤掉一些初级申请人,因为我们明确表示这就是我们的工作方式。但这不是营业额问题。(但只有 3 个月。)