Открытый и закрытый процессы разработки

Каковы же были причины раскола в среде разработчиков, разделившего все существующее в настоящий момент программное обеспечения на свободное и несвободное?

С одной стороны, еще до формирования понятия "свободное программное обеспечение" в академической среде возник весьма эффективный способ разработки, который приводил к созданию программ, удобных для пользователей-программистов: каждый мог участвовать в разработке и изменять разрабатываемую программу. Первоначально история UNIX-систем была основана на том, что люди писали и дописывали программное обеспечение для своих нужд. Смысл свободного программного обеспечения, по Столлману, как раз и состоит в том, что любой, кто хочет что-то сделать с программой --- может это сделать. Это приводило к развитию программного обеспечения в той форме, которая была удобна тем, кто с ним работает.

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

Причиной существования двух точек зрения на программное обеспечения является то, что программа, по своей природе --- нематериальный объект, обладающий свойством безущербного копирования. Суть безущербного копирования состоит в следующем. Для создания материального объекта требуются значительные переменные издержки: сырье, трудовые и энергетические затраты, причем для производства нескольких предметов все эти затраты часто можно примерно считать равными затратам на производство одного, умноженным на количество предметов. Для нематериальных объектов, к которым относятся и программные продукты, при производстве нескольких копий продукта затраты примерно такие же, как и при производстве одной копии продукта. Такая же ситуация с большинством творческих произведений -- многие из них легко тиражируются, особенно в цифровой форме.

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

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

Учитывая возможности построения на производстве программного обеспечения бизнеса с потенциально огромной нормой прибыли, может показаться странным, что свободное программное обеспечение вообще существует. Кажется, что его разработкой должны заниматься фанаты, которые готовы потерять возможность получения сверхприбыли ради несомненно приятной, но абсолютно безденежной идеи совместной работы и открытого обмена идеями. Тем не менее примеры многих компаний, построивших свой бизнес на открытом программное обеспечении, вполне показательны. В чём же технологические потери при переходе на закрытый способ разработки?

Итак, что же теряют разработчики теряем, переходя на закрытый способ разработки?

Таким образом, большие деньги можно сделать только если всё, что может быть воспроизведено путём очень дешёвого копирования, держится в тайне, и защищается от копирования законодательством. В первую очередь это исходный текст программного продукта. В результате из-за ограничений в информационном плане обычно теряется качество программных продукта, поскольку открытое информационное пространство желательно для любого программного продукта. Любому продукту нужна реклама, нужно распространение информации о себе, нужна возможность изучения классифицированными пользователями для выявления ошибок и особенностей функционирования. Но в случае закрытой разработки информация, становящаяся открытой, жестко ограничивается. Не допускается разглашение того, что называется коммерческой тайной, либо предоставление доступа к этой информации возможно только на коммерческих условиях или условиях неразглашения. Например, преподаватели ВУЗов в последнее время теоретически могут получить ограниченный доступ к исходным текстом ядра ОС Windows --- на условиях довольно сложной и ограничивающей их лицензии. Неэффективными для создания открытого информационного пространства оказываются даже лицензии, подобные Microsoft Shared Source Reference License, запрещающие программирование с использованием взятой из исходных кодов информации для всех целевых платформ кроме некого множества.

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

Открытый способ разработки

Закрытый способ разработки

Копирование не наносит ущерба разработке и способтвует рекламе продукта

Копирование считается наносящим убытки, для распространения информации о продукте создаются демо-версии и негласно допусается некоторый объем пиратских копий

Совместная разработка: может присоединиться любой полезный человек

Корпоративная (закрытая) разработка, ограниченный круг участников

Открытое информационное пространство с точки зрения как объема, так и доступности информации

Ограниченное информационное пространство: либо по объему, либо есть социально-технологические ограничения для доступа

Нет "хозяина всех копий"

Существует единственный собственник всех копий

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


Сведения о ресурсах

Готовность (%)

Продолжительность (ак. ч.)

Подготовка (календ. ч.)

Полный текст (раб. д.)

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

Level

Maintainer

Start date

End date

70

1

1

1

1

ArtemSerebriyskiy, VladimirLysikov, VsevolodKrishchenko