when-free-depends-on-nonfree.html (10677B)
1 <!--#set var="ENGLISH_PAGE" value="/philosophy/when-free-depends-on-nonfree.en.html" --> 2 3 <!--#include virtual="/server/header.pt-br.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>Quando software livre depende de não livre - Projeto GNU - Free Software 11 Foundation</title> 12 13 <!--#include virtual="/philosophy/po/when-free-depends-on-nonfree.translist" --> 14 <!--#include virtual="/server/banner.pt-br.html" --> 15 <!--#include virtual="/philosophy/ph-breadcrumb.pt-br.html" --> 16 <!--GNUN: OUT-OF-DATE NOTICE--> 17 <!--#include virtual="/server/top-addendum.pt-br.html" --> 18 <div class="article reduced-width"> 19 <h2>Quando software livre depende de não livre</h2> 20 21 <address class="byline">por Richard Stallman</address> 22 23 <p>Quando um programa é software livre (livre como em liberdade), isso 24 significa que ele dá a seus usuários <a href="/philosophy/free-sw.html">as 25 quatro liberdades</a> para que controlem o que o programa faz. Na maioria 26 dos casos, isso é suficiente para que a distribuição do programa seja ética; 27 mas nem sempre. Existem problemas adicionais que podem surgir em 28 circunstâncias específicas. Este artigo descreve um problema sutil, em que a 29 atualização do programa livre requer o uso de um programa não livre.</p> 30 31 <p>Se o uso do programa livre depender inevitavelmente de outro programa que 32 não é livre, dizemos que o programa livre está “preso”. Seu código é 33 software livre e você pode copiar partes de seu código em outros programas 34 livre com resultados bons e éticos. Mas você não deve <em>executar</em> o 35 programa preso, porque isso implica entregar sua liberdade ao outro programa 36 não livre.</p> 37 38 <p>Alguém que defende os princípios do software livre não faria conscientemente 39 um programa preso. No entanto, muitos programas livres são desenvolvidos por 40 pessoas ou empresas que não apoiam esses princípios ou que não entendem o 41 problema.</p> 42 43 <p>Dependência de um programa não livre pode assumir várias formas. A forma 44 mais básica é quando a linguagem de programação usada não tem implementação 45 livre. Os primeiros programas que escrevi para o sistema GNU nos anos 80, 46 incluindo GNU Emacs, GDB e GNU Make, tiveram que ser compilados com o 47 compilador C não livre da AT&T, porque não havia compilador C livre até 48 que eu escrevesse o GCC. Felizmente, esse tipo de problema é principalmente 49 uma coisa do passado; agora temos compiladores e plataformas livres para 50 praticamente todas as linguagens que alguém usa para escrever software 51 livre.</p> 52 53 <p>Podemos liberar o programa desse tipo de armadilha traduzindo-o para outra 54 linguagem ou lançando uma implementação livre da linguagem na qual ele está 55 escrito. Assim, quando uma implementação Java completa e livre tornou-se 56 disponível, isso liberou todos os programas livres em Java da <a 57 href="/philosophy/java-trap.html">Armadilha do Java</a>.</p> 58 59 <p>Esse tipo de dependência é conceitualmente simples porque decorre da 60 situação em um determinado instante no tempo. No momento T, o programa livre 61 P não será executado sem a plataforma de programação não livre Q. Para 62 emprestar um termo da linguística, essa relação é “sincrônica”.</p> 63 64 <p>Mais recentemente, vimos outro tipo de dependência em programas de banco de 65 dados, onde você pode compilar e executar qualquer versão do programa no 66 mundo livre, mas a atualização da versão N para a versão N+1 requer um 67 programa não livre.</p> 68 69 <p>Isso acontece porque o formato interno do banco de dados muda da versão N 70 para a versão N+1. Se você estiver usando seriamente a versão N, 71 provavelmente terá um grande banco de dados existente no formato da versão 72 N. Para atualizar para a versão N+1 do software de banco de dados, você 73 precisa reformatar esse banco de dados.</p> 74 75 <p>Se a maneira que você deve fazer isso é executando um programa privativo de 76 reformatação de banco de dados ou usando o serviço do desenvolvedor que é 77 SaaSS (<a href="/philosophy/who-does-that-server-really-serve.html">Serviço 78 como Substituto de Software</a>), o software de banco de dados está preso 79 – mas de uma maneira mais sutil. Qualquer versão única do programa de 80 banco de dados pode ser usada sem software não livre ou SaaSS. O problema 81 surge quando você tenta continuar usando o programa a longo prazo, o que 82 implica atualizá-lo de tempos em tempos; você não pode usá-lo desta forma 83 sem algum software não livre ou equivalente. Este programa de banco de dados 84 está preso ao longo do tempo – podemos chamá-lo de “preso 85 diacronicamente”, pegando emprestado outro termo da linguística.</p> 86 87 <p>Por exemplo, o programa OpenERP (desde que renomeado “Odoo”), embora livre, 88 está preso diacronicamente. O <a href="/software/health/">GNU Health</a>, 89 nosso pacote livre para administrar uma clínica médica, inicialmente usava o 90 OpenERP. Em 2011, o desenvolvedor do GNU Health, Luis Falcón, descobriu que 91 a atualização para a próxima versão do OpenERP exigia o envio do banco de 92 dados (cheio de dados médicos dos pacientes) para o servidor do OpenERP para 93 reformatação. Isto é SaaSS: requer que o usuário do GNU Health (uma clínica) 94 confie sua própria computação e seus dados ao desenvolvedor da empresa 95 OpenERP. Em vez de se curvar, Falcón reescreveu o GNU Health para usar o <a 96 href="https://www.tryton.org">Tryton</a>.</p> 97 98 <p>O uso do SaaSS é inerentemente equivalente à execução de um programa 99 privativo com funcionalidade bisbilhotar e uma <em>backdoor</em> 100 universal. O serviço pode manter uma cópia dos bancos de dados que os 101 usuários reformatam. Mesmo se pudermos confiar na empresa que administra o 102 serviço para nunca mostrar intencionalmente qualquer forma de dados a 103 ninguém, não podemos ter certeza de que ela não será acessada pelas <a 104 href="/philosophy/surveillance-vs-democracy.html">agências de inteligência 105 de vários países</a> ou crackers de segurança (<a 106 href="https://stallman.org/articles/on-hacking.html">por favor, não os chame 107 “hackers”</a>).</p> 108 109 <p>Quando um programa está preso diacronicamente, soltá-lo da armadilha requer 110 mais do que um trabalho de programação única. Em vez disso, o trabalho tem 111 que ser feito continuamente, sempre que houver uma mudança no formato dos 112 dados. Lançar um projeto com um compromisso de longo prazo para continuar 113 fazendo isso não é fácil. Pode ser mais fácil pressionar a empresa a parar 114 de tentar prender usuários – rejeitando o programa preso até que isso 115 aconteça. Dado o quão difícil é liberar o programa, é melhor você ficar 116 longe dele.</p> 117 118 <p>É possível experimentar um programa livre preso diacronicamente sem software 119 não livre, mas se você vai fazer mais do que mexer, você deve evitar 120 usá-lo. Ambas as empresas e indivíduos encontrarão alternativas livres que 121 não apresentam esse problema; tudo o que é preciso para evitar a armadilha é 122 reconhecê-la.</p> 123 </div> 124 125 <div class="translators-notes"> 126 127 <!--TRANSLATORS: Use space (SPC) as msgstr if you don't have notes.--> 128 </div> 129 </div> 130 131 <!-- for id="content", starts in the include above --> 132 <!--#include virtual="/server/footer.pt-br.html" --> 133 <div id="footer" role="contentinfo"> 134 <div class="unprintable"> 135 136 <p>Envie perguntas em geral sobre a FSF e o GNU para <a 137 href="mailto:gnu@gnu.org"><gnu@gnu.org></a>. Também existem <a 138 href="/contact/">outros meios de contatar</a> a FSF. Links quebrados e 139 outras correções ou sugestões podem ser enviadas para <a 140 href="mailto:webmasters@gnu.org"><webmasters@gnu.org></a>.</p> 141 142 <p> 143 <!-- TRANSLATORS: Ignore the original text in this paragraph, 144 replace it with the translation of these two: 145 146 We work hard and do our best to provide accurate, good quality 147 translations. However, we are not exempt from imperfection. 148 Please send your comments and general suggestions in this regard 149 to <a href="mailto:web-translators@gnu.org"> 150 151 <web-translators@gnu.org></a>.</p> 152 153 <p>For information on coordinating and contributing translations of 154 our web pages, see <a 155 href="/server/standards/README.translations.html">Translations 156 README</a>. --> 157 A equipe de traduções para o português brasileiro se esforça para oferecer 158 traduções precisas e de boa qualidade, mas não estamos isentos de erros. Por 159 favor, envie seus comentários e sugestões em geral sobre as traduções para 160 <a 161 href="mailto:web-translators@gnu.org"><web-translators@gnu.org></a>. 162 </p><p>Consulte o <a href="/server/standards/README.translations.html">Guia 163 para as traduções</a> para mais informações sobre a coordenação e a 164 contribuição com traduções das páginas deste site.</p> 165 </div> 166 167 <!-- Regarding copyright, in general, standalone pages (as opposed to 168 files generated as part of manuals) on the GNU web server should 169 be under CC BY-ND 4.0. Please do NOT change or remove this 170 without talking with the webmasters or licensing team first. 171 Please make sure the copyright date is consistent with the 172 document. For web pages, it is ok to list just the latest year the 173 document was modified, or published. 174 175 If you wish to list earlier years, that is ok too. 176 Either "2001, 2002, 2003" or "2001-2003" are ok for specifying 177 years, as long as each year in the range is in fact a copyrightable 178 year, i.e., a year in which the document was published (including 179 being publicly visible on the web or in a revision control system). 180 181 There is more detail about copyright years in the GNU Maintainers 182 Information document, www.gnu.org/prep/maintain. --> 183 <p>Copyright © 2016, 2021 Free Software Foundation, Inc.</p> 184 185 <p>Esta página está licenciada sob uma licença <a rel="license" 186 href="http://creativecommons.org/licenses/by-nd/4.0/deed.pt_BR">Creative 187 Commons Atribuição-SemDerivações 4.0 Internacional</a>.</p> 188 189 <!--#include virtual="/server/bottom-notes.pt-br.html" --> 190 <div class="translators-credits"> 191 192 <!--TRANSLATORS: Use space (SPC) as msgstr if you don't want credits.--> 193 Traduzido por: Rafael Fontenelle <a 194 href="mailto:rafaelff@gnome.org"><rafaelff@gnome.org></a>, 2019-2021.</div> 195 196 <p class="unprintable"><!-- timestamp start --> 197 Última atualização: 198 199 $Date: 2021/09/05 10:37:40 $ 200 201 <!-- timestamp end --> 202 </p> 203 </div> 204 </div> 205 <!-- for class="inner", starts in the banner include --> 206 </body> 207 </html>