Непрофессионально ли называть код «мусором»?

Введение: я пишу программное обеспечение более 15 лет и в настоящее время возглавляю команду из примерно 10 разработчиков, с которыми я ежедневно провожу обзоры кода. Мои комментарии, как правило, прямые, честные и прямолинейные.

Тем не менее, в сегодняшнем обзоре был один комментарий по почте, который мало кого нервировал; это выглядит так:

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

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

Что бы вы сделали из этого; почему вы думаете, что мой язык был непрофессиональным?

И да, код был ужасен, можете поверить мне на слово.

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

Обновление 2 (после долгого времени): я постоянно сталкиваюсь с одной и той же проблемой время от времени, но позвольте мне прояснить кое-что: я должен был упомянуть раньше, что слово «мусор», которое я использовал, было для части кода, которая не является чем-то разработчики делают это со страстью, а скорее по предложению инструмента Code Quality, который попадает в нашу кодовую базу в результате копирования/вставки.

Независимо от того, что вы или я могли бы подумать, высшее руководство вашей компании ясно дало понять, что считает это непрофессиональным. Предполагая, что вы хотите продолжать там работать, я думаю, вам следует принять это и соответствующим образом изменить свое поведение.
Мне потребовалось много времени, чтобы усвоить одну вещь: люди воспринимают слова, которые вы используете для описания их слов, мыслей, действий или работы, как их описание . Если вы говорите «этот код — мусор», то автор кода обычно воспринимает это как то, что вы называете его мусором. Что еще хуже в этом случае, так это то, что вы знаете , что человек, который написал этот код, может услышать/прочитать ваши слова, назвав его «мусором», и вы также сделали заявление публично. Вы бы подошли к разработчику посреди КПЗ на глазах у всех и сказали: «Ты мусор!» Надеюсь, нет. К сожалению, это то, что вы вроде как сделали здесь.
Заявив о своем согласии с последним редактированием @ostati. Большая часть этого сайта предназначена для будущих людей. Чрезмерная критика ОП совсем не помогает этой цели, и это означает повторение той же самой ошибки, которую совершил ОП. Мы все делаем ошибки. Не нужно переходить на личности по этому поводу. ОП имел дальновидность, чтобы впоследствии спросить мнение со стороны, и, по крайней мере, это, безусловно, похвально.
Вы, вероятно, пытались сказать : «Этот уровень кода ниже вашего уровня, я знаю, что вы можете сделать лучше!» но вместо этого, вероятно, вам кажется, что вы говорите : «Ты плохой, и твоя работа плохая, поэтому тебе должно быть плохо» .
@ Стив-О, неважно, что об этом думает «высшее руководство». Такой язык почти наверняка подорвет добрую волю сотрудников этого ОП, подорвав доверие и способность к сотрудничеству. Ссылаясь на то, что босс может подумать, как на единственную причину избегать такого поведения, это бесполезно для ОП. Есть веские причины избегать такого языка, который выходит далеко за рамки фразы «вас могут поймать».
Я видел закономерность в следующем воплощении: руководство вводит что-то новое, младшие разработчики начинают это использовать (от страха), бесхарактерные старшие разработчики высмеивают младших разработчиков вместо того, чтобы решать вопросы с руководством. Типичные примеры: управление требованиями, систематическое управление тестированием и (как OP) инструменты анализа кода.
Я думаю, что этот комментарий прошел бы мимо в старые времена, когда проверка кода проводилась, собирая всех в комнате и обсуждая его. Я бы, вероятно, в пылу дискуссии высказал некоторые из них и был бы признан преувеличением, что вызвало бы больше дискуссий. В сегодняшнем онлайн-обзоре это не только записано там навсегда, у вас нет вокальной интонации или языка тела, чтобы определить, что это имелось в виду. В обзоре, где что-то написано, комментарии должны быть максимально ванильными, чтобы их не поняли неправильно.
Если рассматриваемое кодирование не автоматизирует процессы утилизации санитарно-технического оборудования, ненужное использование этого дескриптора трудно рассматривать как не оскорбительное.
В качестве лидера это непрофессионально. Это действительно оскорбительно.
Все (отличные) ответы до сих пор сосредоточены на аспекте «мусора», но что на самом деле означает ссылка на «улучшение показателя качества кода»? Разве это не критика неподходящего стандарта или инструмента? Кажется, что этот угол был потерян из виду.
@peterG Да, именно в этом проблема с заявлением OP, оно отвлекает от того, что могло бы быть хорошим пониманием, из-за его оскорбительного и резкого компонента.
"Мусор" неконструктивен. Это такой же простой ответ.
Представьте, что у вас есть ребенок, и он что-то рисует и дарит вам. Конечно, все мы знаем, как выглядят детские рисунки. Сказали бы вы своему сыну, что его рисунок — фигня? Или сделать такой комментарий своей жене, пока он его слышит? Я предполагаю, что нет. Почему? Зачем тогда делать то же самое со своим коллегой?
Будучи человеком с 15-летним опытом и ежедневными проверками кода, я удивлен, что вы вообще задаете этот вопрос. Я согласен с @Mike
Пожалуйста, пожалуйста, пожалуйста... выложите код. запутать его всеми средствами, но, пожалуйста, дайте нам увидеть его во всей красе!
Ваш издевательский комментарий нанес ущерб моральному духу команды и несчастного человека, написавшего этот код, от этого никто не выиграл. Вы выставили себя высокомерным хулиганом, вступление к вашему посту показывает, что, поскольку вы занимаетесь программным обеспечением 15 лет, вы чувствуете себя вправе делать это. Я думаю, вам следует хорошенько приглядеться к себе, прежде чем причинять еще больший вред.
Считали ли вы оскорбительными чувства человека, написавшего этот код?
Самая большая проблема здесь, похоже, заключается в том, что ведущий разработчик не может проводить код-ревью.

Ответы (11)

Что бы вы сделали из этого; Вы думаете, что мой язык был непрофессиональным?

Да.

Ваш комментарий перешел черту от исправления (которое обычно опирается на конкретные и конкретные комментарии) до оскорбления («это ужасно, и если мы продолжим в том же духе, мы обречены»).

Неважно, сколько у вас опыта. Неважно, если код полный мусор. Честность не повод быть грубым. Это один из самых быстрых способов остановить прогресс и импульс команды. Независимо от того, насколько вы опытны или продуктивны в отдельности, вы навредите своей компании в целом, если отношение, которое вы демонстрируете на рабочем месте, мешает вашим коллегам.

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

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

Отредактируйте, чтобы добавить, что, безусловно, хорошо, что там был полезный обзор, но имейте в виду, что восприятие так же важно, как и реальность. Во многих случаях достаточно всего одного неудачно подобранного слова, чтобы свести на нет всю реальную пользу, которую приносит сам обзор кода. Очень информативный обзор кода, который заканчивается (и я понимаю, что это не совсем то, что произошло) «в общем, это фигня», все равно оставит у кодера в целом очень плохое впечатление, и вполне вероятно, что они остановятся. слушать все остальное, что вы говорите. Важно, чтобы все было профессионально, на каждом этапе пути.

@Conor Mancone: Пожалуйста, отредактируйте свой комментарий в соответствии с информацией, предоставленной в обновлении 1/2.
Восприятие является реальностью для всех остальных в комнате. Как только восприятие установлено, реальность теряется. Эти люди вряд ли пересмотрят ситуацию.
Как вы думаете, если бы это был слепой обзор и никто в команде, включая рецензента, не знал, кто написал код, кроме автора?
@RibaldEddie Дело (с моей точки зрения) в том, что одной из самых больших проблем является влияние на моральный дух команды. Если он общедоступен (а это так), то его видят все, и он окрашивает то, как каждый думает и действует, даже если он не был автором кода. Большинство людей будут бояться получить такой же ответ сами, и это никому не нужно. Не говоря уже о самом реальном влиянии, которое оно все равно окажет на человека, который его написал. Тот факт, что они не знают, кто критически настроен, вероятно, заставит людей нервничать больше, а не меньше.
@ConorMancone, но они знают, что это были не они. На мой взгляд, это сделает его другим, потому что это больше не рассматривается как личное. Если вы критикуете работу, не зная, кто ее сделал, а знает только тот, кто ее сделал, то, я думаю, это снижает вероятность того, что ее примут на свой счет. Также ОП не сказал, что думал автор кода. Руководству это могло не понравиться, но если бы остальной команде было все равно, тогда все могло бы быть по-другому.
@RibaldEddie: Честно говоря, вы описываете довольно необычный сценарий. Когда я провожу код-ревью, я точно знаю, кто об этом просит, и все это делается публично. Я считаю, что другие технологические компании, как правило, проводят проверку кода аналогичным образом. Возможно, ваше рабочее место отличается от моего, но делать случайные предположения о ситуации ОП бесполезно.
@Kevin Я не сталкивался с этим ни с точки зрения проверки кода, но я мог видеть двойной слепой метод, используемый в некоторых крупных компаниях, чтобы гарантировать, что проверки проводятся как можно более справедливо.
«Честность — не повод быть грубым». +1 Вы можете говорить то, что имеете в виду, честно и прямо, не обижая и не унижая. Это действительно то, к чему это сводится.

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

  1. Это было сделано публично, поэтому вас отвели в сторону (виртуально)
  2. Это мешает команде.
  3. Это порождает обиду.
  4. Кодеры, как и художники, принимают критику ОЧЕНЬ лично.
  5. Это было очень демотивирующей вещью. Продуктивность этого кодера пострадает.
  6. Это делает других менее склонными к риску, чтобы они не были осмеяны.

Я должен самым решительным образом сказать, что это ПЛОХОЕ ДЕЛО . Этому поведению нет оправдания. Не повторяйте это.

У меня есть свои собственные чувства, и многие из нас здесь с этим согласны. Я могу управлять тем, кто написал плохой код, с гораздо меньшим стрессом, чем человеком с плохим отношением. Я всегда могу помочь вам улучшить ваш код, но отношение человека мне неподвластно, и я не буду иметь дело с человеком с плохим отношением.

Отличные баллы. Я <3 их.
Re: 4 - IME, каждый воспринимает критику своей работы лично. Принято рассматривать свою работу как отражение самого себя.
Это также может привести к снижению производительности команды из-за того, что команда нервничает из-за возможных насмешек, поэтому они с меньшей вероятностью будут чувствовать себя комфортно, отправляя код на проверку, что на самом деле может быть нормально, из-за боязни аналогичного обращения. Это может привести к тому, что на самопроверку будет потрачено больше ненужного времени, а в долгосрочной перспективе коллеги будут прерывать друг друга для рецензирования.
Я думаю, что ваш последний абзац может быть здесь слишком много. ОП больше похож на кого-то, кто слишком прямолинеен для своего же блага или не полностью соответствует социальным нормам в отношении критики. Это поправимая проблема, и она сильно отличается от плохого отношения. (И, конечно же, с этим все равно придется иметь дело менеджеру, но вы справитесь с этим по-другому.)
@Lilienthal Я немного отредактировал его, так как вижу, что это могло показаться слишком резким. Дело в том, что гораздо легче исправить недостаток навыков, чем исправить плохое отношение.
@ГабриэльС. Нет, я сказал то, что имел в виду, но если вас так смущает одно слово, возможно, вам стоит прочитать пост целиком.
Я бы тогда изменил, unprofessionalismпотому professionalismчто это полностью меняет смысл. Это low point of professionalismимело бы гораздо больше смысла.
@ГабриэльС. ну, этот ответ был в течение почти 16 месяцев. Я думаю, все будет в порядке. Это просто красочный способ сказать «низший из низших».
@ГабриэльС. Надир (что означает «низшая точка в судьбе человека или организации») кажется мне самым подходящим словом. Этот комментарий является самой низкой точкой, куда скатывается вся продуктивность. Это СНИЖАЕТ продуктивность и СНИЖАЕТ моральный дух.
@ user87779 Я видел, что это двойное отрицание, но, честно говоря, это могло быть написано в любом случае и, возможно, было бы правильным. Я не вернулся к Ричарду, потому что понял смысл его последнего комментария. Если вы хотите, чтобы я это понял, я считаю, что ОП виновен в высшей степени непрофессионализма или демонстрирует самый низкий уровень профессионализма. Надеюсь, это прояснит ситуацию. Моя проблема заключалась не в использовании самого «надира».
@ГабриэльС. Нет, я все понял из ваших предыдущих комментариев. Я просто добавил, что считаю это совершенно правильным. В любом случае, это НЕВЕРОЯТНО мелкая вещь. Категорически не стоит запальчивости, которая довольно агрессивна

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

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

Но когда вы переходите к глобальному контексту, что и сделал ваш один комментарий (да, всего одно предложение!), теперь вы критикуете самих сотрудников или всю компанию, и это более угрожающе. Это приводит к (как упоминается в других ответах) обиде, отключению и потере совместной энергии.

Вы можете найти эту разницу между глобальной критикой и конкретной жалобой в литературе об отношениях. Объяснение Джона Готтмана (см. «Критика») является популярным примером.

Слова, которые вы выбираете, имеют значение, но контекст важнее. Совершенно нормально (в большинстве известных мне магазинов программного обеспечения) говорить «мусор на входе, мусор на выходе», потому что это имеет особое значение, и вы используете эту фразу, чтобы описать, почему конкретный дизайн не подходит. Иди разберись.

Первая фраза поставлена ​​блестяще, а в остальном все хорошо. Спасибо.

прямой, честный и прямолинейный.

Иначе говоря: резкий, резкий, недипломатичный.

Нам, программистам, трудно усвоить, что люди — не машины. Их не интересует голая правда. Люди — социальные животные, и для общения с ними требуется хороший уровень дипломатии.

Некоторые даже доходят до того, что говорят, что настоящая цель общения не в передаче информации, а в укреплении дружбы. Я бы не стал заходить так далеко, особенно в профессиональной среде, но это то, что вы никогда не должны забывать: даже в обстоятельствах, когда о вас ничего не говорят, «прямой, честный и прямолинейный» на самом деле может оставить людей недовольными вами. , что впоследствии может помешать вашим рабочим отношениям. В идеале вы всегда должны вставлять слой критики между слоями комплимента.

Вы можете быть прямыми, честными и прямолинейными, не будучи резкими, резкими или недипломатичными. Я мог бы даже сказать, что называть эти вещи резкими, резкими и недипломатичными само по себе является резким, резким и недипломатичным.

То, что считается подходящим языком для комментария, будет полностью зависеть от культуры вашей компании, но просто назвать чей-то код «мусором» (и скобки предполагают, что вы на самом деле использовали другое, менее вежливое слово), безусловно, не очень конструктивно. Это никому не поможет стать лучше.

Что было не так с кодом? Как они могли его улучшить? Что разработчик должен сделать по-другому? Это единственная информация, которую вы должны были включить. Если это было настолько плохо, что вышло за рамки комментария, вам следовало отвести разработчика в сторону и обсудить это лично.

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

Я полностью описал проблему, так что это не похоже на то, что я показал там однострочный обзор. Он был полностью задокументирован с предлагаемыми исправлениями.
Конструктивная обратная связь была частью обзора.
@Ostati, к сожалению, для большинства людей в комнате выводом будет не конструктивная обратная связь или полностью задокументированные исправления, а «[мусор], как показано ниже». Такова человеческая природа.
@cdkMoose: я согласен, но это не обязательно должно быть частью комментария, лучше без него, это все, что я имел в виду. Это было сказано как «комментарий проверки кода без конструктивной обратной связи»..
Отредактировано, чтобы удалить бит «нет конструктивной обратной связи». Это не было ясно из вашего исходного сообщения. Остальная часть моего ответа остается в силе.

Что бы вы сделали из этого; почему вы думаете, что мой язык был непрофессиональным?

Итак... вот в чем дело:

  • Вы руководитель группы; это означает, что вы должны укреплять команду, а не сбивать ее.

  • Код — это работа разработчика; назвать это мусором в письменной форме на глазах у сверстников — это тяжелый удар.

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

  • Держите подробные предложения, это хорошо

  • В разделе «Общие» скажите, что этот файл не соответствует рекомендациям в соответствии с подробными примечаниями ниже.

  • Устройте перерыв, либо 1-1 с парнем, либо тренировку с командой, чтобы пройти лучшие практики. Другими словами, превратите эту ошибку в возможность

Всего два моих кусочка, йоу.

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

Это очень сильно зависит от корпоративной культуры. Тем не менее, есть некоторые общие вещи, которые следует учитывать. В основном есть две причины, по которым вызов кода мусора может считаться непрофессиональным:

  1. Он сам по себе не дает понимания того, что плохо или как улучшить ситуацию, он просто придает этому коду (низкую) ценность, в то время как обычно вы хотите посмотреть на его преимущества и недостатки, а не считать его в целом плохим или плохим. хороший
  2. это может быть оскорбительно для коллеги, т.е. человека, который написал этот код

Что касается 1), это можно облегчить, предоставив конкретную информацию о том, что вы считаете плохим и как это исправить. Как правило, есть причины, почему все так, как есть, и дело не в том, что кто-то просто хотел написать фигню. Код мог быть идеальным для работы, для которой он был предназначен, когда он был написан, но контекст изменился.

Что касается 2), если код, на который вы ссылаетесь, является недавней фиксацией от определенного человека, этот человек может обидеться. Особенно, если у него были причины написать что-то объективно плохое, вроде нехватки времени, которые вы не принимаете во внимание. И часто то, что для вас является мусором, идеально подходит для кого-то другого, называя это мусором, вы просто добавляете эмоций в то, что в противном случае могло бы стать вполне обоснованным объективным обсуждением. На другом конце спектра — если вы берете на себя старую большую кодовую базу, которую никто в текущей команде уже не считает «своим кодом», довольно безлично называть эту большую кучу, вероятно, запутанным кодовым мусором (по-прежнему не адресует 1 .хотя и вам лучше подкрепить его). Другая проблема заключается в том, как вы произносите любую строку, содержащую ругательства. Чем эмоционально нагруженнее (и обвиняюще), тем хуже, беззаботнее,

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

Реагируют ли люди обижаться и считать вас (не)профессионалом исключительно на основании используемых вами слов, зависит от корпоративной культуры. Однако обычно люди будут судить о вас по тому, как вы используете свои слова. Если вы просто называете это мусором, не аргументируя свою точку зрения, не принимая доводы других разработчиков о том, почему код и так хорош, люди сочтут вас неразумным и осуждающим. А значит непрофессионально. Особенно, если вы явно или неявно обвиняете своих коллег в том, что считаете плохим кодом. Это верно независимо от того, употребляете вы ругательства или нет, т.е. говорить «этот код просто плохой», без дальнейших комментариев, тоже непрофессионально, но чем более эмоционально нагруженные слова вы используете (и чем более эмоционально нагружены вы их преподносите) , тем хуже это становится.

При этом, если вы разумно используете бранные слова, не адресуя их своим коллегам, а скорее как средство придать вес своим впечатлениям или выразить некоторое разочарование, это может быть совершенно нормально. Я работал в среде, где тон был очень прямым, игривым, а предложения часто были полны ругательств. Но, как правило, подобные ругательства были направлены на какие-то технические проблемы, на непредсказуемое поведение некоторых фреймворков или даже на собственный код («Посмотрите, какой мусор я там натворил, просто невероятно, что я это написал!»). С другой стороны, я редко видел команду, работающую так профессионально — уважающую друг друга, всегда ищущую, как решить проблему, а не как распределить вину.

TLDR : использование ругательств для описания кода само по себе не обязательно непрофессионально. Однако в некоторых культурных контекстах любое использование ругательств считается непрофессиональным/оскорбительным. Ваша задача - выяснить, так ли это в вашей среде, прежде чем использовать их, не делать этого сначала - непрофессионально. Если код (другого человека) абсолютно ценен, с использованием ругательств или без него, без а) предоставления подробностей и б) без отделения этой критики от человека и в) без знания того, что другой человек может разделить критику своего кода и критику себя, это тоже непрофессионально. В вашей нынешней компании люди явно не привыкли к всякой ругани/ругательствам и считают это плохим поведением — так что не делайте этого.

Вы отправили этот комментарий не в ту сторону

Когда я впервые прочитал ваш пост, я решил, что это комментарий к вашему руководству, и моей первой реакцией было: «Ну, если им не нравится правда, они должны прекратить заставлять вашу команду использовать такие глупые показатели».

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


Однако, похоже, что это было не то место, где был комментарий. Вместо того, чтобы бороться от имени вашей команды против руководства — удалять глупые метрики, которые, по мнению вашей команды, приводят к написанию мусора — вы сделали противоположное и поставили свою команду в режим «будь проклят, если будешь делать, будь проклят, если не будешь». "ситуация.

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

Сказать им, что код, который они пишут, — «мусор»; из-за системы, над которой они не властны, — это просто сигнал о том, что вы не прикрываете их спины и не хотите участвовать в их битвах.


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

Правильно, они выступили против вас в этом. Их ответ фактически «попробуйте обвинить в этом нас, и мы предельно ясно объясним, почему в этой ситуации виноваты вы».

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

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

Если улучшить показатель качества кода

Итак, общая цель — улучшить качество кода. Почему бы тогда не сказать: «Мы хотим улучшить качество кода»? Почему вы принимаете этот фрагмент кода как аргумент в пользу того, чтобы не улучшать качество кода.

Для меня (как для менее опытного разработчика, чем вы) это звучит как комментарий человека, привыкшего к своим старым привычкам и не приветствующего изменений (даже если это называется «качеством кода»).

мы должны ввести мусор, как показано ниже

Возможно, вы уже поняли, что называть то, что пишут другие люди, «мусором» — не лучший способ получить одобрение, вы не предоставляете абсолютно никакой информации о том, почему что-то может быть не так с «мусором, как показано ниже», кроме того факта, что он натер вас Неправильный путь.

ВЕДУЩИЙ разработчик с 15-летним стажем должен дать больше информации, чем назвать что-то "мусором" .

то у нас серьезные проблемы.

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

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

Относительно обновления 1 : если ваш полный комментарий был подробным и содержал всю указанную информацию. Зачем нужно было еще оскорблять разработчика (и ставить под сомнение цели вашей команды)?

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

Есть определенные ситуации, когда код можно назвать «мусором». Например, выделение памяти или недостижимый код. Однако я не думаю, что вы имеете в виду это таким образом.

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

Мне нравится этот ответ. Мусор на самом деле что-то значит в кодировании!

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

Вы чувствовали, что этот код заслуживает более жесткой критики, потому что он исходил от инструмента, а не от человека, но вы не учли:

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

Другими словами, в петле все еще есть человеческие решения, которые подвергаются унижению. Я бы сформулировал ваше возражение примерно так:

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

Это дает понять, что вы недовольны качественным инструментом, а не автором кода, и делает вашу критику конструктивной, предлагая способ решения проблемы.

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