Тру стори от Жени Антонова. Человеческий фактор ЧСВ в код-ревью
Контекст
С одним моим товарищем как-то произошла любопытная история. Он отправлял пулл реквест в чужой открытый проект, у которого был один единственный разработчик.
Надо отметить, что это не проект ради проекта, а фактически сервисная утилита для потребителей некоммерческих услуг. Ну, то есть денег там нет, но общественное дело делает и компания, и конкретный разработчик данной утилиты.
Так вот, мой товарищ нашел баг и пришел в чат этого проекта (где и заказчик со стороны компании, и разработчик) и зарепортил не просто баг, а фикс для него + набор тестов, чтобы это еще и безопасно можно было проверять. Ну красота же! Красота?
Оказалось, что не красота. Этот ПР разработчик отмел непреклонно и даже агрессивно. Мол, нагенерил тут нейрослопа, проходи мимо, мальчик. Вообще ты не шаришь, то ли дело я знаю секретные секреты успешной разработки.
Товарищ мой к проекту не равнодушен и поэтому попытался побороться ради блага проекта. Несколько раз менял код по сутевым претензиям от разработчика. И даже по несутевым тоже менял. Но итог был один – ПР всё не принимался каждый раз по каким-то свежепридуманным причинам.
Что сделали
Мы с товарищем обсудили это, и у нас родилась идея, что разработчик хочет не правильный фикс, а хочет быть самым умным, да еще в публичном чатике с ЛПР.
Поэтому по приколу он попробовал не менять суть кода, а сделать новый ПР и снабдить его публичным признанием, мол, ты такой умный, ты был прав, дал топовые советы (на самом деле нет), а я не прав, но смиренно тебе направляю код по следам твоей мудрости.
Результат
В итоге код влетел в репозиторий со свистом, как к себе домой. А довольный разработчик попросил еще ПРы приносить и изъявил готовность к сотрудничеству.
Вывод
Очень часто люди говорят вслух одни аргументы, а на самом деле руководствуются совершенно другими, личными мотивами. Ну и формальная эффективная эффективность и правильность решения — далеко не топ-1 приоритет при принятии решения, как бы нас умные статьи не учили.
Так что для успешной работы с людьми надо уметь понимать их глубинные мотивы и интересы.
Post #37
263
- ❤ 16
- 🔥 7
- 👍 5
- 🤩 2
- 💯 1