Свободный проект по разработке контейнерной технологии Docker, число участников которого за прошедший год выросло в четыре раза, оформляется в новую структуру, рассчитанную на условия ускоренного роста. Реорганизация, сам план которой был проработан в сообществе, предусматривает усиление открытости и доступности проекта Docker и значительное расширение его масштабов без ущерба для его базовых качеств, таких как быстрота реакции и хорошие коммуникации.
Чтобы достичь этих целей, бразды правления передаются в руки триумвирата из главного архитектора, главного смотрителя и главного оператора: соответственно основателя и технологического директора Docker Соломона Хайкса, создателя ключевой части проекта, libcontainer, Майкла Кросби и бывшего главного консультанта разработчиков MongoDB Стива Франсиа.
«Соломон собирается продолжать развивать концепцию проекта и планировать его архитектуру. Майкл должен следить за техническим качеством проекта — у него роль куратора. Он уже был кем-то вроде смотрителя, но как главный смотритель будет отвечать за всё, — рассказал Франсиа, присоединившийся к Docker в конце прошлого года. — Моя работа — руководить всем остальным. Это, в частности, забота об улучшении документации, о расширении сообщества, о развитии связей внутри сообщества, то есть практически всё, что вращается вокруг проекта».
Автоматизируя создание и развертывание приложений в контейнерах (облегченная форма виртуализации), Docker призван освободить разработчиков от программных и инфраструктурных зависимостей, снизить затраты и повысить эффективность процесса разработки.
Помимо повседневных операций Франсиа выполняет роль менеджера релизов и работает с экспертной комиссией Docker Governance Advisory Board (DGAB). По его словам, время реакции в проекте Docker — в смысле коммуникативности сообщества — сегодня одно из наилучших в истории Open Source, и надо стараться это качество сохранять.
«Соломон — один из главных вкладчиков в проект. Он с самого начала был архитектором и в то же время был вовлечен в работу по множеству разных направлений, — продолжает Франсиа. — По мере разрастания команды время реакции естественно будет замедляться, и нам надо пытаться удерживать планку на прежней высоте, что при наших масштабах вещь беспрецедентная».
Потратив три года на формирование сообщества для свободной NoSQL-СУБД MongoDB, Франсиа также создал популярный движок веб-сайтов Hugo, основанный на Go. «В Mongo мы испытывали аналогичный быстрый рост, но Docker в реальности растет быстрее. Если проводить параллели с чем-то похожим в истории, то напрашивается сравнение именно с MongoDB, который до Docker был самым быстрорастущим из известных мне проектов с открытым исходным кодом, — говорит Франсиа. — Сегодня же Docker растет почти вдвое более высокими темпами. Он вырос буквально прямо на глазах. С этим связано много проблем. Работая в Mongo, я чувствовал, что можно будет написать книгу об этом по окончании работы. Mongo прошел этот путь раньше, и мы определенно кое-что используем из опыта этого проекта».
Число участников, вносящих вклад в проект Docker, сегодня составляет чуть менее 740. В 2014 г. в проекте было обработано свыше пяти тысяч запросов на включение изменений, половина которых поступила от лиц, не работающих на компанию Docker. По информации компании, этот проект к настоящему времени сгенерировал более 20 тыс. проектов, включая варианты ГИП, фреймворки управления и средства мониторинга, и больше 85 тыс. адаптированных для Docker приложений.
По словам Франсиа, проект остается сфокусированным на сообществах разработчиков и DevOps.
«Моя философия всегда заключалась в том, что если вы сумеете внедрить правильную практику работы, то люди будут довольны и с интересом будут заниматься своим делом. Я хочу, чтобы люди чувствовали, что им рады и что им оказывается поддержка, — сказал Франсиа. — Вытащить себя из привычного круга дел и заняться большим проектом на относительно новом языке — это личное решение человека. Поэтому нужно делать так, чтобы людям было комфортно, и оказывать им необходимую поддержку и помощь. Во многих проектах говорят „нет“ большому числу участников. Мы ставим вопрос по-другому — что необходимо, чтобы сказать „да“. То же самое и на уровне пользователей. Когда люди впервые знакомятся с Docker и пытаются это использовать, я хочу, чтобы это производило на них глубокое впечатление. Это моя точка отсчета, под которую я подвожу свою работу».