Альтернативой BSD-стилю стало так называемое «двойное лицензирование», при котором пользователю предлагается выбор между а) свободной копилефт-лицензией и б) несвободной лицензией (как правило, платной), допускающей создание несвободных производных на один и тот же код9.
Интересной особенностью СПО является относительная легкость, с которой при свободном лицензировании вовлекаются в оборот (хозяйственный и коммерческий) программы, изначально созданные вне контрактных рамок (коммерческими организациями для собственных нужд, индивидуумами для собственного удовольствия, университетами в качестве «побочного продукта» исследований и т.д.)10.
Однако значительная и все возрастающая доля свободного кода пишется в коммерческих рамках, с корпоративным (как значительная часть XFree86 или OpenOffice.org) или государственным (как GNAT или GnuPG) финансированием. Несколько получивших широкую известность случаев государственного финансирования СПО описаны ниже в отдельном разделе («Участие государства в свободном ПО»).
Свободные программы получили широкое распространение в сфере профессионального использования – это, прежде всего, инструментальные средства (программы, используемые в самом процессе ПО, включая написание, отладку, модификацию программ), затем серверные программы и, особенно, как частный случай последних, сетевые (Интернет) сервисы, в которых свободные ОС (такие, как ГНУ/Линукс и FreeBSD) и прикладные программы (такие, как Web-сервер Apache или почтовая программа Postfix) сегодня лидируют с большим отрывом11.
Сети Интернет, разворачивание и развитие которых стало возможным прежде всего благодаря СПО, сами выступают мощнейшим инструментом снижения издержек коммуникации и координации разработок.
Несвободное программное обеспечение. Альтернативой свободному программному обеспечению является несвободное («проприетарное»), при котором автор (или иной правообладатель) удерживает ряд прав за собой. Типичная модель несвободного лицензирования предусматривает обязательные отчисления (в форме приобретения дополнительных экземпляров или «лицензий» на их изготовление) за ввод в оборот дополнительных экземпляров, хотя бывают и другие формы несвободного ПО12.
Внешняя институциональная форма несвободного ПО напоминает издательский бизнес – компания-«издатель» приобретает у автора права на произведение, а затем издает и распродает его, стараясь получить прибыль. Разница, обусловленная коллективным характером программирования больших систем, в том, что издатели программ, как правило, не приобретают права на самостоятельно написанные произведения, а нанимают программистов, и имущественные права изначально принадлежат такой компании как следствие создания произведений в порядке выполнения служебного задания13.
Поскольку компания осуществляет не только маркетинг своих продуктов/услуг, но и управление процессом их создания/оказания, многие компании называют себя «производителями» программ, хотя программирование, конечно, не становится от этого процессом промышленного производства, а остается творческой деятельностью отдельных личностей, пусть и объединенных в коллектив.
Несвободная модель позволяет частным образом монополизировать рынок услуг ПО по отношению к каждой программе или системе (хотя конкуренция между различными «частными рынками» (private markets) теоретически ограничивает эти локальные монополии, и на практике случаи устойчивых конкурентных сегментов имеют место быть).
Несвободные программы получили широкое распространение в сегментах домашнего и «офисного» использования (например, более 90% персональных компьютеров сегодня работает под полностью (как MS-DOS, Microsoft Windows, Microsoft Windows NT, MacOS 9) или частично (как MacOS X) несвободными ОС; близка к этой цифре и доля несвободных прикладных программ для ПК).
3.5. Влияние модели коммерческого ПО на структуру издержек
Свойства «несвободной» модели программного обеспечения
В распоряжении «владельцев» несвободного кода имеются очень мощные рычаги качественной реструктуризации рынка программного обеспечения.
1) Сокрытие исходных кодов. Значительная доля несвободных программ поставляется конечным пользователям без исходного кода, т.е. в форме, допускающей только эксплуатацию программы, но не ее изучение, модификацию и т.п. (или, во всяком случае, делающим эти процедуры крайне нетривиальным занятием).
2) Сокрытие исходного кода влечет за собой рост асимметрии информации о товаре или услуге (несовершенство рынка), в частности, о качестве программирования.
Действительно, правообладатель, прибегающий к сокрытию кода, может получить преимущество как в связи с качеством программирования ниже предполагаемого приобретателем (например, содержащиеся и постепенно выявляющиеся ошибки могут радикально увеличивать стоимость внутреннего сопровождения экземпляра программы на дальнейших этапах жизненного цикла последнего), так и в связи с качеством программирования выше ожидавшегося (например, стоимость создания новой версии или производного произведения, экземпляры которого будут проданы по сопоставимой цене, может быть ниже).
3) Из сокрытия исходного кода следует также монополизация услуг по сопровождению программ (исправлению ошибок, добавлению функциональности, интеграции с другими программами и новым оборудованием).
Собственно говоря, право модификации произведения как такового относится к исключительным имущественным правам автора, однако в отношении уже пущенных в оборот экземпляров это право уже исчерпано, поэтому владельцу экземпляра программы, в принципе, никто не может помешать изменить собственный экземпляр (или заказать услугу по такому изменению на рынке). Однако, не имея доступа к исходному коду, он, обладая таким правом, может испытывать серьезные технические затруднения в его реализации. Результатом явится монопольное преимущество правообладателя (или находящегося в партнерских отношениях с ним иного лица) на рынке предоставления таких услуг.
4) Распоряжаясь доступом к коду, правообладатель может также производить ценовую дискриминацию конечных пользователей, в том числе, по функциональности программы: одна и та же программа может быть издана в разных вариантах, часть из которых «обрезана» по своей функциональности. Фактически это означает, что при той же или сопоставимой себестоимости производства тиража, будет иметь место недопредложение потребительской ценности, с соответствующими ценовыми последствиями.
5) Более серьезным эксцессом несвободы ПО является имеющая место в некоторых сегментах рынка тенденция к «проприетаризации» («антистандартизации») интерфейсов14. Обладая исключительным доступом к коду более чем одной программы, правообладатель может побуждать программистов заставлять взаимодействовать их нестандартным или намеренно отклоняющимся от стандартов образом – создавать «проприетарные интерфейсы».
«Взросление» любого приложения компьютера, как правило, сопровождается стандартизацией интерфейсов. Стандартизация интерфейсов, формирующая конкурентный рынок совместимых и взаимозаменимых программ, выгодна конечному пользователю и, в конечном итоге, отрасли в целом (т.к. снижает риски системных кризисов из-за неудач отдельных игроков), однако может быть невыгодна отдельным игрокам, доминирующим в тех или иных сегментах.
5.1) «Проприетаризация» интерфейсов с оборудованием становится возможна как следствие сговора правообладателя популярной программы с производителем оборудования (который может получать часть монополистической прибыли или иметь собственный интерес к сокрытию полной технической информации о поставляемых им устройствах) и влечет образование замкнутых «островков» в отрасли.
9 Подробное обсуждение влияния моделей свободного лицензирования на издержки оборота кода см. в: Philippe Aigrain. A framework for understanding the impact of GPL copylefting vs. non copylefting licenses. (Рукопись. Ссылка дана с разрешения автора).
10 Например, ядро Линукс, используемое в различных вариантах широко распространенной системы ГНУ/Линукс, выросло из личного исследовательского проекта финского студента, а Web-сервер Apache – из работы неформального объединения Web-мастеров и администраторов систем, работавших в разных компаниях и решавших каждый свою задачу. Ныне вокруг каждого из этих проектов выросла масса бизнесов с многомиллиардным, в сумме, оборотом.
11 Например, доля свободного Web-сервера Apache более 66% (по Web в целом) и продолжает расти (Netcraft’s statistics on web servers, октябрь 2002 г.), доля свободной ОС ГНУ/Линукс среди обслуживающих отдельные домены ОС составляет 28.5%, свободных версий BSD – еще 10% (Zoebelein, апрель 1999 г.), доля свободного сервера электронной почты Sendmail – 42%, доля свободной программы bind, отвечающей за систему именования доменов (DNS) Интернет – 95%, доля свободного интерпретатора PHP среди обслуживающих Web-сайты сценарных языков составляет 24%
12 Например, т.н. freeware – бесплатно лицензируемые, но несвободные в плане модификации и/или распространения, часто недоступные в исходных кодах “бесплатные” программы.
13 Возможно, более близкой аналогией являются съемки фильма, компания-продюсер которого нанимает актеров и прочих творческих работников в каст, хотя при этом распределению подлежат исполнительские (смежные), а не авторские права.
14 Интерфейсами в программировании называют способы взаимодействия программ между собой, с оборудованием и с конечным пользователем. Частными случаями интерфейсов являются: интерфейс программирования (API), определяющий взаимодействие программы с системой, формат хранения или передачи данных, протокол (последовательность шагов) передачи данных, пользовательский интерфейс (совокупность команд, которыми пользователь управляет программой, и сообщений, отражающих ее состояние или результаты работы).