Есть поговорка, что «счастливые курицы лучше откладывают яйца», и так, похоже, обстоит дело с программистами. Мы не являемся логическими автоматами, которыми мы притворяемся и которыми руководство хотело бы нас видеть. Это действительно имеет значение, что нам позволено быть свободными …
Еще в апреле мы сообщали о том, что сделало программистов несчастными, см. О Несчастье разработчиков программного обеспечения, и теперь та же команда вернулась с другим исследованием, которое пытается выяснить, какое влияние оказывает счастье или несчастье. Даниэль Грациотин, Фабиан Фагерхольм, Сяофэн Ван и Пекка Абрахамссон из Штутгартского университета, Хельсинкского университета и Свободного университета Бозен-Больцано провели опрос, чтобы выяснить, какое влияние оказывает счастье или несчастье на процесс разработки, а также на разработчика.
Последствия недовольства для разработчика были довольно предсказуемы —
Наиболее значимыми последствиями несчастья для собственного бытия разработчиков являются: низкая когнитивная работоспособность, психическое беспокойство или расстройство, низкая мотивация и уход с работы.
Категории последствий несчастья. Цифры указывают количество закодированных экземпляров на каждом уровне, включая подкатегории.
Отказ от работы-это одна вещь, которая имеет последствия для остальной части команды:
Отказ от работы-это очень разрушительное следствие несчастья, и оно часто возникало среди ответов. Отказ от работы-это семейство поведенческих моделей, которые определяются как попытки сотрудников временно или навсегда отстраниться от повседневных рабочих задач. Серьезность этого последствия варьировалась от переключения на другую задачу, например,
“[. . . ] вы тратите около 2 часов на поиск в Google аналогичной проблемы и на то, как она была решена, вы ничего не находите, начинается отчаяние. Это затуманивает ваш разум, и вам нужно сделать другие вещи, чтобы очистить его”,
к рассмотрению вопроса об отказе от разработки программного обеспечения,
“Я действительно начинаю сомневаться в себе и сомневаться, гожусь ли я в первую очередь для того, чтобы быть разработчиком программного обеспечения”, или даже “Я ушел из компании”.
Еще одно следствие — нарушенный поток. Если вы считаете, что прерывания-это ваша единственная проблема, то вам нужно принять во внимание, что несчастье может заставить вас прервать себя:
Несчастье вызывает перебои в потоке разработчиков, что приводит к неблагоприятным последствиям для процесса. Как выразился участник,
”подобные вещи [несчастья] часто вызывают длительные задержки или заставляют человека выходить из потока, что затрудняет возобновление работы с того места, на котором он остановился».
Несчастье и нарушенный поток заставляют разработчиков встать и
“ [ … ] заставь меня бросить курить и сделать перерыв”; ощущение застрявшего постоянно.
Хотя все это трагично, как насчет кода?!
Как и ожидалось в фокусах предыдущих исследований, наиболее важным следствием недовольства разработчиков программного обеспечения было низкое качество программного обеспечения.
Низкое качество кода представляет собой последствия недовольства разработчиков, связанные с ухудшением качества артефактов. Участники сообщили, что
“в конечном итоге [из-за негативного опыта] качество кода не может быть гарантировано. Таким образом, это сделает мой код грязным, и в нем можно найти больше ошибок”,
но также упоминалось, что делает код менее производительным, или
“В результате мой код становится более небрежным”.
Кроме того, участники также сочли, что они могут применять методы обеспечения качества, например,
“ [ … ] поэтому я не могу следовать стандартной схеме проектирования”,
как способ справиться с негативными переживаниями.
И к непростительному греху удаления кода:
Мы нашли несколько примеров участников, которые уничтожили кодовую базу, связанную с задачами, например:,
“Я удалил код, который писал, потому что был немного зол”,
вплоть до удаления целых проектов:
“Я удалил целые проекты, чтобы начать все сначала с кода, который, казалось, не шел в неправильном направлении”.
Единственная проблема здесь в том, что я могу вспомнить множество программистов, которые, будучи в остальном счастливыми, удалили кодовую базу просто для того, чтобы начать все сначала — что-то, что сделало их еще счастливее.
Категории последствий счастья. Цифры указывают количество закодированных экземпляров на каждом уровне, включая подкатегории.
Анализ влияния счастья на программистов привел в основном к тому, чего можно было ожидать, — это сделало их более уверенными в себе, более творческими и т. Д. Но ключевой вывод заключается в следующем:
Основной вывод нашего исследования заключается в том, что разработчики программного обеспечения испытывают несколько последствий несчастья и счастья, причем большинство последствий несчастья являются внешними (55%), а большинство последствий счастья относятся к собственному бытию разработчика (58%) (внутренние последствия). Можно сказать, что в широком смысле разработчики чаще считают, что их счастье приносит пользу им самим, а их несчастье наносит ущерб другим.