Archive for the ‘ Capítulo 1 ’ Category

Principais consequências

Principais consequências

O software livre traz muitas vantagens e poucos problemas. Vejamos, como exemplo, alguns deles.

Problemas

Entre os problemas, provavelmente o fundamental seja a impossibilidade de certos modelos de negócio (especialmente os baseados na venda de licenças de uso), que faz necessário, como já foi explicado, explorar outros modelos. A partir de um ponto de vista prático, ainda é comum outro problema: a falta de suporte e de empresas que proporcionem soluções de qualidade e com um serviço associado suficiente (especialmente para usuários não familiarizados). Felizmente, este problema está desaparecendo, pouco a pouco, mas de forma clara.

Um problema indireto, mas muito importante, é a própria originalidade do modelo de software livre. É tão diferente, em tantos aspectos, do modelo proprietário tradicional, ao qual tantos estão tão acostumados, que é difícil de entendê-lo sem uma mínima formação. Infelizmente, essa falta de formação não permite que muitos usuários e produtores de software livre se beneficiem do modelo como poderiam e que não utilizem os mecanismos e as possibilidades a sua disposição.

Um exemplo dessas diferenças é o modelo de custo. É fácil e rápido entender que no caso do software livre em geral tende a não haver custos de aquisição de licenças. Contudo, é necessário ter em contra muitos outros custos (algo que também ocorre no caso do software proprietário) que influem de várias formas em cada circunstância particular. Os custos de transição, formação, instalação, manutenção etc., estão presentes, enquanto que os modelos de cálculo usados pelo software proprietário não são de aplicação habitual para o software livre. Outro exemplo interessante são os mecanismos para alcançar qualidade, que, no caso do software livre são derivados da colaboração voluntária de pessoas que contribuem para o desenvolvimento ou que descobrem e informam sobre erros nos ambientes e situações inimagináveis pelo desenvolvedor original. Também são diferentes os mecanismos de concorrências já descritos.

Vantagens e novas possibilidades

O usuário de programas livres, seja um indivíduo ou uma empresa, pode encontrar uma verdadeira concorrência em um mercado (o do software) que tem uma indubitável tendência ao monopólio. Já não depende necessariamente do suporte do produtor de software: pode haver muitas empresas que, dispondo do programa e de conhecimentos suficientes, possam fazer negócio com a manutenção, a adaptação e a melhoria, competindo umas com as outras, mesmo quando se baseiam no mesmo programa. Por isso, o usuário poderá escolher quem contrata sem ter que mudar de programa.

Por outro lado, o usuário de software livre pode avaliar com muito cuidado (ou deixar que outros o façam) a qualidade dos programas. A disponibilidade do código fonte e a existência de comunidades que investigam com todo cuidado cada modificação do programa permitem novas possibilidades neste campo. Já não há caixas pretas no tange ao que é preciso confiar porque sim, nem se depende da estratégia de um produtor, que em um dado momento pode decidir deixar de comercializar um produto, com o transtorno que isso gera para seus usuários.

A avaliação dos produtos antes de adotá-los é também muito mais simples, já que basta instalar os produtos alternativos em nosso ambiente real experimentar, enquanto que com o software proprietário é necessário suprir-se de informes externos ou negociar testes com os provedores, o que não é sempre possível.

Dada a liberdade de modificar o programa para uso próprio, o usuário pode personalizá-lo ou adaptá-lo a suas necessidades, corrigindo erros, se houver. Se ele tiver os conhecimentos e os recursos necessários, ou se não puder contratar o serviço, poderá fazê-lo ele mesmo, como já foi comentado. O controle passa, em grande parte, do produtor ao usuário.

Repercussões sociais

Faz tempo que o papel do software é fundamental em muitos aspectos da vida diária, e também para o funcionamento da sociedade. Portanto, o modo como se produz, se modifica e se redistribui o software tem um grande impacto na sociedade em seu conjunto.

Deste ponto de vista, o software livre nos está mostrando uma nova forma de tratar com os programas. Eles deixam de ser algo alheio, que somente podemos usar em determinadas circunstâncias, e sobre os quais não temos nenhum controle. Pelo contrário, podemos relacioná-los como queremos, sem limitações impostas pelo produtor, podendo adaptá-los, melhorá-los, fazê-los mais úteis.

Isso não é importante somente para os técnicos de software, que podem criá-lo e modificá-lo. Da mesma forma que a ausência de restrições ao conserto de carros por parte dos mecânicos beneficia todos, mesmo os que não sabem de mecânica, a possibilidade de que um programa possa ser melhorado beneficia toda a sociedade.

Além disso, existem outras vantagens óbvias no que se refere à difusão de novas tecnologias na sociedade. Se um programa livre é de interesse para muitas camadas sociais, difundi-lo a todos os seus membros é muito barato e (potencialmente) muito rápido. Naturalmente, a internet ajuda muito neste processo.

Mas o principal impacto social do software livre não é tecnológico, mas de outra natureza. Ele está abrindo um novo caminho em todos os domínios da produção de obras intelectuais. Pela primeira vez em muito tempo, e com êxito na prática, assistimos a um modelo de produção intelectual baseado na cópia sem restrições, que permite que qualquer um melhore as obras, fundado na produção mediante a colaboração de pessoas com diferentes objetivos. O modelo funcionou em um domínio tão complexo e tão difícil como o software. Por que não poderia funcionar em outros? Nos últimos anos, muitas iniciativas estão explorando, precisamente, como se pode transportar este modelo a âmbitos como a música, as obras literárias, a produção multimídia. Com o tempo, este poderia ser o maior impacto do software livre na sociedade.

<< Por que se produz software livre?

>> Algumas breves conclusões

Anúncios

Por que se produz software livre?

Por que se produz software livre?

Sem dúvida as motivações que qualquer desenvolvedor tem para produzir software livre são uma combinação pessoal e intransferível. Mas, para clarear um pouco as ideias, podemos falar de duas grandes linhas de motivação:

  • A ética, que poderia estar simbolizada pela Free Software Foundation, herdeira e seguidora da cultura hacker.[1] Esta linha argumenta que o software é conhecimento e deve poder ser difundido sem restrições. Sua ocultação é considerado uma atitude antissocial e a possibilidade de modificar programas, uma forma de liberdade de expressão.
  • A pragmática, que poderia estar simbolizada pela Open Source Initiative. Esta linha argumenta fundamentalmente vantagens técnicas e econômicas e coloca ênfase nas características práticas do software livre (tanto para quem produz software como para outros atores e mesmo para a sociedade em geral).

Essas linhas estão presentes em todas as partes no mundo do software livre, começando pelos dois nomes (free software, open source software) pelos quais são conhecidas em inglês. De fato, esses dois nomes são utilizados também para caracterizar a free software community e a open source community, cada uma delas identificada ou com os motivos éticos ou com os práticos. De toda forma, e com um pouco mais de perspectiva, poderíamos considerar as razões éticas e as práticas como dois extremos de um espectro no qual cada pessoa interessada no software livre poderia se situar segundo a combinação de motivações que a movem.

Além dessas duas grandes motivações, há muitas outras razões para trabalhar no desenvolvimento de software livre. Por exemplo, Linus Torvalds menciona sempre a diversão como uma de suas principais motivações para trabalhar no Linux e sem dúvida há muitos que simplesmente trabalham em software livre porque lhes pagam por isso (algo possível pois existem modelos de negócios viáveis, como será comentado mais adiante).

Coopetição

Dito tudo isso, é importante observar que, independente das motivações de cada um, e mesmo da comunidade ao que considera pertencer, o software que todos eles produzem é o mesmo. Podem ocorrer (e de fato se ocorrem habitualmente) situações em que uma empresa produz um programa livre (por motivos estritamente práticos, com o fim de apoiar um modelo de negócio) que é logo melhorado por um voluntário que trabalha por motivos éticos e que é finalmente adaptado a um novo ambiente por outro que o faz somente para passar um bom tempo.

Dessa maneira, o mundo do software livre é altamente cooperativo. As características próprias das licenças e a cultura da maioria das comunidades facilitam enormemente a colaboração entre atores que, em muitos casos, nem sequer se conhecem, e que trabalham com motivações muito diferentes. A grande quantidade de desenvolvedores os quais têm uma motivação com grande componente ético assegura, além disso, que existam agentes especificamente interessados em cooperar para conseguir seus fins. E também os que estão por motivos práticos encontram na cooperação, geralmente, uma estratégia vantajosa.

Mas o mundo do software livre é também fortemente competitivo. Qualquer um pode melhorar um programa. Todos os desenvolvedores trabalham “em aberto” e as melhores versões são rapidamente adaptadas pelos usuários e por outros desenvolvedores. Há poucos custos derivativos de mudar para outra versão que é quase igual mas tem alguma vantagem. As empresas que produzem software no mesmo domínio competem fortemente entre si (pense-se, por exemplo, em todas as que produzem distribuições de GNU/Linux que são, no fundo, muito parecidas). Mas os projetos com um alto componente voluntário também acabam competindo por ter a melhor solução (é bem conhecida a competição entre GNOME e KDE por ter o melhor ambiente de escritório).

Para designar esta situação em que os atores estão ao mesmo tempo competindo e cooperando, usa-se o termo “coopetição”, muito adequado para descrever a situação. São muitos os que acham que o êxito e o grande crescimento do software livre têm muito a ver com a grande potência desses dois mecanismos que trabalham juntos, retroalimentando-se, potencializando-se um ao outro.

Modelos de negócio

Sem ânimo de oferecer em tão pouco espaço uma visão panorâmica completa dos modelos de negócio usados para produzir software livre, convém mostrar algumas pinceladas sobre este tema, respondendo, mesmo brevemente, à pergunta de “como se pode viver da produção de software livre?”. O que está em questão, no fundo, é a sustentabilidade do modelo, ao menos em certa medida. Somente se o mundo do software livre conseguir recursos suficientes (geralmente na forma de esforço de desenvolvedores) poderá produzir a quantidade e qualidade de programas de que necessitamos. E muitos desses recursos estão ligados a que existam suficientes remunerações (desde os programadores que necessitam viver, comer e essas coisas, até que as empresas que esperam ter benefícios).

Repassemos, portanto, quais modelos de negócio estão sendo objeto de exploração em relação à produção de software livre. Em geral, quase todos estão baseados na prestação de serviços a terceiros. Esses serviços rentabilizam de uma ou outra forma o software que foi produzido e produzem um benefício pelo qual o terceiro está disposto a pagar. Por exemplo, pode haver quem esteja interessado em ter um programa com certas adaptações pelas quais está disposto a pagar. Em geral, quem está melhor colocado para oferecer essas melhoras com boa qualidade e a bom preço, é o produtor original do programa, que dessa maneira obtém receitas.

Este simples exemplo ilustra muito bem um dos principais fundamentos desses modelos de negócio. O software não é visto como um produto que se comercializa: já vimos que o software livre pode ser redistribuído sem restrições e assim é difícil encontrar quem esteja disposto a pagar simplesmente por recebê-lo. Portanto, o software tem de ser entendido de outra forma: como um serviço. No exemplo anterior, o serviço é a adaptação do programa, pela qual o terceiro está disposto a pagar. Desse modo, a realização de melhoras, adaptações, integrações etc., torna-se um dos casos mais habituais de negócio baseado na produção de software.

Existem muitos outros modelos, muitos deles não centrados na produção. De fato, em muitos casos o software livre é na realidade um subproduto de outra atividade principal, que é a que proporciona os rendimentos. Por exemplo, o software livre pode ser um valor adicionado para vender aparatos eletrônicos ou serviços de manutenção de sistemas de informática.

Sem entrar em mais detalhes, hoje em dia, a pergunta não é tanto se é possível encontrar modelos de negócio baseados em software livre (ou, de outra maneira, se é possível viver do software livre). Inumeráveis casos já demonstraram que não é somente possível, mas também, até certo ponto, comum. A pergunta interessante é qual é o melhor modelo de negócio em determinadas circunstâncias. Respondê-la adequadamente (e com a criatividade suficiente) depende provavelmente da sustentabilidade em longo prazo do mundo do software livre.


[1] Aqui usamos hacker no sentido do Jargon File, que, entre outras, inclui a definição: “Pessoa que desfruta explorando os detalhes dos sistemas programáveis e de como aproveitar suas capacidades, em oposição à maioria dos usuários, que preferem aprender somente o mínimo necessário”. O término é difícil de traduzir, mas poderíamos dizer que se refere a alguém que é muito bom no “seu”, sendo neste caso “o seu” o desenvolvimento de software. Quem estiver interessado, pode ler o breve mas interessante “Why Software Should Not Have Owners” [Em português, “Por que o software livre não deve ter proprietários”: http://www.gnu.org/philosophy/why-free.pt-br.html%5D de Richard Stallman, que resume alguns aspectos desta ética.

<<  Aspectos legais

>> Principais consequências

Aspectos legais

Aspectos legais

Licenças, licenças, licenças

Legalmente falando, a situação dos programas livres não é muito diferente dos proprietários: ambos os tipos são distribuídos sob licença. O que os diferencia é precisamente, tal qual foi visto, o que essa licença permite.

As leis sobre propriedade intelectual (no caso espanhol, a Lei de Propriedade Intelectual, e as diretivas da União Europeia aplicáveis) estipulam que, se não há permissão explícita, não se pode fazer quase nada com um programa de computador, mesmo se ele foi comprado. Somente o proprietário do programa (normalmente seu produtor) pode conceder essa permissão, geralmente mediante uma licença. Além disso, é preciso ter em conta que a propriedade do programa não muda porque são concedidas licenças sobre ela: elas não supõem transferência de propriedade, somente concedem alguns direitos específicos. No caso do software proprietário, esses direitos são normal e unicamente de uso (e tipicamente com restrições). No software livre se concedem, além desse, também os direitos de distribuição e modificação.

De fato, a principal diferença entre as licenças de software livre e as de programas proprietários está no fato de que as primeiras, ao invés de restringir o que se pode fazer, concedem certas permissões explícitas. Ainda assim, convém recordar que as licenças livres também podem impor condições, e, de fato, é habitual que o façam. Normalmente essas condições estão orientadas a defender alguns direitos do produtor (como a menção de autoria) ou a procurar manter a liberdade do software conforme ele vá passando de mão em mão (como é o caso das licenças robustas, das quais se falará mais adiante).

Tipos de licenças

A variedade de licenças livres é grande, ainda que existam algumas poucas que são usadas pela imensa maioria dos projetos. Por um lado, muitos projetos não querem ou não podem dedicar recursos para elaborar uma licença própria. Por outro, há muitas vantagens em poder se referir a uma licença amplamente conhecida e sobre a qual se pode encontrar informação com facilidade.

Para estudar todas essas licenças, podemos começar dividindo-as em duas grandes famílias: as que não impõem condições especiais à segunda redistribuição (as quais chamaremos licenças permissivas) e as que sim o fazem (as quais chamaremos licenças robustas ou copyleft). Ambas são reconhecidas como livres, mas têm consequências bem diferentes. A primeira família somente especifica que pode-se usar, redistribuir e modificar o software, mas não impõem condições especiais em caso de redistribuição. Isso permite, por exemplo, que o programa possa ser redistribuído como software proprietário. A segunda inclui licenças ao estilo da GNU GPL, que impõem condições em caso de redistribuição, forçando que sejam seguidas cumprindo as condições da licença na cadeia de redistribuições.

Enquanto as licenças permissivas têm ênfase na liberdade de quem recebe o programa, já que permite fazer quase tudo o que se queira com ele (em termos de condições de futuras redistribuições), as robustas promovem a liberdade de qualquer um que potencialmente possa receber algum dia um trabalho derivado do programa (já que obriga que as modificações e redistribuições seguinte respeitem os termos da licença original).

Licenças permissivas

As licenças permissivas, também chamadas liberais ou minimalistas, permitem, praticamente sem condições, o uso, a redistribuição e a modificação. A partir de um certo ponto de vista, isso pode ser entendido como uma máxima garantia de liberdade, mas, por outro, também pode supor uma despreocupação com as liberdades que terceiros, os que não recebem o programa (ou o programa modificado) de seu autor original, possam exercer. Uma das consequências mais importantes desse tipo de licença é que o programa pode ser redistribuído, inclusive sem ter sido melhorado, usando licenças proprietárias.

A primeira grande licença dessa família é a BSD (até o ponto em que às vezes todas elas são chamadas “licenças tipo BSD”). Esta licença (Berkeley Software Distribution) foi usada durante a década de 1980 para publicar as modificações de Unix que a Universidade da Califórnia, em Berkeley (EUA), fez. A BSD obriga a reconhecer a autoria original e a lhe dar crédito, sem que seja obrigada a redistribuição de fontes ou binários. Naturalmente, concede também permissão para realizar modificações e juntar o programa a outros programas quase sem restrições.

Essa permissividade das licenças BSD foi considerada tradicionalmente como muito adequada para difundir standards, já que permite tanto implementações livres como proprietárias, usando o mesmo trecho de código. De fato, esta é, sem dúvida, uma das razões da extraordinária e rápida difusão de vários protocolos de Internet e das interfaces usadas para interatuar com eles, já que toda a indústria incluiu em seus produtos código derivado do original que era distribuído sob a licença BS. A BSD não é desde logo a única licença permissiva. Outras muito populares são a MIT/X Window, a do Tcl/Tk e a do Apache. Sistemas muito populares, como os sistemas operacionais FreeBSD, NetBSD e OpenBSD, os servidores de web do projeto

Apache ou o sistema de janelas X Window estão protegidos por essas licenças.

Licenças robustas

As licenças robustas impõem certas condições em caso de redistribuição, assegurando que o software passe de mão em mão conservando suas liberdades originais. Como já foi comentado, isso pode ser considerado uma limitação à liberdade de recebe o programa ou, pelo contrário, uma preocupação para que o programa siga sendo livre à medida que é redistribuído.

A GNU GPL (Licença Pública Geral do projeto GNU, conhecida geralmente simplesmente como GPL) é a mais conhecida entre as licenças robustas. É também, com diferença, a licença mais usada pelos projetos livres. Está promovida pela Free Software Foundation, e foi originalmente projetada para o software que essa fundação distribuía. Com o tempo, seu uso foi muito mais além e hoje são milhares os programas que a utilizam, desde o kernel Linux até ambientes como GNOME e KDE, sem esquecer programas de escritório como OpenOffice o navegadores como Firefox.

A GPL é muito interessante desde o ponto de vista legal, já que faz um uso muito criativo da legislação de copyright. Ao invés de restringir os direitos dos usuários, ela se baseia nas prerrogativas concedidas ao autor para obrigar que o software possa ser distribuído somente como software livre. Daí o termo “copyleft”, usado originalmente para esta licença, e com o tempo estendido a todas as licenças que aqui chamamos robustas.

A GPL permite a redistribuição em forma binária, mas também obriga que o código fonte seja disponibilizado a quem recebe os binários. Pode ser feito qualquer tipo de modificação, mas se o programa modificado for redistribuído, o código fonte completo da nova versão também tem de ficar disponível a quem receba a versão binária, que poderá, por sua vez, modificá-lo se desejar.

A GPL define também a obra derivada de forma que se considera como tal qualquer conjunto de software que a inclua. Isso impede que possam ser redistribuídos programas que incluam uma combinação de código protegido pela GPL e de código proprietário. Há quem chame isso de “efeito viral” da GPL, enquanto outros preferem ver nisso uma espécie de “efeito de herança”. Em todo caso, a GPL foi projetada especificamente com essa característica, precisamente para assegurar que não pudesse ser combinada facilmente com licenças privativas.

Na prática, esta combinação não é somente impossível com licenças privativas, mas também com outras licenças livres que são incompatíveis com a GPL. Incompatível, neste contexto, quer dizer que a outra licença, sendo livre, restringe algum dos direitos que a GPL garante, seja contradizendo alguma cláusula ou impondo alguma condição nova. Isso não implica que não se possam usar simultaneamente programas com ambas as licenças, ou até mesmo integrá-los. Somente supõe que esses programas integrados não podem ser redistribuídos, pois é impossível cumprir simultaneamente as condições de redistribuição de ambas as licenças.

Outra licença robusta, também promovida pela Free Software Foundation, é a LGPL (Lesser GPL, ou GPL menor). Originalmente, era pensada para proteger bibliotecas de programação que pudessem ser usadas tanto por sistemas livres como por proprietários, no momento em o que a FSF considerava isso como de importância estratégica. É muito parecida com a GPL, com a diferença principal de que o software protegido por ela pode ser combinado com software que tenha outras licenças, até mesmo proprietárias e de que o resultado possa ser redistribuído. Em outras palavras, as condições da LGPL não são herdadas por todo o sistema combinado, somente pela parte que deriva diretamente do original protegido por ela.

Existem mais licenças robustas, mas estas duas são as mais populares.

Distribuição sob várias licenças

Até agora, considerou-se que um programa é redistribuído sob uma única licença. No entanto, quem o produziu pode conceder uma licença distinta cada vez que o distribui, se isso o interessa. Isso leva a interessantes modelos de licenciamento sob duas ou mais licenças, conforme o caso. Por exemplo, existem programas livres, produzidos integralmente por uma empresa (MySQL é um dos casos mais conhecidos), que são distribuídos geralmente com GPL, mas que também podem ser licenciados de forma proprietária se um cliente o exige (e está disposto a pagar por ele), por exemplo, porque não que ou não deseja cumprir as condições da GPL.

<< Introdução

Por que se produz software livre?>>

Algumas breves conclusões

Algumas breves conclusões

O mundo do software livre está em clara ebulição. Desenvolvedores voluntários movidos por motivos éticos se misturam a empresas ávidas por melhorar seus resultados. Cooperando e competindo ao mesmo tempo. Em todo esse processo, aparecem novos modelos de negócio, novas consequências sociais, e novas possibilidades para os usuários são observadas. De certo modo, o software livre é uma vanguarda que está experimentando, desde muitos pontos de vista, novos modelos de produção de obras intelectuais. Modelos nos quais não se restringe a liberdade do usuário para proteger a dos autores. Modelos nos quais qualquer um pode melhorar o trabalho dos outros. Modelos nos quais, ao final, estamos redescobrindo como cooperar. Os próximos anos dirão até que ponto todas essas novas possibilidades nos levam para situações sustentáveis a longo prazo e também até que ponto este modelo é transferível a outros campos da produção intelectual.

Talvez, com o passar do tempo, recordemos que foram os pioneiros do software livre quem mudaram as regras de algo tão profundamente incorporado nas sociedades humanas como a produção de conhecimento.

<<  Principais consequências

>> Guía do autor de música livre: musicalibre.info