Почему статистика коммитов разработчиков вредна?

10

Я давно верил (и слышал от других), что отслеживание статистики коммитов, например, сколько коммитов делает каждый разработчик в день, вредно для процесса разработки. Причина кажется очевидной - разработчики будут фиксировать с меньшими приращениями, максимизируя количество коммитов в день, но усложняя деление пополам (возможно, все их промежуточные патчи не оставят хорошо сформированный репо) и сложнее работать с историей коммитов (изменение внезапно произойдет за несколько коммитов, а не за один, отменить патч сложнее и т. д.).

Существуют ли какие-либо исследования, которые показывают, что статистика коммитов вредна? Любая элегантная и аргументированная статья на эту тему? В равной степени применимо что-либо о том, почему измерение неправильной вещи приводит к тому, что люди оптимизируют неправильную вещь, для которой эта проблема является лишь частным случаем.

Нил Митчелл
источник
8
"Любая изящная и аргументированная статья" ?? Ваш вопрос элегантен и аргументирован. Что тебе еще надо? Вы предоставили достаточно доказательств того, что числа тривиальны и поэтому бесполезны. Что еще вы хотите, чем ваш элегантный и аргументированный вопрос?
С.Лотт
Разработчики должны старались работать с поиском и исправлением ошибок в большой фиксации и сценарии стрелкового коммитов , чтобы увидеть differenc.e
Я не думаю, что сбор статистики вреден сам по себе, но использовать ее для оценки программистов было бы. Наша VCS собирает эту информацию, а также множество других статистических данных, и она доступна для всей команды, но мы вряд ли когда-либо на нее посмотрим. Так что нет, сбор статистики не вреден.
MarkJ
Я здесь не спорю о больших и малых коммитах (я лично тип парней с небольшими коммитами), просто о внешнем давлении, чтобы изменить размер коммита, чтобы подделать статистику (что никогда не может быть хорошим). В идеале я ищу место, на которое я могу указать другим, поэтому мне не нужно самому приводить аргументы :)
Нил Митчелл
2
Я полагаю, что этот комикс Дилберта делает случай так же как все, что я когда-либо видел.
ebneter

Ответы:

8

http://www.mit.edu/~hauser/Papers/Hauser-Katz%20Measure%2004-98.pdf

Это то, что вы ищете? В Google найдены тысячи статей "вы получаете только то, что измеряете".

С. Лотт
источник
1
Обычно я не одобряю в основном ответ «только ссылка + отсутствие отрывка», но в этом конкретном случае я нахожу это нормально, так как «ответ» в любом случае будет просто вопросом.
о0 '.
6

Это забавная статистика, которую можно измерить, но не более полезная, чем запись количества часов, отработанных разработчиком в течение недели.

С одной стороны, это не учитывает качество кода. Один разработчик может постоянно вносить изменения, поскольку он продолжает исправлять ошибки в своем коде. Это показало бы большое количество коммитов по сравнению с разработчиком, который фиксирует один кусок готового, отшлифованного кода. Вы не думаете, что парень с большим количеством коммитов был лучшим разработчиком.

Точно так же, тот, кто весь день занимается серфингом и занимается серфингом только для того, чтобы фиксировать один раз в день, будет иметь такое же количество коммитов, как и выделенный разработчик, который весь день программировал только для окончательного принятия в конце дня, чтобы сохранить свой код в безопасности.

Если у вас есть система, в которой подсчитываются строки подтвержденного кода, тот, кто проходит через рефакторинг исходных файлов каждую фигурную скобку в своем предпочтительном стиле, будет иметь огромное значение. Парень, который исправил ошибку в одну строку, едва появится.

Таким образом, он не дает никакой значимой статистики, даже если разработчики не разыгрывают систему. Он должен предоставить вам ничего, кроме симпатичного графика. Однако всем нравятся статистические данные, поэтому я бы сказал, что храните их, но не используйте их ни для чего, кроме развлечения.

gbjbaanb
источник
В то время как ваше мнение интересно, реальный вопрос, кажется, "есть ли исследования ...?" к которому ваш ответ не относится.
Брайан Оукли
«количество строк». Это может занять несколько дней, чтобы исследовать проблему, которая в итоге приведет к появлению патча в одну строку.
5
просто сказка , но классическая.
Wrikken
Это «несколько дней» (или, по крайней мере, несколько часов) исследований, которые привели к очень важному, но единственному исправлению, случается довольно часто в моем опыте.
Йохан