Вина и стыд — две стороны одной медали. Они появляются из одного и того же места, но имеют совершенно разные результаты. Перейдем к определениям.

Вина:факт ответственности за совершение правонарушения; моральная вина — Свободный словарь

Стыд: болезненная эмоция, вызванная верой в то, что человек является или воспринимается другими как неполноценный или недостойный привязанности или уважения из-за своих действий, мыслей, обстоятельств или опыта — «Свободный Словарь"

Другими словами: Вина — это плохое самочувствие по поводу того, что вы делаете. Стыд — это плохое отношение к тому, кто вы есть.

Вина — это то, к чему вы можете относиться и чему можно научиться, тогда как стыд — это то, что может заставить вас усомниться в своей самооценке.

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

Ритуалы

Нарушение сборки

Нормой является наличие некоторого вида непрерывной интеграции (CI) или настройки развертывания (CD) для программных проектов, которые отслеживают каждую регистрацию, которую делают разработчики. Процесс CI обычно создает и запускает тесты полученного артефакта сборки для проверки его целостности через разные промежутки времени.

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

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

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

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

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

Если вы не делаете X, вы плохой разработчик

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

«Если вы не используете TDD, вы плохой разработчик» — один разработчик в Интернете.

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

Устаревший код

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

Вы же не хотите сейчас писать унаследованный код, не так ли?М.Скотт Форд (о стыде)

В наших инструментах — git виноват

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

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

Разнообразие

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

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

Гашение стыда с помощью уязвимости

Доктор. Брене Браун — исследователь стыда и уязвимости, которая потратила годы на изучение этих сложных тем. Она взяла свои выводы и поделилась ими в своих книгах и на TED talks.

По словам доктора Брауна, стыд не может выжить, если его залить уязвимостью и сочувствием. Быть уязвимым, открытым, честным и заботливым — вот способы обратить вспять последствия стыда. Позволяет установить более глубокие человеческие связи.

не все так плохо

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

Есть подкасты, посвященные нетехническим аспектам работы разработчика программного обеспечения, такие как Разработчик в огне, Код (Больше, чем код) и Чай разработчика. Компании ставят эмпатию в основу. И, кажется, есть определенное количество людей, позволяющих себе быть уязвимыми и делиться своей историей.

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

Ну наконец то

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

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

Мы должны работать лучше. Количество младших/неопытных разработчиков в индустрии намного выше, чем старших/опытных (где-то слышал от Robert C. Martin). Это означает, что есть много уроков, когда речь идет об отношении и наставничестве, которые не передаются молодому поколению. Нам нужно совершенствоваться как отрасли, чтобы повысить осведомленность о важности уважения личности.

Мы все можем сделать небольшие шаги, чтобы уменьшить чувство стыда в нашей повседневной работе и жизни. Я знаю, что могу лучше. А ты?

Надеюсь, вам понравилось читать этот пост. Для меня было бы очень важно, если бы вы поделились этим с кем-то еще, кому это может быть полезно, нажав на 💚. Оставляйте свои точки зрения, истории и опыт в комментариях или обращайтесь ко мне напрямую.

Первоначально опубликовано на Coding With Empathy