Праздник к нам приходит, все труднее писать и даже читать про планировщики и алгоритмы. Благо в мире открытого ПО есть и более отвлеченные темы. Почему бы например не сравнить стиль деловой переписки Линуса Торвальдса и Грега Кроа-Хартмана?
Предлагаю читателям Хабра поупражняться в физиогномике и задаться вопросом, с кем бы из двух командиров проекта Linux ядра вы бы предпочли обсуждать прогресс вашего патча?
Параметры | Линус Торвальдс | Грег Кроа-Хартман |
---|---|---|
Временной интервал | 1995–2015 | 1995–2015 |
Количество емайлов | 21,746 | 24,145 |
Количество слов в емайле | 132 | 53 |
Лексическое разнообразие | .08 | .27 |
Предупреждение, под катом ненормативная лексика на английском языке, использованная в контексте деловой переписки и научного исследования.
Если Линус Торвальдс все время на слуху, то имя второго человека в проекте разработки ядра гораздо реже всплывает в новостных лентах. А между тем он никто иной, как мейнтейнер -stable ветки ядра. Является автором linux-hotplug, udev и Linux Driver Project. Работал в Novell SUSE Linux, а с 2012 г. перешел в Linux Foundation. ГКХ присущи фантастическая продуктивность и работоспособность, фраза maintainers don't scale к нему имеет лишь условное отношение.
Трое ученых их Университета Элон в Северной Каролине Соединенных Штатов Америки, провели исследование переписки Линуса Торвальдса и Грега Кроа-Хартмана, взяв архив LKML за 20 лет с 1995 по 2015 гг. Целью было исследование стилей переписки двух руководителей проекта и методом машинного обучения научиться различать их тексты.
Для тех, кто в теме не секрет, что Линус Торвальдс, будучи вполне дружелюбным и обаятельным в реальной жизни, практикует довольно жесткий и бескомпромиссный стиль в деловой переписке с разработчиками ядра. В связи с этим обстоятельством, он неоднократно становился объектом критики со стороны приверженцев более строгих стандартов деловой этики.
За примерами далеко ходить не надо. Недавно на орехи досталось Kees Cook-у — программисту из команды Google Pixel, который пытался протащить обновления безопасности, которые могли иметь негативные последствия для ПО в пользовательском пространстве. Чертовы кретины (f**ing morons), так Линус охарактеризовал специалистов в области безопасности в лице настойчивого разработчика из Гугл.
Страсти вокруг SecureBoot и правил хорошего тона
В июле 2013 г. из проекта ушли Мэтью Гарретт и Сара Шарп. Честно говоря потеря была невелика и чрезмерная готовность Метью идти навстречу интересам крупных корпораций неоднократно вызывало вопросы. Сама же Сара в своем блоге демонстрирует явно не тот стиль общения, который желает видеть по отношению к себе.
As this is my blog, not a government entity, I have the right to replace any comment I feel like with “fart fart fart fart" © Sarah Sharp
И все же я не уверен, что даже более толстокожие разработчики могли бы выдержать то, что Линус высказал Мэтью по поводу патчей, которые должны были обеспечить загрузку Linux на рабочих станциях, изготовленных под Windows 8+ и использующих UEFI с технологией SecureBoot.
Guys, this is not a dick-sucking contest.
Далее лидер проекта излагал свою точку зрения о том, что такие прогибы под Microsoft неуместны со стороны разработчиков кернела, а RedHat и другие вендоры вольны делать то, что им вздумается. В целом эта переписка была слишком экспрессивной даже для LKML, и Гарретт решил, что с него хватит.
В ходе этого спора Линус подзуживал ГКХ в духе: «соберись уже и хватит быть тряпкой», еще один из ключевых мейнтейнеров Инго Мольнар высказывал ему то же самое, утверждая, что иногда разработчиков можно и послать по известному адресу.
Склоки продолжались какое-то время, а затем участники проекта договорились о том, что нужен некий общий свод правил хорошего тона, что и было документально зафиксировано в /usr/src/linux/Documentation/CodeOfConflict
Автороведческая экспертиза Линуса и Грега
Исследование проводилось методом НЛП известным, как Naive Bayes Classifier с использованием «мешка слов» (bag-of-words). Для определения частей речи использовалась библиотека Python NLTK
. Симуляция методом Монте-Карло показала хорошие прогностические способности установить авторство текста с помощью данного алгоритма машинного обучения. Как утверждают авторы исследования точность прогноза достигает 97%.
Приведенная ниже таблица использования ненормативной лексики английского языка думаю не нуждается в комментариях.
Лексика | Линус | Грег |
---|---|---|
Всего | 3090 | 150 |
crap | 1204 | 107 |
hell | 725 | 22 |
damn | 682 | 2 |
shit | 126 | 1 |
anal | 54 | 0 |
bullshit | 50 | 2 |
ass | 46 | 6 |
god | 34 | 1 |
screw | 33 | 0 |
bastard | 29 | 0 |
bitch | 17 | 0 |
piss | 17 | 4 |
retard | 14 | 0 |
Тренировочная таблица для алгоритма машинного обучения так же говорит сама за себя.
Исследование учитывает лишь словарный запас английского языка, что исключает элементы финского фольклора, как этот.
There aren't enough swear-words in the English language, so now I'll have to call you perkeleen vittupaa just to express my disgust and frustration with this crap.
Как видно из исследования создатель Linux гораздо охотнее прибегает к ненормативной лексике и гораздо реже бывает изысканно учтив и тем не менее я считаю, что чувство меры до сих пор ему не изменяло, и его жесткость не переходило ту черту, за которой начинается самодурство. А что думают по этому поводу читатели?
Комментарии (33)
pehat
29.12.2017 18:21+5По таблице видно, что самая сильная фича — thanks. Видимо, у Линуса этого слова нет в автоподписи, у Грега — есть. Шутка из разряда «обнаружить Мицгола на анонимном форуме просто, потому что, во-первых, он всегда подписывается...»
zloddey
30.12.2017 11:19+2Скорее, у Грега ключевая фраза выглядит так: "thanks to Linus,..." (а дальше — объяснение, что и как именно сделано в ядре, благодаря Линусу)
symbix
29.12.2017 18:27+1Линус — это Линус, всем известен его стиль общения и то, что он, резко выражаясь, критикует решения, а не человека.
А вообще это все от команды зависит. Фраза вида "что это, *****, за говно?" вполне может быть как необоснованным наездом, так и объективной критикой, все зависит от контекста и отношений между людьми :-)
arodygin
30.12.2017 00:34Линус, [...] резко выражаясь, критикует решения, а не человека.
Было бы ок, если бы это было действительно так. Но Линус как раз очень часто переходит на личности:
There aren't enough swear-words in the English language, so now I'll have to call you perkeleen vittupaa just to express my disgust and frustration with this crap.
zoonman
29.12.2017 18:53+1Дело в том, что «политкорректность» в деловой переписке приводит к затягиванию решения проблем. Люди ищут эвфемизмы дабы не обидеть собеседника, на что оный никак не реагирует. В итоге проблема не решается, а затягивается тратя время на пустую болтовню.
Когда разработчик пишет ужасный, омерзительный код, этот код надо называть «говном» и никак иначе. И если разработчик нормальный, он найдет способ улучшить качество своего кода и стать профи. А если разработчик плохой, то он уйдет из профессии. Такие программисты и не нужны, от них больше вреда, чем пользы.
Из моей личной практики большинство хороших спецов действительно немного грубоватые и довольно сухие в плане общения люди.mSnus
30.12.2017 06:59Нет никаких причин говорить "твоя работа говно" вместо "твоя работа очень низкого качестве". Люди хамят только потому, что у них есть такая возможность показать своё неуважение и остаться безнаказанными.
justmara
30.12.2017 15:58+1Три слова вместо пяти — вполне себе повод. Куда как эффективнее выразить мысль коротко и доходчиво, чем тратить время/нервы на высасывание обтекаемых формулировок с той лишь целью, чтоб сказать то же самое, но только так чтоб никто не обиделся. Нежные ранимые с тонкой душевной организацией программисты кругом.
zoonman
31.12.2017 05:16+1Вот смотрите, взяли к вам на работу какого-нибудь Пупкина, он пишет плохой код. Вы ему делаете замечание. Говорите прочитай то и то, делай так и так. Он делает вид, что ему не все равно. На следующий день опять вы видите тоже самое. Вчера вы потратили 2 часа на написание подробного письма с объяснениями. Сегодня вы еще потратили полчаса на чтение плохого кода и полчаса на ответ. Завтра вы потратите еще час и примете код как есть. В итоге потом все равно прийдется потратить еще 2 часа на исправление его косяков. Итого 6 часов впустую потраченного времени. Или вы в первом же сообщении напишите «не пиши говно, читай это» и отклоните патч. Он обидится, поноет, поймет, что с ним никто не нянчится и сделает, как надо. В итоге будет сэкономлено 4 часа вашего времени, которое стоит гораздо дороже.
Я не призываю материть направо и налево, но иногда стоит употреблять крепкое словцо, если ситуация того требует.
Falstaff
31.12.2017 00:52+2Ну так код матом покрыть — это одно, а человека — другое. Линус как раз не стесняется людей г-ном называть, мне кажется, что это перебор. И я лично считаю, что если бы не распределённый стиль разработки, то он бы уже схлопотал от коллег по лицу, если бы он им всё это лично говорил.
MinimumLaw
29.12.2017 19:00+5Грег умница. Желаем ему здоровья и сил. Любой, кто писал свой драйвер или другую часть ядра это прекрасно понимает. Столько терпения, столько важных подсказок. Одним словом, по мне без него дело бы либо совсем не шло, либо шло из рук вон плохо. А что до Линуса и его стиля общения — да ладно, стерпим. А так получается классика «хороший полицейский» Грег и «плохой полицейский» Линус. Хотя, конечно, в каждом конкретном случае это не очень приятно. Но заполучить ответ непосредственно от Линуса — это надо постараться. Или обладать изрядным везением. Так что ничего страшного.
timelle
29.12.2017 22:36Вероятно, так Линус поддерживает дух новаторства, независимости и свободы. Противовоставляет Linux (как проект) другим проектам с корпоративной культурой.
Эдакая гаражная романтика стартапа.
«Парни, зачанчивайте этот буллшит», — скажет Линус в ситуации где другие проекты будут ходить вокруг да около и конфликты будут лишь назревать и ждать своего выхода. Однако, если Линус скажет что-то вроде «Автор, ты — олень! Так пишут только (слово_по_вкусу)», то это уже оскорбление. Другое дело, что многие воспримут неуместным даже первый вариант.
Ну а Грег, видимо, читал книжки Бенджамина Франклина.
keydon2
29.12.2017 23:43У нас в компании самый опытный и крутой сотрудник при первой возможности не стесняется покрывать отборным лексиконом(без мата, но намного страшнее и доходчивее большинства сапожников) тех, кто допускает примитивные(по его мнению) ошибки. Как бонус — к нему приходят только когда по другому совсем никак, а уходят преисполненные мудростью и самокритикой.
jcmvbkbc
30.12.2017 04:40Склоки продолжались какое-то время, а затем участники проекта договорились о том, что нужен некий общий свод правил хорошего тона, что и было документально зафиксировано в /usr/src/linux/Documentation/CodingStyle
CodeOfConflict, CodingStyle — это другое.
ViktorZ
30.12.2017 09:50+1Просто надо принять человека таким какой он есть и для себя решить можете ли вы лично с ним работать. Если убрать эмоции и оставить лишь суть, то ее и следует оценивать.
evocatus
30.12.2017 13:08+2то, что Линус высказал Мэтью по поводу патчей, которые должны были обеспечить загрузку Linux на рабочих станциях, изготовленных под Windows 8+ и использующих UEFI с технологией SecureBoot.
Неправда. Загрузка уже была обеспечена загрузчиком, который разработали в RedHat и который был подписан Microsoft.
То, что предложил этот Мэтью (хотя я так понимаю, что это не его лично идея)… чтобы разработчики проприетарных драйверов (NVidia, AMD,...) подписывали код у Microsoft (которая не проверяет код, а только его расово чистое происхождение из большой корпорации), а чтобы ядро Linux потом доверяло этим драйверам, потому что они подписаны ключом, который добавлен в UEFI (от Microsoft, который в каждом компьютере). Но Microsoft подписывает ключи только в своём собственном PE формате, и вот этот Мэтью предложил пулл-реквест с поддержкой этого формата.
(этот комментарий является вольным пересказом второго комментария за авторством pavon к этой статье)
resurrection
30.12.2017 17:12Приведенная ниже таблица использования ненормативной лексики английского языка думаю не нуждается в комментариях.
- god
- damn
- screw
т.е. бог и болт (винт/шуруп) — это уже ненормативная лексика? нет, ну «черт» — еще куда ни шло, вдруг оскорбляет чувства верующих.hdfan2
30.12.2017 17:38Это всё ещё можно к ругательствам отнести (особенно screw). Но у меня есть некоторые сомнения относительно anal. Дело в том, что это слово переводится не только очевидным образом, но ещё и как «дотошный», «занудный» (можно сказать, «доё#истый» по-нашему). Т.е. выражение «You're so anal about that» отнюдь не значит, что кого-то называют задницей — это правильней перевести как «Ты такой дотошный/занудный в этом плане/в этом отношении». Не очень приятно, но это не ругательство. Впрочем, не знаю, в каком плане использует это слово Линус.
Nekto_Habr
Вообще, считаю мат признаком непрофессионализма. Исключений не встречал за 9 лет работы в такой «общительной» сфере, как дизайн (таки болтовня в этом деле — не менее половины успеха). Так что опыт в чём-то показателен: мат сразу указывал на некомпетентного или вовсе тупого человека. Речь про деловое общение: клиенты, руководство; коллеги — исключение, т.к. часто сдруживаюсь с ними.
Сам всегда на «вы» и стараюсь говорить максимально интеллигентно (не вычурно, но колхозный базар считаю хуже мата).
Тем не менее мат я просто обожаю и постоянно совершенствуюсь в этом без сомнения крайне интересном искусстве говорить. Если б клиенты слышали, как я их крою за кулисами, — уши бы в трубочку свернулись; дам фору пьяному сапожнику :) И, несмотря на скудность английского мата, его тоже очень люблю; он всегда заставляет меня улыбаться :))
Но в правилах всегда есть исключения, и Линус наверняка профессионал своего дела, так что пущай матюкается :)))
unabl4
Скудность английского сквернословия (и языка, если на то пошло) — не более, чем заблуждение. Особенно в британском английском
Nekto_Habr
Да ну ладно, иметь личное мнение не запрещено :) Жил я в США несколько лет, например. Наслушался. Русский круче. Британский интереснее американского, но по жизни витиевато и творчески мало кто матерится. В России же кладезь таких ораторов, что нужно ходить за ними и записывать, причём в самых разных слоях населения. Всё, разумеется, ИМХО :)
StjarnornasFred
Из 13 приведённых образцов «ненормативной лексики», собственно, ненормативными являются всего 7 слов (и то весьма посредственных). Hell, god, damn — вовсе не ругательства (с каких пор бог и чёрт стали ненормативными?) Anal — на грани научной терминологии, в некотором смысле ругательство, но всё же. Retard — лёгкое оскорбление («болван», «двинутый», «поехавший»), ничего ненормативного, основное значение — тормоз. Screw — эвфемизм («болт»). Скудость английского сквернословия достаточно очевидна.
alex-pat
Артемий Лебедев смотрит на вас с негодованием.
Nekto_Habr
За что минусы, интересно.
Ну Лебедев матюкается тут и там, но матюкается ли он в общении с клиентами и подчиненными? Если это вообще показательный персонаж. Линус вон матюкается. Лебедев матюкается. Но это не повод каждому равнятся на таких персонажей в плане свободы словесности :)
AntonAlekseevich
Хоть мне мат не приятен, но я считаю, что его нужно просто уметь им высказываться в то время когда и в том месте где это нужно, но не считаю что это как признак непрофессионализма.
Мат чаще встречается у производственников и вояк. (это необходимо для того чтобы быстро и четко указать что нужно сделать немедленно)
В сфере дизайна(да и вообще там где нужно много болтать) согласен мат вреден.
Я сам стараюсь на "вы" и это по большей части это плохо. (в кругах где можно общаться на "ты" сложнее перестроиться(я испытал это на себе и не раз), вы становитесь "публичным"(имеется ввиду, что людям кажется что без вас никуда и никак))
P.S. Если я не прав, поправьте, пожалуйста.
AntonAlekseevich
Пишу сложно, прошу прощения.