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

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

В эпоху Web-служб условия таких лицензий, как GPL (GNU General Public License), уже не могут считаться адекватными. Причина этого была названа еще несколько лет тому назад. Эти лицензии связывают обмен модификациями исходных текстов с их распространением, но Web-службы изменили правила игры. Если вы получили копию программы, на которую распространяется действие лицензии GPL, вы можете поменять ее и создать на основе своей собственной версии Web-службу. В этом случае вы, конечно, нарушаете дух, но не букву закона.

Я думаю, неправильно отрывать свободно распространяемый модуль от проекта, в котором он был создан, и прятать его за межсетевым экраном. Хотя причины, почему так поступает компания, могут быть весьма разумны. Внутренние требования и методы зачастую несовместимы с теми, что установлены для исходного проекта. Кроме того, весьма вероятно, что представления о сроках выпуска будут существенно различаться. Разработчики, создающие программы для внешнего мира, могут допустить утечку внутренней информации. Когда разработчик делает что-то значимое для внешнего мира, скорее всего, он так и останется неизвестным, создание персонального брэнда и создание брэнда компании — разные вещи.

Эти опасения законны. Если они заставляют выбирать оборонную стратегию, я понимаю почему. Но, хотя поведение и имеет свои оправдания, я не уверен, что это правильно. Вкладывая свои силы в поддержку сообщества разработчиков свободно распространяемого программного обеспечения, мы делаем это вовсе не из альтруистских соображений. Истинный мотив — это просвещенный эгоизм. Как и Internet, современный корпоративный мир рассчитывает на плоды самых успешных проектов, касающихся свободно распространяемого программного обеспечения. Но постепенное превращение операционных систем, компиляторов и серверов в товары массового потребления — лишь малая часть того, что возможно. Преимущества свободно распространяемой модели находят отражения во всех видах инфраструктурного программного обеспечения. Программы для бизнеса, из которых многие являются коммерческими, тоже готовы к превращению в массовый товар.

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