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

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

Бездумно опираться на поступающие из Интернета обновления опенсорсных частей коммерческого решения значит находиться в постоянном риске. Представьте, что пара органов вашего организма доступна вам дистанционно, и вы точно не знаете, что с ними происходит. Так и с СПО – любое поступление обновлений должно контролироваться весьма серьёзным образом. Это подразумевает детально проработанную и строго поддерживаемую архитектуру тестирования решения в целом и его компонент по отдельности. Мысль кажется очевидной, но по факту далеко не все проекты могут похвастаться хотя бы 50% покрытия кода тестами.

Глубина использования СПО в финальном продукте бывает очень разной. Практически весь софт на планете использует какой-то кусочек СПО. Например, библиотеки компилятора Си, как правило, открыты и их использует любая программа. Открыт огромный объём кода в экосистеме Java, и так далее. Есть множество небольших СПО-библиотек с узкой функциональностью, например, обработка изображений или компрессия/декомпрессия данных. Использование таких вещей почти неотвратимо и больших рисков не несёт. Другое дело, когда СПО-решение является буквально ядром коммерческого продукта. В такой ситуации риски возрастают кратно.

Важно, однако, что организовать отключение от СПО, наверное, сложнее, чем от мирового океана. Что касается проприетарных операционных систем – придётся наращивать темпы отказа от них и перехода на отечественные решения. Ничего нереального в этом плане я не вижу.

Если говорить о государстве, то ещё пару лет тому назад были проведены масштабные и весьма успешные эксперименты по отказу органов государственной власти от Windows в пользу Linux. Практика показала, что главный стоппер – наличие обязательных к применению государственных же прикладных программ, которые существуют только под Windows. Да и то, в большинстве случаев их удалось эксплуатировать под управлением Wine – подсистемы для запуска программ Windows под Linux.

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

Дмитрий Завалишин 

ИСТОЧНИК