Открыты к переменам: какое будущее ожидает российский опенсорс

СМИ о нас Источник: N + 1

До 85 процентов софта в реестре отечественного ПО использует опенсорс. А к 2026 году, по прогнозам аналитиков, 92 процента российских компаний будут использовать программы на базе открытого кода. И хотя в последнее время разработчики из России столкнулись с новыми трудностями, сегмент опенсорса не теряет потенциала. На этот раз мы поговорим о перспективах российского ПО с открытым кодом.

Разделение сообщества

«Опенсорс — это наше все, <...>, наш главный тренд и магистраль», — заявил министр цифрового развития РФ Максут Шадаев, также отметив вклад российского сообщества разработчиков в мировой опенсорс. Опыт отечественной инженерной школы (подробнее об этом читайте в материале «Путь к открытости») действительно во многом обеспечил широкое присутствие российских разработчиков в зарубежных проектах с открытым кодом. При этом внутри страны все еще мало проектов, которые поддерживаются российскими компаниями или независимыми контрибьюторами.

До недавних пор программисты из России были слабо вовлечены в локальный сегмент опенсорса, однако постепенно они начинают уделять больше внимания таким проектам. Вопреки идеологии ПО с открытым кодом, глобальное сообщество все чаще отказывается сотрудничать с некоторыми странами. Это приводит к возникновению локальных репозиториев, недоступных разработчикам из других стран, а также региональных аналогов известных мировых проектов. Так, например, на фоне ухода иностранных вендоров и перспективных проектов, таких как Nginx и Clickhouse, идет разговор о создании национального репозитория и национальной операционной системы.

Меняется восприятие опенсорса и в глобальном IT-сообществе. Все больше компаний и отдельных разработчиков видят в нем инструмент коммерческой разработки. Это способствует тому, что разработчики проявляют интерес к существующим локальным проектам или запускают собственные.

«В августе 2023 года компания HashiCorp, разработчик популярной системы управления облачной инфраструктурой, объявила о переходе на лицензию BSL, которая ограничивает использование ее продукта в коммерческих целях. Это важный маркер изменений в мировом ландшафте опенсорса наряду с переходом в 2018 году MongoDB на лицензию SSPL. Прежде всего, это говорит о том, что в облачной модели использования софта классический опенсорс как социальная технология организации совместной и взаимовыгодной разработки в сообществах становится менее эффективным», — отмечает Иван Панченко, сооснователь российского СУБД-разработчика Postgres Professional.

Выгода от открытости

Инженерная культура разработки IT-проектов за рубежом более зрелая, поэтому, чтобы создавать софт, не уступающий по качеству иностранному, российским разработчикам необходимо будет преодолеть отставание. Задел для этого есть. По данным фонда «Сколково», больше половины решений в реестре отечественного ПО написано с использованием открытого кода.

Есть и спрос: в рамках ПМЭФ министр цифрового развития Максут Шадаев объявил, что к 2025 году все госкомпании должны заместить операционные системы, офисные пакеты, системы виртуализации и управления базами данных отечественными аналогами. Из конкуренции за возможность разрабатывать такой софт могут вырасти сильные команды и проекты. А открытый код станет их преимуществом.

Яркий пример — интернет-ресурсы. Около 70 процентов всех веб-серверов построены на опенсорс-проектах Apache HTTP Server и Nginx. Любому сайту требуется «посредник» между аппаратной частью (хранилищем данных) и браузером. Наиболее рациональным выбором на эту роль можно считать именно ПО с открытым кодом. Коллективам разработчиков не нужно создавать продукт с нуля и тратить уйму времени и сил на проработку совместимости с другими проектами. Вместо этого они используют открытый код Apache и Nginx для собственных разработок. А параллельно, находя и исправляя ошибки, повышают надежность и производительность исходного кода.

Увеличение количества контрибьюторов в Apache с 1999 по 2023 год
Apache Software Foundation

Еще один хороший пример — это Ubuntu. Как и множество других ОС с открытым кодом, она построена на ядре Linux. На ней работают серверы государственных учреждений многих стран Европы и крупных международных проектов, например Wikipedia. Созданная на том же ядре мобильная ОС Android популярна среди компаний, которые производят мобильные устройства. Благодаря открытому исходному коду коллективы разработчиков могут выпускать собственные версии и сборки операционной системы под задачи конкретного проекта.

За последние 20 лет опенсорс-комьюнити значительно выросло. Это произошло не в последнюю очередь благодаря возникновению общедоступных платформ для создания репозиториев, таких как Github. Только в 2022 году там появилось 582 тысячи новых пользователей из России.

«В новых реалиях, связанных с уходом зарубежных компаний и разработчиков, а также санкционным давлением на российскую IT-отрасль, роль открытого ПО, действительно, существенно возрастает. Сегодня опенсорс потенциально способен заменить заметную часть ушедшего иностранного ПО. Тенденция справедлива как для разработчиков, активно использующих такие технологии при создании проектов для замены зарубежных аналогов, так и для потенциальных заказчиков или пользователей, ищущих замену решениям, которые уже ушли с российского рынка или потенциально готовы уйти. Стоит помнить — и это многократно повторяли эксперты на разных площадках, — что одного кода мало, нужно еще и умение его поддерживать и развивать локально. Кроме того, еще одним критически важным вопросом становится юридическая чистота разработки, корректное использование и соблюдение требований актуальных лицензий», — отмечает Надежда Кострюкова, и.о. директора АНО «Открытый код».

Пересечение интересов

Ключевое отличие программ с закрытым исходным кодом от опенсорс-проектов заключается в том, что первые поставляются пользователю в скомпилированном виде. Изменять или передавать их третьим лицам нельзя, поскольку они считаются интеллектуальной собственностью разработчика. Это означает, что ответственность за их работоспособность и безопасность несет компания-владелец. Полный контроль позволяет ей оперативно вносить изменения в программы и ускорять процесс разработки.

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

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

«Специфика государственного сектора в усиленном регулировании часто компенсируется особенностью открытого кода, использование которого могут не отражать в документах. Это создает определенные риски, что в государственные системы попадет код, за который никто не отвечает и который может внезапно подвести — например, из-за несовместимости, вскрывшейся при очередном обновлении, или если отсутствует специалист, способный исправить баг, уязвимость и тому подобное. В этом случае государственное регулирование необходимо, чтобы снизить подобные риски. Правильный подход заключается в использовании отечественного ПО (неважно, с открытым или закрытым кодом), а если при его отсутствии выбирается иностранное решение с открытым кодом, оно должно быть учтено, проверено на уязвимости, и кто-то должен нести за него ответственность», — объясняет Иван Панченко, сооснователь российского СУБД-разработчика Postgres Professional.

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

Есть и альтернативный вариант: государственная структура может анализировать код, устранять уязвимости и совершенствовать проекты, чтобы они соответствовали необходимым стандартам, своими силами. На внутреннем рынке Китая встречаются опенсорс-аналоги любого зарубежного ПО и действуют правила, которые регулируют использование такого софта в государственной инфраструктуре. Однако в России такой сценарий едва ли будет реализован в обозримом будущем.

«Важно понимать, что внутренняя емкость российской отрасли кратно меньше китайской по понятным причинам: население, разработчики, пользователи. Это часто звучит как главный скепсис в развитии российского опенсорса. Здесь нужно отметить следующее: заместить абсолютно все за счет только внутреннего рынка не получится», — объясняет Надежда Кострюкова, и.о. директора АНО «Открытый код».

По мнению Надежды Кострюковой, помочь может конструктивное взаимодействие с IT-средами дружественных и нейтральных стран: BRICS, MENA, LATAM и прочих. Обмениваться технологиями нужно в обе стороны: как импортировать решения, которые доказали эффективность и не являются объектами критической инфраструктуры, так и поставлять на экспорт российские разработки.

Weeek — российский аналог Notion и Trello
Weeek

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

«На наш взгляд, государство в соответствии со своими полномочиями может оказать системное влияние на развитие открытого и свободного ПО, в первую очередь через усиление образовательных программ, развитие мер поддержки, развитие вдумчивого и аккуратного регулирования. Все эти направления мы включили в проект Стратегии развития программного обеспечения с открытым кодом в России до 2030 года. Документ был разработан при широком участии экспертного и профессионального сообщества», — отмечает Надежда Кострюкова, и.о. директора АНО «Открытый код».

Насущные проблемы

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

«Раз исходный код публично доступен, то его все могут взять бесплатно. Поэтому вопрос финансирования стоит очень жестко. В реальности множество крупных компаний используют опенсорс и не платят. В итоге люди, которые пишут открытый код, делают это на энтузиазме и со временем теряют интерес, развитие стопорится. И лишь небольшое количество опенсорс-проектов придумали хитрую бизнес-модель, позволяющую закрыть вопрос финансирования», — рассказывает Андрей Ситник, независимый разработчик.

Отсутствие финансовой выгоды приводит не только к выгоранию разработчиков, но и к другим проблемам. Кто будет отвечать за обеспечение безопасности проекта и поддерживать продукт? Как в таких условиях проводить аудит безопасности, выявлять и закрывать уязвимости? Эти и другие вопросы возникают при интеграции опенсорс-продуктов в рабочие процессы. Никто не может точно сказать, не исчезнет ли завтра разработчик, который поддерживает продукт.

«Существуют также проблемы, связанные с необходимостью дополнительных разъяснений и правильным пониманием сути свободных и открытых лицензий. Но все эти трудности, так или иначе, вызваны немногочисленностью и разрозненностью сообщества в России», — отмечает Надежда Кострюкова, и. о. директора АНО «Открытый код».

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

«Если раньше сотрудничество в целом шло достаточно нормально, то теперь практически везде оно либо полностью остановлено, либо идет крайне тяжело. И сегодня наша основная задача — придумать, как заново выстроить взаимодействие с крупными производителями и авторами, чтобы, с одной стороны, были учтены наши интересы, а с другой — чтобы заново интегрировать российских специалистов в международную IT-экосистему», — рассказывает Никита Соболев, независимый разработчик.

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

Сотрудничать, чтобы преуспеть

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

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

«Антироссийские санкции открыли «окно возможностей» для команд и отдельных разработчиков различных продуктов, благодаря которому их компетенции и способности будут расти. Наиболее перспективны направления, в которых мы традиционно сильны: системы виртуализации, СУБД, различные высокопроизводительные системы, в том числе сервера приложений, средства ИБ и многое другое», — отмечает Иван Панченко, сооснователь российского СУБД-разработчика Postgres Professional.

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

«Чем больше этот вклад, чем значимее работа конкретного автора, тем сложнее от него отказаться, отменить его, заблокировать и так далее. Но при этом нам, как игроку на большой арене, нужно понимать, как таких людей удерживать у себя, чем мотивировать, чтобы они не ушли в тот же условный Google, Microsoft или Amazon. К тому же вопрос выращивания контрибьюторов в какой-то момент перерастает в вопрос выращивания управленцев этого ресурса: членов комитетов, начальников этих комитетов и так далее. Я думаю, что нам необходима такая работа, чтобы усиливать наше влияние на технологическую сферу», — делится мнением Никита Соболев, независимый разработчик.

Участники сообщества, опрошенные N + 1 в рамках проекта «Исходный код», сходятся во мнении, что важно избежать изоляционистской риторики. Опенсорс основан на принципе глобального взаимодействия. В долгосрочной перспективе, чтобы будущее этого сегмента в нашей стране было светлым, российские специалисты должны быть представлены не только в локальных командах разработчиков, но и в глобальных комитетах, которые руководят проектами. Тогда, если заметная доля технологий будет разрабатываться отечественными программистами, доля опенсорс-проектов вырастет и внутри страны.

Метки
PostgreSQL
Open Source