Ключевой факт состоит в том, что различие между потребительской стоимостью и ценой позволяет нам замечать, что только продажная стоимость подвергается угрозе в случае перехода от закрытых к открытым исходникам, а потребительская стоимость — нет.
Если потребительская стоимость, а не продажная цена — действительно главная движущая сила разработки программного обеспечения, и (как обсуждалось в [1]), развитие программ с открытым кодом действительно, более эффективно и целесообразно, чем с закрытым, то мы должны ожидать обнаружения обстоятельств, при которых одна лишь ожидаемая ценность от использования финансирует развитие программы с открытым кодом.
И в самом деле, нетрудно определить, по крайней мере, две важных модели, в которых прибыль разработчика проектов с открытыми текстами полностью обеспечивается за счет потребительской стоимости.
Предположим, Вы работаете для фирмы, которая имеет обусловленные спецификой бизнеса строгие требования к производительности и надежности сетевого сервера. Это возможно в электронной торговле, а возможно Вы работаете с сервером СМИ, имеющим высокую посещаемость и продающим рекламу, возможно, с порталом. Вам нужна круглосуточная работа семь дней в неделю, Вам нужна скорость, и Вам нужно соответствовать требованиям заказчика.
Как Вы собираетесь обеспечить это? Есть три основных стратегии, которым Вы можете следовать:
Купить разработанный кем-то веб-сервер. В этом случае Вы делаете ставку на то, что программа разработчика соответствует вашим задачам и продавец достаточно компетентен, чтобы написать программу должным образом. Даже допуская, что оба этих условия соблюдаются, изделие, вероятно, будет слабо настраиваемым в соответствии с требованиями заказчика; Вы будете способны модифицировать только его с помощью настроек, которые продавец захотел обеспечить. Дорожка, ведущая к чужому веб-серверу — не популярна.
Можно написать свой собственный. Создание собственного веб-сервера не стоит немедленно исключать; такие серверы не очень сложны, они сложны даже менее, чем браузеры, и специализированный сервер может быть очень простым и средним по возможностям. Идя по этой дорожке, Вы можете обеспечить точное соответствие особенностям и требованиям заказчика, каким пожелаете, хотя и заплатите за это временем, потраченным на разработку. Ваша фирма может также обнаружить, что у них проблемы, когда Вы уволитесь или возьмете отпуск.
Присоединиться к группе Apache. Сервер Apache был создан общающейся по Интернету группой веб-мастеров, которые поняли, что будет более разумно объединить свои усилия по улучшению одной программы, нежели управлять развитием большого количества параллельных разработок. Делая это, они были способны получить большинство преимуществ от создания своего собственного сервера, и мощный эффект от отладки при широкомасштабном параллельном мониторинге со стороны пользователей.
Преимущество от выбора Apache очень велики. Об их мощи мы можем судить по ежемесячному обзору Netcraft, который показал, что Apache устойчиво увеличивал долю присутствия на рынке по сравнению со всеми коммерческими веб-серверами с начала его разработки. С июня 1999, Apache и его производные имеют 61 %-ую рыночную долю — без формального владельца, без раскрутки, и вообще без какой-либо организации, осуществляющей обслуживание.
Историей Apache можно проиллюстрировать модель разработки, в которой пользователи программного обеспечения обнаруживают, что для них выгоднее финансировать развитие программы с открытым кодом, потому что это дает им лучший продукт, чем они могли получить в другом случае, и за меньшую цену.
Несколько лет назад двум программистам в Cisco (изготовитель сетевого оборудования) была поручена работа по написанию распределенной системы управления печатью для использования в корпоративной сети Cisco. Это было настоящим вызовом. Помимо поддержки возможности произвольному пользователю A печатать на произвольном принтере B (который мог быть в соседней комнате или на расстоянии в тысячу миль), система должна была удостовериться, что в случае окончания бумаги или чернил задание было направлено по другому адресу на принтер, расположенный недалеко от нужного. Система также должна была сообщать о таких проблемах администратору принтера.
Дуэт придумал интеллектуальный набор модификаций к стандартному программному обеспечению печати Unix, плюс несколько скриптов для оболочки, которые выполняли работу. И в этот момент они поняли, что и у них, и у Cisco проблема.
Проблемой было то, что ни один из них, вероятно, не остался бы в Cisco навсегда. В конечном счете, оба программиста ушли бы, программное обеспечение осталось бы без поддержки и начало «загнивать» (то есть постепенно переставать удовлетворять условиям совместимости, необходимым для работы). Никакой разработчик не желает видеть, как это происходит с его творением, и бесстрашный дуэт чувствовал, что Cisco заплатила за решение проблемы, не так уж неблагоразумно ожидая, что программа переживет их собственные рабочие места.
Исходя из этого, они пошли к своему менеджеру и убедили его разрешить выпуск программы управления печатью с открытыми текстами. Их аргументы заключались в том, что у Cisco нет возможности получить никакой прибыли от продажи программы, которые можно потерять, но при этом она может извлечь пользу. Поощряя рост сообщества пользователей и со-разработчиков, распространенных во многих корпорациях, Cisco могла эффективно застраховаться в случае ухода первоначальных разработчиков программы.
История Cisco иллюстрирует модель, в которой функция открытых исходных текстов не столько в том, чтобы понизить затраты, сколько в том, чтобы распределить риск. Все стороны находят, что открытость исходников, и присутствие совместного сообщества, финансируемого из множества независимых источников, обеспечивает предохранительные меры, которые представляют самостоятельную экономическую ценность — являются достаточно ценными для того, чтобы вести финансирование.