Ошибка №8. Неправильное использование метрик. Люди творческие, к
которым программисты относятся, вне всякого сомнения, очень не любят,
когда их измеряют. Потому что считают, что их творчество и полет мысли
нельзя измерить.
Однако, многие менеджеры все равно пытаются людей сравнивать. По
количеству написанных строк кода, количеству дефектов на тысячу строк
кода и многим другим интересным метрикам, на изучении которых ученые
пишут диссертации, а консультанты зарабатывают много денег.
В итоге, часто менеджеры начинают поощрять тех людей, у которых в
смысле метрик все хорошо, и не поощрять тех, у кого плохо. Главный
момент состоит в том, что исправить метрику – очень легко. Что нужно
сделать, чтобы строк кода было побольше? Почаще использовать
copy-paste. Поменьше функций, побольше кода в функциях на десять
экранов! В итоге по метрикам все становится хорошо, но если заглянуть
внутрь, то – ужас, ужас…
Причем, заметим, что метрика не всегда однозначна. Если взять
какой-нибудь продукт, например «Сапера» стандартного. Один инженер
написал его в 1 тыс. строк кода. Другой в 20 тыс. строк кода. Кто
молодец?
Очевидно, что первый. Потому что второй наверняка не знает что такое циклы, функции, какие есть библиотеки и пр.
С другой стороны, может быть, второй сделал какой-нибудь очень
расширяемый дизайн, который легко позволит расширить минера до любого
количества измерений. Сделал код переносимым и интернационализованным.
Или он для того, чтобы улучшить производительность заинлайнил несколько
функций. В общем, непонятно. Надо разбираться. Метрика – это сигнал, что надо разобраться. Не более того.
я вот всегда считал программистов нетворческими людьми... в моем понимании программирование - навык. а навык как известно можно тренировать. и измерять тоже. в отличии от творчества, где навык конечно тоже играет роль, но талант (который трудноизмеряем) всегда важнее