Журнал «Компьютерра» N 45 от 05 декабря 2006 года
Шрифт:
Вообще-то, особой новости в сотрудничестве софтверного гиганта с различными успешными open source-компаниями нет: времена, когда в Microsoft величали открытый софт не иначе, как «раковой опухолью», видимо, прошли. Достаточно вспомнить такие имена, как SugarCRM, XenSource или Zend. Совместная работа над интероперабельностью и улучшением производительности Windows-версий популярных открытых продуктов стала нормой, и сообщения о подобных соглашениях воспринимались достаточно спокойно, хотя и без особых восторгов. Кто-то продолжал видеть в каждом новом партнере Microsoft «предателя идеалов Free Software, продавшего душу дьяволу» или «невинную жертву, попавшую в лапы софтверного гиганта», но в целом обстановка не давала поводов для громких заявлений.
Вероятно, если бы ноябрьская сделка с Novell включала в себя лишь пункты
Интересно
В ответ на вопрос «Что вы будете делать, если Microsoft нарушит условия соглашения» в IRC-конференции, представитель Novell оптимистично ответил: «Мы не думаем, что это произойдет».
Логика критиков Novell проста. Очевидно, что если в компании готовы выплачивать какую-то сумму за «патентное ненападение», то там считают его возможным (а иначе зачем платить?). Возможно оно только в случае, если распространяемые Novell программы действительно нарушают какие-то патенты, принадлежащие Microsoft. (Установить это точно может только суд; следует отметить, что речь идет не о будущих разработках, а о уже написанном и используемом ПО.) А раз так, то патентный иск может быть предъявлен любой другой компании, использующей те же программы, что и Novell, но не договорившейся с Microsoft. Это означало бы конец Linux как свободной операционной системы - по крайней мере, до тех пор, пока нарушения патентов будут иметь место.
Формально опасность патентной атаки на пользователей или разработчиков свободного софта вообще и Linux в частности была всегда, и наличие соглашения между двумя компаниями не должно затрагивать других «потенциальных жертв». Однако «психологически» все обстоит не совсем так. Нарушает Linux какие-то патенты Microsoft или нет - науке неизвестно, и не будет известно до проверки этого утверждения судом. Но до сих пор все разработчики open source в один голос заявляли, что никаких патентов Linux не нарушает. Собственно, именно эту «корпоративную этику» Novell вольно или невольно и нарушила - по крайней мере, в глазах многих участников сообщества. Как мы уже сообщали (см. новость в предыдущем номере), впоследствии Стив Баллмер подтвердил опасения на этот счет, заявив вскоре после заключения сделки, что Linux включает в себя запатентованную интеллектуальную собственность Microsoft, а все его пользователи задолжали софтверному гиганту. Novell оперативно выпустила уточнение, что они ничего такого при заключении соглашения не имели в виду - в Microsoft ответили, что позицию Novell уважают, но остаются при своем мнении. На том пока и порешили.
Здесь есть еще один важный момент. Как известно, лицензия GPL, под которой распространяется ядро Linux, а также вся система GNU, разрешает распространение и изменение программы только при условии доступности ее исходного кода. Тем самым любой разработчик, использующий свободный софт под GPL и улучшающий его для собственных нужд (или для нужд клиентов), обязан делиться своими достижениями с сообществом. GPL-свободная программа не может в один прекрасный день стать проприетарной. Это требование (известное как копилефт) оказалось ключевым в развитии свободной кодовой базы, на которую сейчас опираются в том числе все линукс-вендоры. Однако именно этот пункт GPL оказывается под угрозой. Действительно, работая под защитой патентного соглашения, Novell может добавить в GPL-код реализацию любой запатентованной Microsoft технологии, формально опубликовав свои исходники. Сама компания такую возможность категорически отвергает, но теоретическая угроза, которую несут подобные пакты, остается. И «некоммерческие индивидуальные разработчики» даже смогут добавить запатентованные наработки в свои программы. Однако если какая-то другая компания попытается их использовать в коммерческих интересах, ее теоретически может ожидать повестка в суд - за нарушение патента, принадлежащего Microsoft. Тем самым заключившая соглашение компания получает преимущество перед конкурентами не за счет качества своего продукта, а за счет «сепаратного мира» с владельцем патентов - а это полностью противоречит идее свободного (в т. ч. и для коммерческого использования) программного обеспечения.
Ведущий
Надо заметить, что Ричард Столлмен предвидел возможность такого развития событий еще в 1991 году, когда писалась вторая версия лицензии GPL. Благодаря этому в нее был включен раздел за номером 7, призванный блокировать подобные сделки. Суть его в том, что если лицензиат по какой-либо причине не может обеспечить передачу всех гарантируемых лицензией прав всем прямым или непрямым получателям его программы, то он не может ее распространять вовсе. Причем в тексте лицензии в качестве примера приводится именно патентное соглашение, подозрительно напоминающее сделку Novell с Microsoft.
Естественно, о седьмом разделе GPL многие комментаторы вспомнили сразу, как только прочитали радостный пресс-релиз Novell. На компанию тут же посыпались обвинения в нарушении лицензии, что могло бы привести к автоматическому прекращению ее действия и, следовательно, отзыву всех прав на модификацию и распространение многих ключевых компонентов дистрибутива Novell SuSE Linux. Однако из оперативно выпущенных пояснений стало ясно, что юристы обеих компаний свой хлеб едят не зря: соглашение было составлено таким образом, чтобы не противоречить тексту GPL. В частности, Novell не получает лицензии на использование патентов Microsoft, а «ненападение» распространяется только на ее клиентов, а не на саму компанию. В результате соглашение не подпадает под действие запрета лицензии. По крайней мере, так считают в Novell и Microsoft.
С этого момента спор о возможности нарушений со стороны Novell перешел в такую фазу, в которой простым смертным без юридического образования понять, что означают написанные слова и кто здесь все-таки прав, уже невозможно. Да и юристам это сделать не так-то просто, особенно не имея нужной информации. Стараясь доказать свою невиновность перед GPL и сообществом, Novell даже предоставила юрисконсульту Free Software Foundation Эбену Моглену (Eben Moglen) доступ к полному тексту соглашения (составляющему коммерческую тайну, конечно). Однако анализ сделки, которая готовилась полгода, тоже займет существенное время, равно как и подготовка возможных рекомендаций по изменению ее условий.
Как бы то ни было, реакция в сообществе показывает, что даже если буква GPL нарушена и не была, то духу свободного ПО злосчастная сделка явно противоречит, и вряд ли она добавит авторитета Novell. Даже далекие от технологий финансовые аналитики Credit Suisse отметили это как один из долговременных негативных факторов, не компенсирующих разовое финансовое «вливание», полученное благодаря сделке.
Сейчас уже трудно сказать, что побудило компанию пойти на такой шаг. Конечно, возможность «защитить» своих клиентов даже от воображаемой опасности и улучшить свои финансовые показатели выглядит ой как привлекательно. Вероятно, не последнюю роль здесь сыграл проект Mono, перешедший под крыло Novell вместе с фирмой Ximian два года назад. Напомню, что Mono - это свободная реализация платформы .Net, позволяющая (в идеале) запускать любое .Net-приложение под Linux и другими поддерживаемыми системами. Будучи основанной на спецификациях Microsoft, Mono случайно может нарушать какие-то патенты софтверного гиганта, хотя разработчики клянутся, что никогда не включали в проект никакой патентоопасный код. Однако долгое время неопределенный статус проекта сдерживал его развитие и распространение - например, Red Hat не включала его (и теперь уже вряд ли когда включит) в коммерческую версию своего дистрибутива (ссылаясь, впрочем, скорее на технические, чем на лицензионные причины).