О code review

Недавно сделал для себя небольшое открытие, а именно: во время code review необходимо думать не только о конкретной задаче, но и о проекте целиком - качество, сроки, цена ошибки на этом этапе и цена исправления этой ошибки.

Друзья, добрый день. Хочу рассказать интересный случай, который произошел со мной во время code review. Возможно, кому-нибудь это будет полезно. Так вот:

Во время работы хочется выдать максимальное качество и code review не исключение. Я стараюсь провести ревью как можно внимательнее: подсвечиваю все слабые места, баги, неточности, нарушение договоренностей/правил и проч. Проще говоря, все, что смогу найти. Из-за этого стремления я неосознанно проглядел важную деталь:

Code review - это не соревнование по написанию комментариев и открываниям тредов. “Благими намерениями…”, как говорится.

Недавно я делал ревью одной небольшой задачи, она была не очень важной, но ее необходимо было сделать - блокировала другую, более важную задачу. Так вот, я набросился на нее со всей силы, по итогу завел тредов десять (или около того) и ждал, что другой разработчик их все поправит. А после этого один мой товарищ, сделав пару замечаний, навел меня на верную мысль: исправление моих комментариев прямо сейчас увеличит время работы над этой задачей (напомню, не очень важной, но блокирующей задачей). Выходит, что я попался в ту ловушку, о которой говрил: пытался измерить качество своей работы количеством оставленных комментариев, игнорируя при этом цену исправления замечаний на текущем этапе и как это отразится на проекте в целом.

Что же тогда делать? Игнорировать замечания?

Конечно, нет. Стоит оценить, что лучше исправить сейчас, а что можно без серьезного вреда вынести в отдельную задачу. Для оценки достаточно просто подумать, как эта ошибка/неточность повлияет на проект. В данном случае все свои замечания, за исключением некоторых, я вынес в отдельную задачу по рефакторингу и оставил ее в беклоге с меньшим приоритетом. Таким образом, и блокирующая задача будет выполнена быстрее, и качество кода не сильно просядет.

Но тут есть один нюанс, а именно: не разрастется ли в будущем беклог и не станет ли тех. долг неконтролируемым? Пока что я с этим не столкнулся, но хорошо бы подумать об этом заранее. Если у вас есть какие-то идеи, буду рад выслушать

О code review | Сетка — социальная сеть от hh.ru О code review | Сетка — социальная сеть от hh.ru