Некоторые скептически высказываются насчет ГитЛаба — мол вот вы перестанете поддерживать бесплатный Community Edition(CE), и что мы будем делать? Не перестанем. Публикуем для вас перевод статьи на эту тему.




Недавно мы зафиксировали нашу политику в отношении поддержки ПО с открытым кодом (open source) и нашу преданность этому методу разработки. Коротко нашу политику можно описать так: нужно принимать решения в интересах проекта, при этом не забывая о бизнесе, который этот проект поддерживает. В этой статье я хочу поделиться с вами соображениями о некоторых правилах в нашей политике.



Сложности управления open source проектом


Маттиас Штюрмер (Matthias Sturmer) с сайта Opensource.com определил четыре типа open source сообществ:


  1. Проекты с единым куратором (single-vendor projects)
  2. Сообщества разработчиков (development communities)
  3. Сообщества пользователей (user communities)
  4. Центры взаимодействия (open source competence centers)

Последние три типа характеризуются распределенными процессами разработки. В некоторых случаях разработка координируется некоммерческими организациями, возникшими на базе сообщества, но, в любом случае, у сообщества такого типа нет какого-то одного источника финансирования. Примерами таких сообществ являются Apache, Rails и Linux.


Напротив, первый тип, «проекты с единым куратором» характеризуется финансовой поддержкой конкретной коммерческой организации, которая контролирует направление развития проекта и финансирует большинство основных разработчиков. Примерами сообществ такого типа являются Wordpress и Automattic; Hadoop и Cloudera; Elasticsearch и Elastic.


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


Для нас open source — это набор этических обязательств, а не просто лицензия


Open source появился как следствие движения Free Software. Когда термин ‘open source’ зародился в конце 90х, с его помощью подчеркивался тот факт, что исходный код можно было просмотреть и даже модифицировать. Также с помощью этого термина удалось избавиться от сравнений с пивом (“free as in beer”), которые намекали на низкое качество продукта. В то же время, введение термина open source заложило фундамент для финансирования таких проектов коммерческими организациями. С 1998 года open source стал стандартом де-факто, показателем качества и гарантией того, что проект не будет монополизирован куратором (vendor lock-in).


Однако у введения термина ‘open source’ был и обратный эффект — утратили силу активистские корни движения Free Software (“free as in freedom”). В основе движения open source лежит коллаборация, для которой требуется взаимное доверие. Когда коммерческие компании, осуществляющие поддержку open source проектов, пренебрегают этими принципами, взаимное доверие теряется, а без него вся концепция open source перестает работать.


Любая компания, которая делает код открытым в погоне за конкурентными преимуществами, должна учитывать этические вопросы, которые немедленно возникнут при этом. Open source это не просто тип лицензии, а еще и набор этических обязательств. Наша компания взяла на себя эти обязательства, сформулировав политику хорошего управляющего open source проектом.


Что значит быть хорошим управляющим open source проекта?


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


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


  • Прозрачный процесс принятия решений по направлению развития проекта.
  • Участие компании в открытых каналах коммуникации.
  • Забота об интересах компании в ущерб интересам проекта.

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


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


К примеру, наша опытная команда продажников поделилась с нами своими бедами: «Почему ПО должно быть бесплатным для абсолютно всех пользователей? Почему пользователи, которые работают с командами из более чем 10000 разработчиков, не платят нам ни копейки?» Ведь при продаже интеллектуальной собственности можно устанавливать лимит на бесплатное использование. Продажники спрашивают: «Почему бы не установить лимит на количество пользователей в бесплатной версии? Пока у вас меньше 1000 разработчиков, вы можете пользоваться Community Edition, но для более крупной команды вам придется купить enterprise edition.» С экономической точки зрения такое решение оправдано, но в контексте open source оно теряет всякий смысл.


Open source — это не условно-бесплатная модель, где мы можем закрыть доступ к продукту через 30 дней. Продукт бесплатен целиком и полностью. Навсегда.


Мы не единственная компания, столкнувшаяся с такими проблемами. Год назад Адам Джейкоб (Adam Jacob) из Chef сказал: «Мы пытаемся понять, какую функциональность нужно включать в различные пакеты услуг, и как найти баланс между нашим стремлением к ведению успешного бизнеса и нашей искреннюю верой в то, что open source является будущим инфраструктуры.» Это было год назад, с тех пор Chef заметно продвинулись как управляющие своего проекта.


Нейтен Харви (Nathen Harvey), ныне вице-президент по развитию сообщества (VP of Community Development) Chef в своем интервью на эту тему сказал следующее: «На пересечении open source и коммерческих интересов поднимаются вопросы полномочий, аутентичности и культуры.» Что окажется важнее — коммерческие интересы или развитие проекта? Это очень важный вопрос, над ответом на который должны задуматься в любом open source проекте с единым куратором. Нейтен приводит свой главный принцип по этому вопросу: «прозрачность важнее всего» — мы с ним полностью в этом согласны.


В чем заключается наша политика?


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


  • Открытая разработка. Вы можете отправлять тикеты в публичный трекер, это не read-only интерфейс.
  • Открытое ведение бизнеса. Политики и основные правила по ведению нашего бизнеса открыты для всех желающих.
  • Четкая стратегия развития. В нашем документе «Стратегия» (Direction) содержатся текущие приоритеты развития проекта, а также приблизительное содержание будущих релизов.

Такой уровень прозрачности является небывалым для ПО с закрытым кодом, редким для open source проектов с единым куратором и нетипичным даже среди других платформ управления репозиториями (неважно, open source или нет). По правде говоря, история управления исходным кодом и работы с сообществом полна намеренного запутывания и историй нарушенного доверия. Мы не хотим повторять этих ошибок и считаем, что для того, чтобы GitLab стал местом для безопасной и открытой совместной разработки, он сам обязан быть open source платформой.


В нашей политике мы обращаем внимание на все те вещи, которые мы обещали не делать. Мы четко обрисовали разницу между GitLab CE (Community Edition) и EE (Enterprise Edition), и мы учитываем требования сообщества четко указывая все наши обязательства.


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


Пожалуйста, прочитайте «Принципы управления GitLab CE».


Перевод с английского выполнен переводческой артелью «Надмозг и партнеры», http://nadmosq.ru, главный переводчик — sgnl_05

Поделиться с друзьями
-->

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


  1. trueneu
    01.11.2016 14:20

    'Free as in beer' значит 'бесплатно, но не открыто', и говорит не о free software, не об open source, а о freeware. И тем более, никаких намеков на низкое качество здесь нет.


  1. QuAzI
    01.11.2016 14:20

    Как-то недавно был наткнулся на ваш Scope в https://about.gitlab.com/direction/
    Отличный готовый план по захвату мира ведению проекта от корки до корки для новичков. Очень годный. Но хочется больше деталей по каждому пункту. Несмотря на обилие открытых проектов и прочего, как-то не видел толкового описания лучших практик по ведению проектов (от формирования беклога до деплоя и документооборота с заказчикам), с приведением инструментов и обоснованием, почему этот тул, а не другой. В итоге кого ни спросишь, у всех зоопарк — документация оторвана от проекта, бегрепорты от исходников, списки задач льются из всех мест (почта, чаты, социалки и прочие современные источники шума)… короче печаль и ужас.


    1. nem
      01.11.2016 14:23

      Деталей в direction не будет, на то он и direction. Решение что конкретно делать в обозначенном направлении в следующем месяце принимается после очередного релиза. Планировать заранее — тратить время без толку. Поменяется и ситуация вокруг, и видение.