27 август 2020
Либертариум Либертариум

Свободное ПО и государство: success stories и suxxess stories

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

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

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

На правах рукописи 

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

BSD (пример успеха)

Наиболее документированным, вероятно, является частичное финансирование разработки свободной ОС BSD исследовательской группой в Университете Калифорнии в Беркли со стороны Агентства перспективных исследований (DARPA) Министерства обороны США, восходящее к началу восьмидесятых годов. Разработка BSD была поддержана системой грантов на поддержку разработки сетевой ОС как таковой на и активное экспериментирование с сетевыми технологиями. Вопреки распространенному мнению, интеграция протоколов TCP/IP (ныне известных как интернет), т.е. Berkeley Stack) в систему не была частью контракта [Автор искренне благодарен Ричарду Столлмену за указание в частной переписке на это обстоятельство.] --- в Министерстве обороны предполагали, что общесистемный свободный код будет использоваться вместе с несвободной реализацией этих протоколов, выполненных по отдельному контракту BBN. Однако разработанная при лишь косвенной правительственной поддержке сетевая подсистема BSD4.3 была признана заказчиком лучшим вариантом (по сумме параметров), нежели конкурировавшая реализация, представленная BBN (выполненная по прямому отдельному контракту). Именно BSD 4.3 (1986 г.) и ее последующие версии (а также частично производные системы и сетевые подсистемы, прототипированные на Berkley Stack) стали реальной основой разворачивания интернет-сетей (сообщества Интернет) во всем мире, включая Россию, что, безусловно, делает этот случай финансирования свободной разработки из правительственных источников самым успешным кейсом за всю историю отрасли. Трагикомическим обстоятельством явилось то, что, хотя Министерство обороны и заказывало свободный код, предметом контракта не являлось создание полностью свободной ОС. BSD в то время была лишь дополнением (и частичным замещением) ОС Юникс, права на которую в описанный период (первая половина восьмидесятых) переходили от AT&T к UCL, а затем к Novell. Неопределенный статус "промежуточного" кода породил одну из самых прискорбных ситуаций в истории отрасли, с взаимными исками и блокированием развития, нашедшую иход в 1993-94 гг. в полном отделении BSD от Юникс и обретении первой из них технической самодостаточности [Marshall Kirk McKusick. Twenty Years of Berkeley Unix // Open Sources: Voices from the Open Source Revolution. --- O’Reilly, 1999]. Наряду с ОС ГНУ/Линукс, современные ОС, основанные на BSD (FreeBSD, OpenBSD и NetBSD), продолжают развиваться и широко используются, в частности, как платформа для частных и публичных сетевых сервисов. На BSD были основаны отечественные открытые системы, такие как Демос и некоторые другие, ныне прекратившие свое развитие. Возможно, последним обусловлено то, что в России дольше, чем в большинстве других стран, BSD-системы оставались доминирующей платформой в сегменте платформ предоставления сетевых услуг, лишь в этом году уступив первое место ГНУ/Линукс, уже несколько лет лидирующей в этом качестве в мире. Лицензия BSD является компромиссной --- производный от кода, подпадающего под эту лицензию, код может распространяться как под свободными, так и под несвободными лицензиями, по выбору автора производного кода. Поскольку наиболее известными разработками, распространяемыми под такими компромиссными лицензиями, являются BSD и XFree86 (свободная реализация промышленного стандарта на графическую подсистему X Window System), сам этот тип лицензирования обычно называют лицензированием "в стиле BSD" или "в стиле X" (BSD-style, or X-style licenses), в противоположность копилефт-лицензированию. Это влечет за собой невозможность черпать код, входящий в массив, защищенный копилефт-лицензиями, для использования при развитии ядра и ряда базовых компонентов системы (хотя в поставку BSD входит множество других программ под копилефт-лицензиями), что, видимо, несколько замедляет развитие. Обратное заимствование возможно. Следует отметить, что для системного программирования "компромиссность" или "жесткость" свободных лицензий, скорее всего, имеет несколько меньшее значение, чем для прикладного, во всяком случае, в том, что касается уже сформировавшихся концепций и команд: риск попытки "захвата" разработки (создания отдельной проприетарной ветки) весьма мал, чему свидетельство достаточно быстрое "вымирание" несвободных версий BSD (таких, как BSD/386, Демос и пр.).

GNAT (пример успеха)

Компилятор с языка программирования Ада (принятого в качестве стандарта для критических, в частности, встроенных бортовых, приложений военными ведомствами стран-участниц НАТО) GNU Ada Translator (GNAT) в его нынешнем виде разработан, в основном, по контракту с Военно-воздушными силами США. Наряду с BSD, GNAT является ярким примером успешной разработки свободных программ по госзаказу. В настоящее время GNAT является наиболее широко используемым транслятором с этого языка. Что не менее важно, проект GNAT успешно коммерциализован и после окончания базового контракта. Команда разработчиков образовала компанию Ada Core Technologies (www.gnat.com), осуществляющую развитие и поддержку GNAT и ряда сопутствующих инструментальных программ (в том числе, используемых и с другими языками программирования), в числе клиентов которых Aerospatiale Matra Airbus, Alcatel Space Industries, COMPAQ Europe (Франция), Aerosystems (Великобритания), Boeing, Digital Equipment Corporation, Lockheed, Nortel (США), DaimlerChrysler Aerospace AG (Германия), ERICSSON SAAB Avionics, SAAB Dynamics AB (Швеция), Philips Semiconductor ITEC (Нидерланды), Министерство обороны Нидерландов, Академия ВВС США, Военная академия США в Вест-Пойнте и многие другие корпорации и учреждения различных стран. Пример GNAT и компании Ada Core Technologies особо подчеркивается лидером движения свободного ПО Ричардом Столлменом как пример бизнеса, "основан[ного] только на свободном ПО" [Ричард Столлмен: "Планы GNU выполнены и перевыполнены" // "Домашний компьютер", N12, 2002 г.]. Для Столлмена важно, что GNAT является частью проекта ГНУ и что он защищен копилефт-лицензиями, а не просто свободен. Копилефт-лицензии (GNU GPL, GNU LGPL и GNU FDL) содержат не только передачу прав свободного использования произведения, но и запрет на сублицензирование (т.е. передачу прав в меньшем объеме, нежели полученные права) при последующем распространении оригинального или производного произведений. В формулировке миссии компании ее модель описывается так: "At Ada Core Technologies, we view our products as a service that we provide to our customers" ("Мы в Ада Кор Текнолоджиз считаем своим товаром услуги, предоставляемые нами нашим клиентам"). Стоит отметить достаточно нетрадиционную для свободных проектов высокую степень централизации такой масштабной разработки (несмотря на то, что некоторые члены команды не являются сотрудниками ACT). Ее можно атрибутировать некоторым "креном" приложения в сторону военной индустрии --- за пределами военных ведомств и их поставщиков использование Ады является скорее исключением, чем правилом. Однако следует особо обратить внимание и на то, что в числе программ, разработка которых сосредоточена или в значительной части производится силами ACT, много и используемых в других средах. По сути, работа ACT является важной составной частью поддержки проекта ОС GNU.

GnuPG (пример успеха)

Интересным и для многих неожиданным фактом стала поддержка грантом германского правительства проекта GNU Privacy Guard (GnuPG) --- свободной реализации соглашений OpenPGP о форматах файлов и сообщений электронной почты, зашифрованных с применением методов криптографии с открытым ключом и/или снабженных цифровой подписью. К настоящему времени GnuPG поддерживает большинство распространенных криптографических алгоритмов, включая традиционные RSA, DSS, новый американский стандарт AES и ряд других (поддержка российских государственных (и ряда отраслевых) стандартов реализована одной из российских компаний и готовится в настоящее время к включению в основную ветку разработки). Команда разработчиков входит в международный консорциум OpenPGP (www.openpgp.org). GnuPG (www.gnupg.org) доступна для большинства популярных (как стандартных, так и альтернативных, включая Microsoft Windows) ОС и широко используется коммерческими организациями и частными лицами во всем мире. При этом дата начала "промышленной" эксплуатации GnuPG немецкими правительственными организациями (что было бы естественным) пока не определена. Складывается впечатление, что выбор GnuPG как объекта государственного спонсирования обусловлен скорее политическими, нежели экономическими соображениями (Правительство Германии заинтересовано в наличии доступной для аудита реализации базовой криптографии, не зависящей от проприетарных вендоров, среди которых доминируют зарубежные (американские) поставщики). Нам неизвестны планы команды по коммерциализации разработки, и если таких планов действительно нет, это следует считать одним из серьезных недостатков в целом интересного проекта. GnuPG распространяется под копилефт-лицензией (GNU GPL).

Selinux (пример неуспеха)

Примером неудачного проекта сотрудничества госсектора с сообществом свободного ПО является проект Selinux --- широко разрекламированная реализация мандатной модели доступа для ОС ГНУ/Линукс, к работе над которой два года назад приступили Агентство национальной безопасности США и его поставщики. В текущем году работа над проектом со стороны правительственных органов была без лишних слов свернута (несмотря на то, что в техническом плане получены достаточно интересные результаты); это, возможно, является сигналом того, что АНБ не планирует использование ГНУ/Линукс в подведомственных учреждениях. Возможно, сам проект был направлен скорее на демонстрацию политики открытости, к которой, по утверждениям правительственных служб PR, перешло Агентство, в течение многих лет бывшее серьезной проблемой на пути развития информатики и вычислительной техники в США и мире, и никаких серьезных намерений в виду Selinux у "программистов в штатском" и не было (хотя искренность интереса к проекту со стороны непосредственных исполнителей вне сомнений).

ОС МСВС (пример неуспеха)

Еще одним крайне неудачным проектам стала, если судить по сообщениям в прессе, разработка отечественной ОС "Мобильных систем вооруженных сил". Основанная на ОС ГНУ/Линукс, эта система была представлена на ряде закрытых мероприятий Министерства обороны, прошла ведомственную сертификацию, однако номинальный разработчик --- НИИ непромышленной сферы --- попытался начать ее контрафактную (нарушающую права авторов) поставку, от которой отказался ввиду угрозы публичного скандала. Имеются глухие сведения о том, что Министерство обороны пытается в обход лицензии осуществить разворачивание системы в подведомственных учреждениях (в частности, система-де проходит тестирование у производителей компьютерного оборудования специального назначения). Получить какую-либо информацию из первоисточника не удается: участники событий ссылаются на государственную тайну, окружающую военные разработки. Если эти сведения верны, репутация России (в том числе, и как потенциального заказчика ПО) находится под серьезной угрозой.

Продажи дистрибутивов (вопросы для дальнейшего исследования)

Среди объявленных клиентов лидирующих на рынке свободных дистрибутивов ОС ГНУ/Линукс (Red Hat Linux, Linux-Mandrake, SuSE Linux, Debian GNU/Linux, Caldera OpenLinux), а также у издателей официальных версий дистрибутивов свободных ОС, основанных на BSD (FreeBSD, OpenBSD и NetBSD), государственные учреждения и организации находятся в пропорции, примерно соответствующей их доле как покупателей на рынке ПО вообще. Это относится как к коробочным продажам, так и к продажам контрактов на поддержку и обслуживание. Сведений о разработках, предпринятых разработчиками лидирующих дистрибутивов по контрактам с государственными заказчиками (или об отсутствии таких контрактов) нами к настоящему времени не собрано. Анкетирование отечественных компаний, разрабатывающих и издающих дистрибутивы, нами также не проводилось, хотя отдельные случаи приобретения дистрибутивов государственными организациями и пользования ими нам известны.

Предварительные выводы

1. До сих пор успех и/или известность из свободно-программных разработок, поддерживаемых государством, обретали проекты, либо заказанные оборонными институциями (как BSD или GNAT), либо имеющие прямое отношение к национальной информационной безопасности (как GnuPG).

2. Выбор "мягкой" или "жесткой" модели свободного лицензирования (копилефт vs "в стиле BSD"), по видимому, имеет не слишком большое значение для успеха проекта.

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

[email protected] Московский Либертариум, 1994-2020