Давайте порефлексируем на тему «кто есть кто в мире ПО с открытым исходным кодом». На ум сразу же приходят Гвидо ван Россум (автор Python), Майкл Видениус (MySQL) и Линус Торвальдс (в представлении не нуждается). Эти имена на слуху у каждого айтишника: уважаемые люди, чей вклад в мир опенсорса неопровержим и оценен по достоинству.

А как насчет Роберта Лава, Эбена Моглена или, например, Джоно Бэйкона? Возможно, кто-то из них вам знаком. Однако средний человек в лучшем случае пожмет плечами и отправится гуглить.

Кто все эти люди? Первый — автор Linux in a Nutshell, одной из самых важных книг по Linux. Второй — главный юрисконсульт фонда Свободного ПО. А Бэйкон — один из лидеров сообщества опенсорс разработчиков. Несмотря на то, как много эти люди сделали для open source, их вклад иногда остается за кадром. 

Сколько еще участников open source коммьюнити так и не получили свою долю признания? Поговорим об этом под катом.

Open source строится не только руками разработчиков кода. Сотни и тысячи людей документируют исходники, распространяют их, организуют поддерживающие сообщества. Кто-то создает компании и монетизирует готовый софт. Это тоже серьезный и достойный труд — особенно когда вырученные средства отправляются на поддержку разработки проектов.

Но существует ли способ измерить вклад каждого участника этого глобального коммьюнити? Короткий ответ — со временем это станет возможно. И первые шаги в этом направлении уже предпринимаются.

Измеримость вклада

Работу программиста можно измерить. Разумеется, не при помощи варварского «количество написанных строк» — все-таки речь идет не о софтоклепательных богадельнях. Есть куда более разумные метрики.

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

Конечно же в бизнес-среде под аббревиатурой KPI может скрываться целый плацдарм для злоупотребления. Да-да, Huawei, мы говорим про вас.

Кроме того, есть одна замечательная и оригинальная метрика. Ее придумал Эрик Эллиотт, автор книги Composing Software. Как-то он сказал: «Лучший способ стать в 10 раз более крутым программистом — помочь 5 другим разработчикам стать круче вдвое». Согласитесь, звучит очень в духе идеологии open source!

Эрик Эллиотт
Эрик Эллиотт

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

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

Журнал Nature пишет: «Значительный вклад — организация встреч, разъяснительная работа или выполнение других действий, которые не оставляют видимых следов в коде, — зачастую игнорируется [сообществом]. Многие важные дополнения и улучшения привносятся участниками сообществ ПО с открытым исходным кодом и часто остаются незамеченными».

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

Университет Вермонта объединил усилия с Департаментом ПО с открытым исходным кодом Google в проекте под названием OCEAN, Open Source Ecosystems and Networks, чтобы решить эту проблему. В чем их миссия? Как минимум, создать у общества целостное представление о том, как отдельные люди, небольшие команды и целые организации вместе развивают open source продукты.

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

Так, OCEAN ищет «здоровые» репозитории проектов с открытым исходным кодом, чтобы обеспечить им комплексную поддержку — в виде семинаров, консультаций и подбора добровольцев. OCEAN заботится о том, чтобы важные проекты встали на крыло и, случись что, смогли пережить так называемую «автобусную проблему»: что станет с программой, если её главного разработчика переедет автобус?

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

Примеры «здорового» open source, к которому OCEAN стремится привести подшефные проекты, — Linux Foundation и Apache Foundation. Там всегда есть люди, которым удается организовать программистов, технических писателей и других участников сообщества.

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

Да, это непросто. Сейчас OCEAN находится в зачаточном состоянии, а его перспективы весьма туманны. Может быть, вы хотите присоединиться? Это можно сделать прямо здесь и сейчас.

Если вам до сих пор кажется, что признание заслуг «невидимых» членов сообщества open source — это надуманная цель, вот вам цитата из книги Нади Эгбал:

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

Поиск, поддержка и признание «невидимых» участников open source — это действительно важная и достойная миссия. Разве вам не хотелось бы узнать имена людей, которые помогли создать и улучшить ваш любимый open source софт? Например, Blender, LibreOffice, Audacity, FileZilla и многие другие инструменты, которыми каждый день пользуются миллионы людей. Все, кто причастен к разработке ПО с открытым исходным кодом, кто потратил свои силы и время на реализацию крутых и важных проектов, должны получить свою толику признания — даже если их имена никогда не появятся в репозитории Git.


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

Если у вас был опыт разработки open source ПО или вы активный участник коммьюнити какого-либо продукта, будем рады прочитать ваши истории в комментариях. Хотели бы вы, чтобы о ваших заслугах узнали? А если нет — почему?

Комментарии (8)


  1. ZhilkinSerg
    01.10.2021 01:26
    -1

    Работаю над проектом https://github.com/CleverRaven/Cataclysm-DDA с конца 2016 года (активно с конца 2017 года).

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

    Восхищаюсь знаниями и умениями некоторых других участников проекта. Сам С++ знаю плохо, но благодаря Visual Studio код писать могу - благо есть, где подсмотреть.

    Собственноручно отключил поддержку Lua в проекте. Навечно забанен в https://www.reddit.com/r/cataclysmdda/ (но не из-за отключения поддержки Lua).


    1. Driver86
      03.10.2021 07:24

      За что бан?


      1. ZhilkinSerg
        03.10.2021 12:51

        Озвученные причины здесь:

        https://www.reddit.com/r/cataclysmdda/comments/nd5jep/comment/gycw1ep/

        и вот здесь:

        Note from the moderators:

        You have been repeatedly warned for your antagonistic and generally unhelpful comments - to the point it is causing hardship for other contributors and developers to partake in this community.

        For the sake of communal spirit for C:DDA and lessening the strain on other members of the project's interaction with the "public", you are no longer welcome.


  1. K35
    01.10.2021 12:42
    +3

    Где Столлман?


  1. duke_alba
    02.10.2021 10:33

    Open source уже довольно давно развивается не только в свободное от работы время. Пример тому - криптовалютные проекты. А раз так, то KPI в opensource - это прежде всего про монетизацию, а не про безвестность.


  1. Kirikekeks
    03.10.2021 00:09

    Братские ребята. Минуса на вас нет.


  1. HWman
    03.10.2021 03:34

    Как-то задался вопросом, а как мне попасть в тусовку Open Source, а то вся эта коммерция уже поднадоела, и мне дошло, я уже давно в этой тусовке, с момента публикации моих первых статей на Хабре, например "Электронный «шар судьбы» на ATtiny13":
    https://habr.com/ru/post/241728/

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


  1. ex_ineris
    17.10.2021 14:50

    А где АНК Алексей Кузнецов создатель стека Tcp/ip для Линукса?