Точка зрения / июнь 2020
Цифровой суверенитет на Java

Александр
Белокрылов

генеральный директор BellSoft
© ComNews
11.06.2020

Накануне конференции "Открытый код – открытый космос", которая должна продемонстрировать наличие в России полного стека открытых технологий для построения ИТ-систем, генеральный директор компании-организатора BellSoft Александр Белокрылов дал интервью главному редактору ComNews Леониду Конику. Глава BellSoft впервые рассказал об истории создания компании, оценил результаты вывода корпорацией Oracle разработки Java из России, а также высказал оценку того, что в OpenJDK на данный момент существует около 20 тыс. открытых дефектов.

В 2017 г. Oracle вывела из центра разработки в Санкт-Петербурге тематику Java, хотя она была одной из ключевых в этом центре. С чем был связан тот шаг Oracle и что приобрела/потеряла Oracle Corp. в результате этого действия?

Технологии Java только что исполнилось 25 лет ("серебряная" дата отмечалась 23 мая 2020 г., с привязкой к моменту первой презентации Java компанией Sun Microsystemsприм. ComNews), и за это время произошло много событий. Java – это технология №1 по популярности, широко используемая в самых разных областях. Этот проект, который зародился в лаборатории Sun Microsystems под кодовым названием Oak, имел целью сделать платформу, которая могла бы быть использована для устройств с разной "железной" начинкой.

Далее почти на протяжении десятилетия Java уверенно набирала популярность и в 2004 году произошел выпуск Java 1.5, включавшей фундаментальные изменения, без которых Java сейчас немыслима. Следующее эпохальное событие - покупка в 2010 году корпорацией Oracle компании Sun Microsystems и переход Java под крыло "красного гиганта". И уже в Oracle были выпущены и Java 7, и Java 8 (в марте 2014 года). В марте 2017 года вышла Java 9, которая принесла модульность и в какой-то степени перевернула мир Java. Переход на 9-ю версию требует определенных инвестиций: как правило, без переработки приложения не мигрируют с 8-ой на 9-ю и более старшие версии. В 2018 году было объявлено об изменении частоты выпуска релизов с января 2019 года, и мы сейчас находимся в этом новом мире Java.

Сложно сказать, почему в Oracle решили тематику Java перевести из центра разработки в Петербурге - это их дело. Я могу сказать, что очень рад появлению компании BellSoft в 2017 году. Три года назад российский рынок получил, во-первых, экспертизу - мировую инженерную, которая разрабатывалась формировалась годами в глобальной компании, и, во-вторых, - отечественную среду исполнения Java - Liberica JDK, которая поддерживается российской компанией и использует лучшие мировые практики, очень хорошо встроена в мировое профессиональное сообщество, при этом сохраняя цифровой суверенитет. Потому что вся разработка Liberica JDK ведется в России, в Санкт-Петербурге.

Я правильно понимаю, что появление компании BellSoft и уход разработки Java из России - это связанные события?

На самом деле, Java из России не уходила и никогда, думаю, не уйдет. У нас на рынке огромная экспертиза, и Java-разработчик - очень востребованная профессия. И мы рады, что BellSoft способствует развитию российского рынка.

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

Кто именно создал компанию, и что значит ее название?

Компания была создана Григорием Лабзовским и Александром Белокрыловым. Название BellSoft было выбрано как отсылка к лабораториям Белла. Bell Labs - это компания, в которой был создан первый транзистор, первая версия UNIX, эпохальные языки программирования С/С++. Но, как мы увидели впоследствии, на российском рынке такая ассоциация мало у кого возникает, и первый вопрос, который нам задают, - о наших связях с Белоруссией. Но на мировом рынке такой отсылки не возникает, и BellSoft ассоциируется исключительно с Bell Labs.

Каковы позиции BellSoft на глобальном рынке Java?

Вообще мы стартовали довольно активно, и уже в конце 2018 года компания BellSoft стала одним из видимых лидеров проекта OpenJDK. Мы вошли в Топ-5 самых активных контрибьюторов вместе с гигантами мирового рынка, естественно, с Oracle, которая делает около 75% всей работы над Java, SAP, Google и Red Hat. И я бы позиционировал нас в числе мировых лидеров, разрабатывающих проект OpenJDK.

У нас несколько десятков клиентов, но это большие компании, ИТ-лидеры, в том числе такая известная компания как JetBrains. В России одним из крупных пользователей является Альфа-Банк. Начало 2020 года было очень продуктивным, и сейчас мы готовим анонсы о нашем коммерческом партнерстве с двумя крупными ИТ-компаниями как в США, так и в России. Думаю, что в течение ближайших недель эти анонсы станут публичными.

Если говорить о мировом рынке Java, Java-поддержки, Java вообще, то аналитики оценивают этот его в $2,5 млрд в год, и в наших планах – "отъесть" от этого рынка существенную часть. Думаю, как раз в размере вклада, который компания вносит в OpenJDK.

Oracle, конечно, контролирует огромную долю пользователей Java. Но есть очень существенная часть клиентов, которые еще не определились: они продолжают использовать небезопасную версию Java, которая была публично выпущена Oracle год назад. Они не понимают, что им теперь делать и куда идти - может, в Oracle, а может быть, есть какие-то альтернативы.

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

Кто ваши основные конкуренты - на глобальном и на российском рынке?

Я бы не называл эти компании конкурентами. Да, конечно, мы в какой-то степени конкурируем за клиентов. Но работа с проектами с открытым исходным кодом – это очень интересный рынок, когда все вместе занимаются разработкой продукта, и каждый находит какую-то особенность, какую-то нишу, которую он поддерживает и которой дает свою уникальную пользу. Java везде одинакова, но каждая компания на этом рынке делает что-то свое, что-то интересное, что-то, что нужно именно ее клиентам. И здесь сложно говорить о конкурентах, потому что одновременно они и конкуренты, и партнеры в разработке OpenJDK.

Главным конкурентом для нас я считаю альтернативные технологии, потому что перемены, которые произошли в Java, перевернули рынок. Сейчас пыль немного улеглась, в головах у разработчиков и у инженеров уже есть понимание того, что ничего не разрушилось, экосистема продолжает существовать и развиваться. Ускорился выпуск релизов: если раньше релиз Java выпускался в лучшем случае раз в три года, то теперь он выходит каждые полгода гарантированно - в марте и в сентябре мы имеем новую версию Java.

Этот переход к ускорению выпуска релизов привел к тому, что Java эволюционирует гораздо быстрее, чем раньше, быстрее происходит апробирование новых подходов, новых решений. Я бы сказал, что Java стала динамичной. Но конкурирующие технологии, зачастую, выглядят проще, для работы с ними нужны менее квалифицированные инженеры, вход в эти технологии происходит быстрее. Поэтому именно альтернативные технологии – главные конкуренты Java. И для нас это потенциальный риск изменения объема рынка. За поддержку обычно платят крупные корпорации, которым нужен определенный уровень безопасности, надежности, SLA, чтобы был кто-то, кто может прийти на помощь в сложной ситуации. И это как раз то, что BellSoft может предложить.

Вы долго проработали в Oracle. Что самое главное, чему вы научились, что вы вынесли в хорошем смысле слова из Oracle за годы работы там?

Есть три важных вещи, которым мы научились у Oracle и которые применяем в компании BellSoft. Во-первых, это техническая экспертиза. OpenJDK - это огромный продукт, его кодовая база создается уже 25 лет. Чтобы войти в этот проект просто инженером, в Oracle сотрудник садился и год просто разбирался, что к чему, выполняя простые задачи. Создавать с нуля компанию, которая занимается разработкой OpenJDK, могут себе позволить только очень успешные корпорации. Нам же было просто, у нас уже был инженерный костяк, ставший основой BellSoft. Наша команда небольшая, но у нее за плечами почти 200 человеко-лет разработки Java и OpenJDK!

Во-вторых, мы хорошо известны и видимы в экосистеме Java: мы создали и поддерживаем тесные связи с сообществом, юзер-группами (JUG), с командой Oracle, организаторами конференций. Мы знаем их, они знают нас, и здесь работают дружеские отношения. Мы участвуем в международных и российских конференциях, и к нам есть определенное доверие – в отличие от людей, пришедших со стороны.

И третье: мы поняли, что можем быть гораздо гибче, мобильнее, можем делать более кастомизированные решения. Мы способны расширять предложения дополнительными сервисами, если клиентам это нужно (например, помочь мигрировать с Java 8.0 на 11-ую версию).

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

В декабре 2019 г. Liberica JDK вошла в список допустимых сред функционирования КриптоПро JCP 2.0 R3, получившей сертификат ФСБ РФ на средство криптографической защиты информации. Какие возможности это открывает перед BellSoft и какие сложности были на этом пути?

В России эта сфера деятельности очень хорошо отрегулирована. Российские пользователи получили верифицированную среду исполнения OpenJDK со средством шифрования, которое позволяет использовать алгоритм шифрования по ГОСТу.

Но это маленький шаг на большом пути. Liberica JDK, среда исполнения Java разработки BellSoft, входит в реестр российского ПО и является единственным рекомендованным отечественным софтом в категории "Среда разработки и связующее ПО". Российская среда исполнения Java допущена ФСБ для использования с сертифицированными криптографическими средствами. Мы сейчас занимаемся сертификацией Liberica JDK во ФСТЭК. Это даст нам возможность лучше интегрироваться с другими решениями для использования в госсекторе. Также мы активны в направлении тестирования нашего продукта с платформами, на которых он будет работать. Мы формируем полный стек открытых технологий для построения ИТ-систем с соблюдением цифрового суверенитета России. Все делается для того, чтобы конечным пользователям было проще принять решение, будучи уверенными в совместимости продуктов и в том, что им не потребуется прилагать сверх-усилия, чтобы получить аттестацию готовых решений у регуляторов (там, где это требуется).

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

Очень часто мы видим использование компонентов Java российскими государственными органами и компаниями. Однако после анализа госзакупок мы сделали вывод, что ни одна из крупных частных и госкомпаний, ни один орган государственной власти не покупали техническую поддержку Java, которая давала бы им возможность получать доступ к своевременным обновлениям. А Java, как любое системообразующее программное обеспечение, требует регулярного обновления. Обновления Oracle Java SE выходят один раз в квартал, и еще иногда бывают какие-то критические обновления. И синхронно с обновлениями Oracle мы выпускаем обновления Libeirca JDK.

Пренебрежение "ИТ-гигиеной", как я люблю говорить, может привести к нежелательным последствиям: нарушению функционирования систем, компрометации данных, утечкам корпоративных и персональных данных. Поэтому мы проводим большую работу по просвещению ИТ-директоров, директоров по безопасности, в том, что Java - это такая же сложная система, как операционная система, со своими проблемами и решениями. Часто говорят: "Ну вот, Java, там все работает и работает хорошо". Это на первый взгляд, но если посмотреть глубже, то мало кто из пользователей понимает, откуда берется и кем производится дистрибутив Java, который используется в его компании. Это напоминает ситуацию покупки мяса с рук у незнакомых лиц возле метро. Мы мясо купили, съели - вроде бы все нормально. Один раз это мы сделали, два, три, а потом что-то произошло, уже непоправимое. Поэтому мы так обычно не делаем, а идем в магазин и покупаем продукты, которые прошли контроль санэпидемнадзора и знаем, откуда они появились. Это дает определенную гарантию. Почему то же самое мы не делаем с информационными средствами и ИТ-продуктами c открытым исходным кодом? А ведь последствия здесь могут быть гораздо хуже.

Начиная с 11 версии, использовать Oracle JDK бесплатно можно лишь в тестовых средах и средах разработки. Для применения в продуктивных средах необходима коммерческая подписка. К каким последствиям на рынке это приведет на ваш взгляд, и вообще - не стало ли это новшество сигналом тревоги для всего Java-сообщества и главное - для круга клиентов?

Какого-то мгновенного эффекта это не дало и не даст, потому что на Java работают очень крупные системы, которые разрабатываются годами и десятилетиями. И просто так взять и выбросить все наработки просто невозможно, ведь это - огромные инвестиции. В том, что Oracle решила монетизировать то, что делалось годами и просто так отдавалось сообществу, нет ничего зазорного. При этом Oracle делает сборки на ресурсе OpenJDK, на ресурсе Java.net, сборки эти делаются для текущих версий Java. То есть сейчас, скажем, можно скачать 14-ю версию Java. Это будет полноценная среда выполнения Java (runtime) от Oracle, и лицензионных ограничений на эти сборки нет, но и дополнительных гарантий Oracle не дает. По сути Oracle подтолкнула других участников экосистемы к тому, чтобы они тоже инвестировали в разработку.

В OpenJDK есть немалое количество дефектов - открытых, все о них знают. Java и OpenJDK - система очень надежная, и эти дефекты проявляются крайне редко. Но все-таки иногда проявляются. И зачастую в новых версиях эти дефекты уже исправлены. Компании, которые поставляют версии с долговременной поддержкой, берут эти исправления из текущей версии, и портируют, то есть переносят эти обновления в предыдущие, и отдают клиентам дистрибутивы с исправлениями. Именно так поступает компания Oracle. И точно так же поступает компания BellSoft. Это то, что необходимо для критически важных, в том числе государственных информационных систем, так как позволяет поддерживать старые версии в безопасном состоянии. Для работы над обновлениями безопасности в OpenJDK существует закрытая группа, в рамках которой активные участники проекта создают патчи, и обмениваются данными об обнаруженных уязвимостях и их исправлениях. И мы входим в этот закрытый клуб, что позволяет выпускать обновления Liberica JDK синхронно с обновлениями Oracle Java.

Вы уже упомянули дефекты в Open JDK. В прессе встречается цифра: в OpenJDK на данный момент около 20 тыс. открытых дефектов. Означает ли это, что использование открытого ПО в принципе является опасным и рискованным, и лучше переходить на проприетарные продукты?

В этом как раз и проявляется огромное преимущество продуктов с открытым исходным кодом. Мы знаем о том, что эти дефекты есть, а о том, что есть в проприетарном ПО, знает только его создатель, и он никому никогда ничего не расскажет. А зная о том или ином дефекте, разработчики легко могут оценить критичность найденного дефекта для пользователей и исправить (хотя часто они незначительны и проявляются редко). Но если компания использует высоконагруженные приложения, какие-то нестандартные паттерны, сложные конструкции и подходы, она может "наступить" на один из таких дефектов c большой вероятностью. Именно для этого существует компания, осуществляющая техническую поддержку, - например, BellSoft.

В завершение интервью - дежурный вопрос о планах компании BellSoft на ближайшие два-три года.

За три года на рынке мы понимаем, куда нам двигаться. Во-первых, мы расширяем продуктовую линейку. Мы уже поставляем ограниченному количеству клиентов LiberCat - сервер приложений, основанный на Apache TomCat. Он предоставляется в формате веб-сервера (TomCat) и сервера приложений в спецификации Java EE (TomEE), являясь российским аналогом таких решений, как Oracle WebLogic, IBM WebSphere и т.д. Это важно для перехода российского рынка на отечественное поддерживаемое ПО.

Еще один продукт, который мы вскоре представим – runtime-контейнер. Мы разрабатываем самый маленький контейнер с полноценным JDK на базе Alpine Linux c Liberiсa JDK, которую мы оптимизировали под требования микросервисных архитектур.

Это планы по продуктовому направлению. Также мы расширяем партнерскую сеть, как в России, так и за ее пределами. В апреле 2020 года мы запустили партнерскую программу. "КРОК" уже является нашим "золотым" партнером, а целый ряд компаний подали заявки на партнерский статус. Партнерская сеть создает выгодные условия для ИТ-организаций, дает возможность клиентам получить качественную среду исполнения Java, в которой гарантирована безопасность и соблюден цифровой суверенитет. С точки зрения международного охвата Lliberica JDK представлена на рынке Северной Америки - США и Канады. Мы активно работаем с европейским рынком, а в перспективе двух лет мы намерены выйти на рынок Южной Америки (для BellSoft наиболее интересны Бразилия и Аргентина).

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

Так, 19 июня 2020 года мы впервые проведем онлайн-конференцию, на которой покажем, что в России существует полный стек открытых технологий для построения ИТ-систем с соблюдением цифрового суверенитета. В этой конференции, кроме BellSoft, примут участие руководители компаний, которые производят составляющие этого стека: AltLinux, Haulmont, Postgres Professional, а также другие заметные игроки российской ИТ-индустрии, в том числе евангелист открытого кода, ныне руководящий центром разработки Huawei в России. ФГУП "НИИ Восход" расскажет о том, как на базе всего этого стека они создают информационные системы масштаба государства. Название конференции символично: "Открытый код – открытый космос". Мы хотим привлечь внимание к тому, как сделать решения на базе ПО с открытым кодом безопасными и надежными