when-free-depends-on-nonfree.html (16815B)
1 <!--#set var="ENGLISH_PAGE" value="/philosophy/when-free-depends-on-nonfree.en.html" --> 2 3 <!--#include virtual="/server/header.ru.html" --> 4 <!-- Parent-Version: 1.96 --> 5 <!-- This page is derived from /server/standards/boilerplate.html --> 6 <!--#set var="TAGS" value="essays aboutfs free-nonfree" --> 7 <!--#set var="DISABLE_TOP_ADDENDUM" value="yes" --> 8 9 <!-- This file is automatically generated by GNUnited Nations! --> 10 <title>Когда свободные программы зависят от несвободных - Проект GNU - Фонд 11 свободного программного обеспечения</title> 12 13 <!--#include virtual="/philosophy/po/when-free-depends-on-nonfree.translist" --> 14 <!--#include virtual="/server/banner.ru.html" --> 15 <!--#include virtual="/philosophy/ph-breadcrumb.ru.html" --> 16 <!--GNUN: OUT-OF-DATE NOTICE--> 17 <!--#include virtual="/server/top-addendum.ru.html" --> 18 <div class="article reduced-width"> 19 <h2>Когда свободные программы зависят от несвободных</h2> 20 21 <address class="byline">Ричард Столмен</address> 22 23 <p>Когда программа свободна (от слова “свобода”<a 24 href="#tf1">[1]</a>), это значит, что она дает пользователям <a 25 href="/philosophy/free-sw.html">четыре свободы</a>, так что они 26 контролируют, что делает программа. В большинстве случаев этого достаточно, 27 чтобы распространяемая программа была этичной; но не всегда. Есть 28 дополнительные проблемы, которые могут возникнуть в специфических 29 обстоятельствах. В этой статье описана неочевидная проблема, возникающая, 30 когда обновление свободной программы требует применения несвободной.</p> 31 32 <p>Если пользование свободной программой неизбежно зависит от другой программы, 33 которая несвободна, мы говорим, что свободная программа “в 34 западне”. Ее текст свободен, и у вас может быть возможность копировать 35 ее части в другие свободные программы с хорошими, этичными результатами. Но 36 вы не должны <em>работать</em> с программой в западне, потому что это 37 значит, что вы отказываетесь от свободы и сдаетесь на милость той 38 несвободной программы.</p> 39 40 <p>Тот, кто отстаивает принципы свободных программ, не будет заведомо помещать 41 программу в западню. Однако многие свободные программы разрабатываются 42 людьми или компаниями, которые не особенно поддерживают эти принципы или не 43 осознают проблемы.</p> 44 45 <p>Зависимость от несвободной программы может принимать различные формы. В 46 простейшем случае это язык программирования, у которого нет свободной 47 реализации. Первые программы, которые я написал для системы GNU в 48 восьмидесятых годах XX века, в том числе GNU Emacs, GDB и GNU Make, 49 приходилось компилировать несвободным компилятором Си компании AT&T, 50 потому что свободного компилятора Си не было, пока я не написал GCC. К 51 счастью, такого рода проблемы по большей части отошли в прошлое; сейчас у 52 нас есть свободные компиляторы и платформы почти для всех языков, какие 53 только используются для написания свободных программ.</p> 54 55 <p>Мы можем вызволить программу из западни этого рода, переведя ее на другой 56 язык или выпустив свободную реализацию языка, на котором она написана. Таким 57 образом, когда появилась полная свободная реализация Java, это вызволило все 58 свободные программы на этом языке из <a 59 href="/philosophy/java-trap.html">западни Java</a>.</p> 60 61 <p>Зависимость этого рода концептуально проста, потому что она вытекает из 62 положения, заданного в один момент времени. В момент t свободная программа P 63 не работает без несвободной платформы программирования Q. Заимствуя термин 64 лингвистики, можно сказать, что это “синхроническая” связь.</p> 65 66 <p>Не так давно мы наблюдали зависимость другого рода в программах баз данных, 67 когда можно собрать и работать с любой версией программы в мире свободы, но 68 обновление с версии N до версии N+1 требует несвободной программы.</p> 69 70 <p>Это происходит потому, что внутренний формат базы данных изменяется между 71 версией N и версией N+1. Если вы серьезно пользовались версией N, у вас, 72 вероятно, есть большая база данных в формате версии N. Для обновления 73 программ базы данных до версии N+1 вам нужно преобразовать формат этой базы 74 данных.</p> 75 76 <p>Если это предполагается делать обработкой с помощью несвободной программы 77 преобразования формата или с помощью службы разработчика, которая 78 представляет собой <a 79 href="/philosophy/who-does-that-server-really-serve.html">услугу-замену 80 программы</a>, то программы базы данных в западне — но менее 81 очевидным образом. Любую заданную версию программы базы данных можно 82 применять без несвободных программ и услуг-замен программ. Проблема 83 возникает, когда вы пытаетесь продолжать пользоваться программой длительное 84 время, что связано с периодическим обновлением ее; в этом случае программой 85 невозможно пользоваться без какой-то несвободной программы или ее 86 эквивалента. Такая программа базы данных попадает в западню при движении во 87 времени — мы могли бы назвать это “диахронической 88 западней”, заимствуя другой термин лингвистики.</p> 89 90 <p>Например, хотя программа OpenERP (переименованная впоследствии в 91 “Odoo”) свободна, она в диахронической западне. <a 92 href="/software/health/">GNU Health</a>, наш свободный пакет для управления 93 клиникой, первоначально пользовался OpenERP. В 2011 году 94 разработчик GNU Health Луис Фалкон обнаружил, что обновление до следующей 95 версии OpenERP требует отсылки базы данных (всех медицинских записей о 96 пациентах) на сервер OpenERP для преобразования формата. Это услуга-замена 97 программы: она требует, чтобы клиника, которая пользуется GNU Health, 98 доверила свои собственные вычисления и свои данные компании-разработчику 99 OpenERP. Фалкон не сдался, он перевел GNU Health на <a 100 href="https://www.tryton.org">Tryton</a>.</p> 101 102 <p>Пользование услугой-заменой программы принципиально эквивалентно работе с 103 несвободной программой с функциями слежки, а также универсальной 104 лазейкой. Эта служба могла бы сохранять копию баз данных, формат которых 105 пользователи преобразуют. Даже если мы уверены, что компания, 106 предоставляющая эту услугу, никому никогда ни в каком виде преднамеренно эти 107 данные не покажет, мы не можем быть уверены, что доступ к данным не получат 108 <a href="/philosophy/surveillance-vs-democracy.html"> агентства разведки 109 различных стран</a> или взломщики систем безопасности (<a 110 href="https://stallman.org/articles/on-hacking.html">пожалуйста, не 111 называйте их “хакерами”</a>).</p> 112 113 <p>Когда программа в диахронической западне, вызволение ее из западни требует 114 больше, чем однократной работы по программированию. Работу приходится делать 115 постоянно, каждый раз, когда меняется формат данных. Вести проект, 116 поддерживая решимость продолжать эту работу в долгосрочной перспективе, 117 нелегко. Может оказаться проще оказать давление на компанию, чтобы она не 118 ставила пользователям западню — отказываясь от программы до тех 119 пор, пока она в западне. Учитывая, насколько трудно освободить программу, 120 вам лучше было бы держаться от нее подальше.</p> 121 122 <p>Можно опробовать программу в диахронической западне без несвободных 123 программ, но если вы собираетесь не просто поиграться, вы должны обходить ее 124 подальше. И предприятия, и частные лица найдут прекрасные свободные 125 альтернативы, у которых нет такой проблемы; чтобы избежать этой западни, 126 нужно только распознать ее.</p> 127 </div> 128 129 <div class="translators-notes"> 130 131 <!--TRANSLATORS: Use space (SPC) as msgstr if you don't have notes.--> 132 <h3>Примечание переводчика</h3> 133 <ol> 134 <li id="tf1">...от слова “свобода” — в русском 135 языке, с одной стороны, слова, выражающие понятия “свободный” и 136 “бесплатный”, разделены лучше, чем в английском; с другой 137 стороны, в русскоязычной практике часто перемешиваются понятия 138 “свободный” и “свободно распространяемый”, что 139 далеко не одно и то же.</li> 140 </ol></div> 141 </div> 142 143 <!-- for id="content", starts in the include above --> 144 <!--#include virtual="/server/footer.ru.html" --> 145 <div id="footer" role="contentinfo"> 146 <div class="unprintable"> 147 148 <p>Пожалуйста, присылайте общие запросы фонду и GNU по адресу <a 149 href="mailto:gnu@gnu.org"><gnu@gnu.org></a>. Есть также <a 150 href="/contact/">другие способы связаться</a> с фондом. Отчеты о 151 неработающих ссылках и другие поправки или предложения можно присылать по 152 адресу <a href="mailto:webmasters@gnu.org"><webmasters@gnu.org></a>.</p> 153 154 <p> 155 <!-- TRANSLATORS: Ignore the original text in this paragraph, 156 replace it with the translation of these two: 157 158 We work hard and do our best to provide accurate, good quality 159 translations. However, we are not exempt from imperfection. 160 Please send your comments and general suggestions in this regard 161 to <a href="mailto:web-translators@gnu.org"> 162 163 <web-translators@gnu.org></a>.</p> 164 165 <p>For information on coordinating and contributing translations of 166 our web pages, see <a 167 href="/server/standards/README.translations.html">Translations 168 README</a>. --> 169 Мы старались сделать этот перевод точным и качественным, но исключить 170 возможность ошибки мы не можем. Присылайте, пожалуйста, свои замечания и 171 предложения по переводу по адресу <a 172 href="mailto:web-translators@gnu.org"><web-translators@gnu.org></a>. 173 </p><p>Сведения по координации и предложениям переводов наших статей см. в 174 <a href="/server/standards/README.translations.html">“Руководстве по 175 переводам”</a>.</p> 176 </div> 177 178 <!-- Regarding copyright, in general, standalone pages (as opposed to 179 files generated as part of manuals) on the GNU web server should 180 be under CC BY-ND 4.0. Please do NOT change or remove this 181 without talking with the webmasters or licensing team first. 182 Please make sure the copyright date is consistent with the 183 document. For web pages, it is ok to list just the latest year the 184 document was modified, or published. 185 186 If you wish to list earlier years, that is ok too. 187 Either "2001, 2002, 2003" or "2001-2003" are ok for specifying 188 years, as long as each year in the range is in fact a copyrightable 189 year, i.e., a year in which the document was published (including 190 being publicly visible on the web or in a revision control system). 191 192 There is more detail about copyright years in the GNU Maintainers 193 Information document, www.gnu.org/prep/maintain. --> 194 <p>Copyright © 2016, 2021 Free Software Foundation, Inc.</p> 195 196 <p>Это произведение доступно по <a rel="license" 197 href="http://creativecommons.org/licenses/by-nd/4.0/deed.ru">лицензии 198 Creative Commons Attribution-NoDerivs (<em>Атрибуция — Без 199 производных произведений</em>) 4.0 Всемирная</a>.</p> 200 201 <!--#include virtual="/server/bottom-notes.ru.html" --> 202 <div class="translators-credits"> 203 204 <!--TRANSLATORS: Use space (SPC) as msgstr if you don't want credits.--> 205 <em>Внимание! В подготовке этого перевода участвовал только один человек. Вы 206 можете существенно улучшить перевод, если проверите его и расскажете о 207 найденных ошибках в <a 208 href="http://savannah.gnu.org/projects/www-ru">русской группе переводов 209 gnu.org</a>.</em></div> 210 211 <p class="unprintable"><!-- timestamp start --> 212 Обновлено: 213 214 $Date: 2021/09/05 10:37:40 $ 215 216 <!-- timestamp end --> 217 </p> 218 </div> 219 </div> 220 <!-- for class="inner", starts in the banner include --> 221 </body> 222 </html>