Я не верю в code review
👁 393↗ 8💬 5
Кто-то должен был это сказать. Поэтому я решил стать первым.
Проблемы code review:
1. Замедляет
Фича готова -> ждём ревью 1-2 дня -> правим -> ещё ревью
2. Nitpicking
90% комментов: "тут пробел лишний", "переименуй в camelCase", "удали/добавь комменты"
3. Велосипеды
Кто-то: "Я бы сделал по-другому" и понеслось, споры - споры - споры
4. False security
Код прошёл ревью != безопасность. Потому что баги всё равно будут.
Что работает намного лучше:
1. Pair programming (когда нужно)
2. Автотесты (находят больше багов)
3. Code Style и Linters (автоматизируют nitpicking)
4. Post-merge review to master (асинхронно, без блокировки)
Возможно я просто никогда не видел нормальных процессов с Code review. Наверное это как раз в корпорациях сделано грамотно. А в стартапах скорость важнее идеального кода.
9/100
Telegram
143
Комментарии · 5
- @shaurgonХерня в больших компаниях. Codowners иногда решают, но не сильно
- @duchkscode review становится важен, когда разработчик добавляет или изменяет логику в продукте: - где автотесты нельзя встроить в PR из-за длительности их работы - где новые модули продукта имеют взаимосвязи с существующими, и без review от code owners можно наломать дров - где требуется строгая backward compatibility - где более 100 разработчиков
- @shaurgonОй, мне так нравится это "Мы сделали большую фичу, которая будет тыкать ваш API, только нам было лень тесты писать, а тестировщик у нас один на всю компанию, делайте свой код ревью. Не хотите? Ну нам тоже похер" Деплоятся, фича утекает по памяти, потому что внутри бесконечный цикл с рекурсией, а ещё каждую наносекунду долбит редис и апи. Вопрос, кто виноват и почему палку в жопу вставляют девопсам?
- @duchksтестировщиков может быть много. у нас их ~70 человек. но полный цикл проверки занимает почти две недели. продукт ~12 миллионов строк С/С++. тесты пишутся, и помогают, но они не могут покрыть весь масштаб. Вопрос про виноватых не совсем подходит под ситуацию, главное что бы люди понимали степень ответственности, и что если проблема не обнаружена на этапе разработки, сколько для компании она будет стоить, если ляжет продакшн сервер у клиента, например у крупного банка. Если у вас ставят палки в одно место за ошибки, возможно вам стоит подумать, а там ли вы хотите работать?
- @shaurgonЕсли что, реальный кейс 😂