Проклятия как помощник программиста

Студентка Технологического института Карлруэ (г.Германия) Ян Стремель (Ян Штремель) обнаружил связь между качеством кода и количеством ненормативной лексики в сопровождающих комментариях, пишет Ars Technica. Анализ нескольких тысяч образцов «исходников» на языке программирования C платформы Гитхаб показал, что в среднем, содержащие нецензурные слова Открытый исходный код содержит меньше ошибок, повторяющихся фрагментов и легче читается.

Идея исследования пришла в голову руководителю Штреймеля, специалисту по биоинформатике. Александрос Стаматакис (Алексндрос Стаматакис), увидев любопытный график, показывающий частоту использования ненормативной лексики в коде ядро линукса от версии к версии.

Для проведения исследования Штреймель извлек открытые репозитории. обладает Майкрософт размещение IT-проекты GitHub имеют около 3,8 тыс. образцов кода, содержащих ненормативную лексику, а также 7,6 тыс. — «чистых» с точки зрения использования их авторами нецензурной лексики.

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

Качество кода оценивалось автоматически по одиннадцатибалльной шкале (от 0 до 10) с помощью программы SoftWipe, изначально разработанной для тестирования научного программного обеспечения. Анализ набора данных показал, что в среднем программы, в которых разработчики использовали ненормативную лексику, набрали на 0,5 балла больше, чем те, в которых не использовались ругательства.

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

Критерии кода качества

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

ЧИТАТЬ   10 британских поединков, которые, к сожалению, сошли на нет - Новости бокса

По каждому из анализируемых критериев SEO получает целое число баллов от 0 до 10 (чем больше, тем лучше качество кода). Все показатели равны.

Итоговая оценка – средняя арифметика оценки вышеперечисленных критериев качества.

Удивительный и любопытный результат

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

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

Специалист по когнитивной психологии Бенджамин Берген (Бенджамин Берген) из Калифорнийский университет в Сан-Диего (СОЕДИНЕННЫЕ ШТАТЫ), автор книги «Что за F: что брань раскрывает о нашем языке, нашем мозге и нас самих», время от времени позволяет себе нецензурную лексику при обучении своих студентов (конечно, чтобы не обидеть слушателей). Такой подход повышает вовлеченность студентов, подтверждает ряд независимых исследований, в том числе опубликованных в рецензируемых журналах Communication Quarterly и Communication Reports.

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

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

ЧИТАТЬ   33 очка Татума позволили «Бостону» выйти в серию плей-офф НБА против «Майами».

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

Source

От admin