diff options
Diffstat (limited to 'talermerchantdemos/blog/articles/ru/when-free-depends-on-nonfree.html')
-rw-r--r-- | talermerchantdemos/blog/articles/ru/when-free-depends-on-nonfree.html | 207 |
1 files changed, 207 insertions, 0 deletions
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 @@ +<!--#set var="ENGLISH_PAGE" value="/philosophy/when-free-depends-on-nonfree.en.html" --> + +<!--#include virtual="/server/header.ru.html" --> +<!-- Parent-Version: 1.86 --> + +<!-- This file is automatically generated by GNUnited Nations! --> +<title>Когда свободные программы зависят от несвободных - Проект GNU - Фонд +свободного программного обеспечения</title> + +<!--#include virtual="/philosophy/po/when-free-depends-on-nonfree.translist" --> +<!--#include virtual="/server/banner.ru.html" --> +<h2>Когда свободные программы зависят от несвободных</h2> + + <p><strong>Ричард Столмен</strong></p> + +<p>Когда программа свободна (от слова “свобода”), это значит, что +она дает пользователям четыре свободы (<a +href="/philosophy/free-sw.html">gnu.org/philosophy/free-sw.html</a>), так +что они контролируют, что делает программа. В большинстве случаев этого +достаточно, чтобы распространяемая программа была этичной; но не +всегда. Есть дополнительные проблемы, которые могут возникнуть в +специфических обстоятельствах. В этой статье описана неочевидная проблема, +возникающая, когда обновление свободной программы требует применения +несвободной.</p> + +<p>Если пользование свободной программой неизбежно зависит от другой программы, +которая несвободна, мы говорим, что свободная программа “в +западне”. Ее текст свободен, и у вас может быть возможность копировать +ее части в другие свободные программы с хорошими, этичными результатами. Но +вы не должны <em>работать</em> с программой в западне, потому что это +значит, что вы отказываетесь от свободы и сдаетесь на милость той +несвободной программы.</p> + +<p>Тот, кто отстаивает принципы свободных программ, не будет заведомо помещать +программу в западню. Однако многие свободные программы разрабатываются +людьми или компаниями, которые не особенно поддерживают эти принципы или не +осознают проблемы.</p> + +<p>Зависимость от несвободной программы может принимать различные формы. В +простейшем случае это язык программирования, у которого нет свободной +реализации. Первые программы, которые я написал для системы GNU в +восьмидесятых годах XX века, в том числе GNU Emacs, GDB и GNU Make, +приходилось компилировать несвободным компилятором Си компании AT&T, +потому что свободного компилятора Си не было, пока я не написал GCC. К +счастью, такого рода проблемы по большей части отошли в прошлое; сейчас у +нас есть свободные компиляторы и платформы почти для всех языков, какие +только используются для написания свободных программ.</p> + +<p>Мы можем вызволить программу из западни этого рода, переведя ее на другой +язык или выпустив свободную реализацию языка, на котором она написана. Таким +образом, когда появилась полная свободная реализация Java, это вызволило все +свободные программы на этом языке из <a +href="/philosophy/java-trap.html">западни Java</a>.</p> + +<p>Зависимость этого рода концептуально проста, потому что она вытекает из +положения, заданного в один момент времени. В момент t свободная программа P +не работает без несвободной платформы программирования Q. Заимствуя термин +лингвистики, можно сказать, что это “синхроническая” связь.</p> + +<p>Не так давно мы наблюдали зависимость другого рода в программах баз данных, +когда можно собрать и работать с любой версией программы в мире свободы, но +обновление с версии N до версии N+1 требует несвободной программы.</p> + +<p>Это происходит потому, что внутренний формат базы данных изменяется между +версией N и версией N+1. Если вы серьезно пользовались версией N, у вас, +вероятно, есть большая база данных в формате версии N. Для обновления +программ базы данных до версии N+1 вам нужно преобразовать формат этой базы +данных.</p> + +<p>Если это предполагается делать обработкой с помощью несвободной программы +преобразования формата или с помощью службы разработчика, которая +представляет собой <a +href="/philosophy/who-does-that-server-really-serve.html">услугу-замену +программы</a>, то программы базы данных в западне — но менее +очевидным образом. Любую заданную версию программы базы данных можно +применять без несвободных программ и услуг-замен программ. Проблема +возникает, когда вы пытаетесь продолжать пользоваться программой длительное +время, что связано с периодическим обновлением ее; в этом случае программой +невозможно пользоваться без какой-то несвободной программы или ее +эквивалента. Такая программа базы данных попадает в западню при движении во +времени — мы могли бы назвать это “диахронической +западней”, заимствуя другой термин лингвистики.</p> + +<p>Например, хотя программа OpenERP (переименованная впоследствии в +“Odoo”) свободна, она в диахронической западне. <a +href="/software/health/">GNU Health</a>, наш свободный пакет для управления +клиникой, первоначально пользовался OpenERP. В 2011 году +разработчик GNU Health Луис Фалкон обнаружил, что обновление до следующей +версии OpenERP требует отсылки базы данных (всех медицинских записей о +пациентах) на сервер OpenERP для преобразования формата. Это услуга-замена +программы: она требует, чтобы клиника, которая пользуется GNU Health, +доверила свои собственные вычисления и свои данные компании-разработчику +OpenERP. Фалкон не сдался, он перевел GNU Health на <a +href="http://www.tryton.org">Tryton</a>.</p> + +<p>Пользование услугой-заменой программы принципиально эквивалентно работе с +несвободной программой с функциями слежки, а также универсальной +лазейкой. Эта служба могла бы сохранять копию баз данных, формат которых +пользователи преобразуют. Даже если мы уверены, что компания, +предоставляющая эту услугу, никому никогда ни в каком виде преднамеренно эти +данные не покажет, мы не можем быть уверены, что доступ к данным не получат +<a href="/philosophy/surveillance-vs-democracy.html"> агентства разведки +различных стран</a> или взломщики систем безопасности <a +href="http://stallman.org/articles/on-hacking.html">(пожалуйста, не +называйте их “хакерами”)</a>.</p> + +<p>Когда программа в диахронической западне, вызволение ее из западни требует +больше, чем однократной работы по программированию. Работу приходится делать +постоянно, каждый раз, когда меняется формат данных. Вести проект, +поддерживая решимость продолжать эту работу в долгосрочной перспективе, +нелегко. Может оказаться проще оказать давление на компанию, чтобы она не +ставила пользователям западню — отказываясь от программы до тех +пор, пока она в западне. Учитывая, насколько трудно освободить программу, +вам лучше было бы держаться от нее подальше.</p> + +<p>Можно опробовать программу в диахронической западне без несвободных +программ, но если вы собираетесь не просто поиграться, вы должны обходить ее +подальше. И предприятия, и частные лица найдут прекрасные свободные +альтернативы, у которых нет такой проблемы; чтобы избежать этой западни, +нужно только распознать ее.</p> + +<div class="translators-notes"> + +<!--TRANSLATORS: Use space (SPC) as msgstr if you don't have notes.--> + </div> +</div> + +<!-- for id="content", starts in the include above --> +<!--#include virtual="/server/footer.ru.html" --> +<div id="footer"> +<div class="unprintable"> + +<p>Пожалуйста, присылайте общие запросы фонду и GNU по адресу <a +href="mailto:gnu@gnu.org"><gnu@gnu.org></a>. Есть также <a +href="/contact/">другие способы связаться</a> с фондом. Отчеты о +неработающих ссылках и другие поправки или предложения можно присылать по +адресу <a href="mailto:webmasters@gnu.org"><webmasters@gnu.org></a>.</p> + +<p> +<!-- TRANSLATORS: Ignore the original text in this paragraph, + replace it with the translation of these two: + + We work hard and do our best to provide accurate, good quality + translations. However, we are not exempt from imperfection. + Please send your comments and general suggestions in this regard + to <a href="mailto:web-translators@gnu.org"> + + <web-translators@gnu.org></a>.</p> + + <p>For information on coordinating and submitting translations of + our web pages, see <a + href="/server/standards/README.translations.html">Translations + README</a>. --> +Мы старались сделать этот перевод точным и качественным, но исключить +возможность ошибки мы не можем. Присылайте, пожалуйста, свои замечания и +предложения по переводу по адресу <a +href="mailto:web-translators@gnu.org"><web-translators@gnu.org></a>. +</p><p>Сведения по координации и предложениям переводов наших статей см. в +<a href="/server/standards/README.translations.html">“Руководстве по +переводам”</a>.</p> +</div> + +<!-- Regarding copyright, in general, standalone pages (as opposed to + files generated as part of manuals) on the GNU web server should + be under CC BY-ND 4.0. Please do NOT change or remove this + without talking with the webmasters or licensing team first. + Please make sure the copyright date is consistent with the + document. For web pages, it is ok to list just the latest year the + document was modified, or published. + + If you wish to list earlier years, that is ok too. + Either "2001, 2002, 2003" or "2001-2003" are ok for specifying + years, as long as each year in the range is in fact a copyrightable + year, i.e., a year in which the document was published (including + being publicly visible on the web or in a revision control system). + + There is more detail about copyright years in the GNU Maintainers + Information document, www.gnu.org/prep/maintain. --> +<p>Copyright © 2016, 2017, 2018 Free Software Foundation, Inc.</p> + +<p>Это произведение доступно по <a rel="license" +href="http://creativecommons.org/licenses/by-nd/4.0/deed.ru">лицензии +Creative Commons Attribution-NoDerivs (<em>Атрибуция — Без +производных произведений</em>) 4.0 Всемирная</a>.</p> + +<!--#include virtual="/server/bottom-notes.ru.html" --> +<div class="translators-credits"> + +<!--TRANSLATORS: Use space (SPC) as msgstr if you don't want credits.--> +<em>Внимание! В подготовке этого перевода участвовал только один человек. Вы +можете существенно улучшить перевод, если проверите его и расскажете о +найденных ошибках в <a +href="http://savannah.gnu.org/projects/www-ru">русской группе переводов +gnu.org</a>.</em></div> + +<p class="unprintable"><!-- timestamp start --> +Обновлено: + +$Date: 2018/12/15 14:46:30 $ + +<!-- timestamp end --> +</p> +</div> +</div> +<!-- for class="inner", starts in the banner include --> +</body> +</html> |