From 1ae0306a3cf2ea27f60b2d205789994d260c2cce Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Sun, 11 Oct 2020 13:29:45 +0200 Subject: add i18n FSFS --- .../articles/ru/when-free-depends-on-nonfree.html | 207 +++++++++++++++++++++ 1 file changed, 207 insertions(+) create mode 100644 talermerchantdemos/blog/articles/ru/when-free-depends-on-nonfree.html (limited to 'talermerchantdemos/blog/articles/ru/when-free-depends-on-nonfree.html') diff --git a/talermerchantdemos/blog/articles/ru/when-free-depends-on-nonfree.html b/talermerchantdemos/blog/articles/ru/when-free-depends-on-nonfree.html new file mode 100644 index 0000000..64b3789 --- /dev/null +++ b/talermerchantdemos/blog/articles/ru/when-free-depends-on-nonfree.html @@ -0,0 +1,207 @@ + + + + + + +Когда свободные программы зависят от несвободных - Проект GNU - Фонд +свободного программного обеспечения + + + +

Когда свободные программы зависят от несвободных

+ +

Ричард Столмен

+ +

Когда программа свободна (от слова “свобода”), это значит, что +она дает пользователям четыре свободы (gnu.org/philosophy/free-sw.html), так +что они контролируют, что делает программа. В большинстве случаев этого +достаточно, чтобы распространяемая программа была этичной; но не +всегда. Есть дополнительные проблемы, которые могут возникнуть в +специфических обстоятельствах. В этой статье описана неочевидная проблема, +возникающая, когда обновление свободной программы требует применения +несвободной.

+ +

Если пользование свободной программой неизбежно зависит от другой программы, +которая несвободна, мы говорим, что свободная программа “в +западне”. Ее текст свободен, и у вас может быть возможность копировать +ее части в другие свободные программы с хорошими, этичными результатами. Но +вы не должны работать с программой в западне, потому что это +значит, что вы отказываетесь от свободы и сдаетесь на милость той +несвободной программы.

+ +

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

+ +

Зависимость от несвободной программы может принимать различные формы. В +простейшем случае это язык программирования, у которого нет свободной +реализации. Первые программы, которые я написал для системы GNU в +восьмидесятых годах XX века, в том числе GNU Emacs, GDB и GNU Make, +приходилось компилировать несвободным компилятором Си компании AT&T, +потому что свободного компилятора Си не было, пока я не написал GCC. К +счастью, такого рода проблемы по большей части отошли в прошлое; сейчас у +нас есть свободные компиляторы и платформы почти для всех языков, какие +только используются для написания свободных программ.

+ +

Мы можем вызволить программу из западни этого рода, переведя ее на другой +язык или выпустив свободную реализацию языка, на котором она написана. Таким +образом, когда появилась полная свободная реализация Java, это вызволило все +свободные программы на этом языке из западни Java.

+ +

Зависимость этого рода концептуально проста, потому что она вытекает из +положения, заданного в один момент времени. В момент t свободная программа P +не работает без несвободной платформы программирования Q. Заимствуя термин +лингвистики, можно сказать, что это “синхроническая” связь.

+ +

Не так давно мы наблюдали зависимость другого рода в программах баз данных, +когда можно собрать и работать с любой версией программы в мире свободы, но +обновление с версии N до версии N+1 требует несвободной программы.

+ +

Это происходит потому, что внутренний формат базы данных изменяется между +версией N и версией N+1. Если вы серьезно пользовались версией N, у вас, +вероятно, есть большая база данных в формате версии N. Для обновления +программ базы данных до версии N+1 вам нужно преобразовать формат этой базы +данных.

+ +

Если это предполагается делать обработкой с помощью несвободной программы +преобразования формата или с помощью службы разработчика, которая +представляет собой услугу-замену +программы, то программы базы данных в западне — но менее +очевидным образом. Любую заданную версию программы базы данных можно +применять без несвободных программ и услуг-замен программ. Проблема +возникает, когда вы пытаетесь продолжать пользоваться программой длительное +время, что связано с периодическим обновлением ее; в этом случае программой +невозможно пользоваться без какой-то несвободной программы или ее +эквивалента. Такая программа базы данных попадает в западню при движении во +времени — мы могли бы назвать это “диахронической +западней”, заимствуя другой термин лингвистики.

+ +

Например, хотя программа OpenERP (переименованная впоследствии в +“Odoo”) свободна, она в диахронической западне. GNU Health, наш свободный пакет для управления +клиникой, первоначально пользовался OpenERP. В 2011 году +разработчик GNU Health Луис Фалкон обнаружил, что обновление до следующей +версии OpenERP требует отсылки базы данных (всех медицинских записей о +пациентах) на сервер OpenERP для преобразования формата. Это услуга-замена +программы: она требует, чтобы клиника, которая пользуется GNU Health, +доверила свои собственные вычисления и свои данные компании-разработчику +OpenERP. Фалкон не сдался, он перевел GNU Health на Tryton.

+ +

Пользование услугой-заменой программы принципиально эквивалентно работе с +несвободной программой с функциями слежки, а также универсальной +лазейкой. Эта служба могла бы сохранять копию баз данных, формат которых +пользователи преобразуют. Даже если мы уверены, что компания, +предоставляющая эту услугу, никому никогда ни в каком виде преднамеренно эти +данные не покажет, мы не можем быть уверены, что доступ к данным не получат + агентства разведки +различных стран или взломщики систем безопасности (пожалуйста, не +называйте их “хакерами”).

+ +

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

+ +

Можно опробовать программу в диахронической западне без несвободных +программ, но если вы собираетесь не просто поиграться, вы должны обходить ее +подальше. И предприятия, и частные лица найдут прекрасные свободные +альтернативы, у которых нет такой проблемы; чтобы избежать этой западни, +нужно только распознать ее.

+ +
+ + +
+ + + + + + + + + -- cgit v1.2.3