Os problemas do software livre

O software livre também tem a sua fatia de problemas exclusivos, que não são encontrados no software proprietário. Existem pelo menos quatro deles que precisam ser destacados para que produtores e consumidores possam se beneficiar mais e melhor dos softwares que, respectivamente, produzem e usam. Isto porque software livre, por si só, não é solução para nada. Para o desenvolvedor, ele precisa ser entendido como uma modalidade de desenvolvimento, e para o usuário como uma alternativa para aquisição.

Primeiro, software livre não te dá, necessariamente, livre acesso ao código fonte. Nem mesmo para vê-lo. Muitas vezes você precisa ser parte da comunidade de desenvolvedores de uma organização para poder ter acesso ao código. E mesmo que você seja um membro da equipe de desenvolvimento do, digamos, Firefox, isto não te dará o direito de mudar o código ao seu bel prazer. Software livre não significa desenvolvimento livre.

Muito pelo contrário, a maioria dos grandes e mais interessantes projetos possui toda uma hierarquia definida na equipe e modularização do código. Se por um lado esta divisão e controle garante maior eficiência ao desenvolvimento, por outro, torna o processo mais rígido e menos prazeroso, obrigando programadores a muitas vezes trabalhar em tarefas que não gostariam. Veja, por exemplo, a história de Con Kolivas, ex-desenvolver do núcleo do Linux e que parou de contribuir porque cansou de ter suas contribuições rejeitadas. Como consequência, todo software livre possui sempre o risco potencial de se dividir, o chamado ‘fork’. Em outras palavras, um mesmo projeto pode se transformar em dois ou três porque alguns programadores não estão satisfeitos e preferem criar uma nova continuação do projeto a suas maneiras.

Outro problema deste tipo de controle é a estratégia de algumas empresas em iniciar um projeto de software livre para atrair desenvolvedores e baratear seu custo de desenvolvimento. Depois, com um software um pouco mais robusto e bem acabado, esta mesma empresa fecha o projeto e torna-o proprietário. Nem sempre é possível reaver o código fonte depois que isto ocorre e os programadores que haviam contribuído para o código ficam a ver navios. Assim, seja  porque um grupo de programadores dividiu o projeto ou porque uma empresa fechou seu código, os usuários de software livre correm sempre o risco de ficarem desamparados da noite para o dia.

Segundo, software livre não é software gratuito. Este é um erro muito comum mas que pode ter graves consequências. O Google, por exemplo, tem um discurso muito bonito de uso de software livre. Mas a maioria de seus principais produtos e serviços não são livres, são gratuitos. O conceito de livre é uma questão de liberdade. Deve ser pensado como em “liberdade de expressão”, não em “cerveja grátis”.

Não é possível nem ao menos ver o código fonte do Gmail, do Google Reader, Google Docs, do mecanismo de busca, dentre tantos outros produtos da empresa. Não temos esta liberdade. Pior, os dados dos usuários ficam nos servidores do Google e não nos computadores dos usuários. Para Richard Stallman [en], fundador da Free Software Foundation (Fundação para o Software Livre), “a computação na nuvem é uma armadilha (…) O conceito de usar programas na web como o Gmail do Google é pior que a estupidez.” Isto porque, em tese, não dá para simplesmente copiar os seus e-mails do Gmail de uma pasta para outra como você faria se estivesse usando um programa instalado no seu computador. É preciso toda uma sequência de passos para que você possa mover os seus e-mails para outro provedor. E, pior, você não tem como saber de fato o que uma empresa como o Google está realmente fazendo com seus dados.

Ter a liberdade de fazer o que quiser com o código-fonte de um software não significa que será possível usufruí-la. A maioria dos usuários não o faz (nem se importa) e apenas usa o software livre que também é grátis. Para ter a liberdade de alterar o código é preciso entendê-lo e/ou custear uma equipe ou uma empresa terceira para mantê-lo atualizado e em sintonia com seus interesses (ou da sua empresa).

Terceiro, software livre não é necessariamente melhor para o usuário final. Michelle Levesque, por exemplo, discute em um artigo científico seu (publicado no periódico First Monday – de acesso gratuito ao conteúdo) cinco potenciais problemas do software livre neste sentido: 1) A frequente falta de investimentos no desenvolvimento da interface com o usuário, 2) a pouca documentação disponível, 3) a falta de foco em tornar o software mais robuto, 4) a falta de foco também no desenvolvimento de recursos para o usuário final e, finalmente, 5) muitas vezes por teimosia, a recusa de alguns programadores em aprender com o software proprietário e a usar inovações destes no software livre que desenvolvem.

A comparação entre a qualidade de software livre e proprietário é tema de muita discussão. Em geral, pode-se dizer que na média o software livre tem menos erros que os proprietários. Isto ocorre porque o software livre depende de sua qualidade para sobreviver já que não investe praticamente nada em marketing. Entretanto, um estudo publicado na Business Week em 2006 afirma que dentre os melhores softwares de cada um dos 15 mercados analisados, o software proprietário está na frente em 11. Em outras palavras, há muito mais software proprietário ruim que livre mas os melhores softwares proprietários são muito melhores que os melhores livres.

Quarto, software livre nem sempre é mais barato como a ilusão da palavra “livre” faz parecer.  Afinal, os produtores dele também precisam ganhar dinheiro de alguma forma. Mas é difícil medir os custos de software de maneira agregada. Cada implantação tem suas particularidades e custos específicos, o que prejudica a medição precisa. Assim, sites que defendem o software proprietário publicam estudos a seu favor, da mesma forma que sites a favor do software livre o fazem com estudos a favor do software livre. Sobra para o usuário negociar o seu caso com as opções disponíveis.

Por exemplo, por conta da competição com o software livre empresas de software proprietário estão cada vez mais dispostas a baixar seus preços tornando-as uma opção mais barata – se já não a são. Mais ainda se os usuários que usarão o sistema proprietário já estiverem familiarizado com ele e se ele for, de fato, melhor. Mudar de software (independente da licença) significa arcar com os custos da mudança (os chamados “switching costs”), o que pode significar altos custos na troca do servidor, no treinamento dos usuários, e na migração dos dados.

Em outro cenário, ao optar por desenvolver um software livre que não existe, com o objetivo de substituir um software proprietário, muito dinheiro vai para o ralo por um motivo muito simples: Para a maioria dos projetos, pode não haver adesão de desenvolvedores voluntários o suficiente. Aí, no meio do caminho o projeto corre o risco de ser interrompido. E, neste caso, todos os esforços e recursos usados até aquele momento irão para o ralo também. Veja, por exemplo, os relatos de quem trabalha em projetos de software livre do governo federal:

“(…) Realmente falta massa. É um tanto difícil criar uma comunidade, um ecossistema de colaboração, já observado em projetos como Drupal e WordPress. No desenvolvimento do i-Educar, no qual participo, basicamente essa tarefa tem sido feita por 2 pessoas, num universo de 5.500 pessoas cadastradas na comunidade do projeto.

A missão é difícil. Muitos prestadores de serviços nesses softwares são despreparados e não possuem ainda a consciência de que é necessário contribuir aos projetos, nem que sejam pequenas contribuições.”

Demais comentários na discussão em torno dos projetos do governo também contém reclamações da burocracia para participação e da baixa qualidade atual dos mesmos. A iniciativa do governo é louvável mas é preciso a ele perceber que não é qualquer projeto que dará certo no modelo de desenvolvimento do software livre.

Na próxima semana: porque estes problemas são inerentes ao atual paradigma de desenvolvimento de software livre.

PS: As imagens que ilustram este texto são de Phillip Torrone e fazem parte do guia de 2009 da revista Make para hardwares desenvolvidos de forma aberta e livre.

Posts Relacionados:

Category: Tecnologia da Informação | Tags: , , , , 6 comments »

6 Responses to “Os problemas do software livre”

  1. Fabricio

    Muito bom. Conheço muitos bons desenvolvedores de software, e quase todos utilizam algum “software livre” (“cerveja grátis”). Contudo é muito difícl encontrar alguém que tenha uma participação ativa na construção ou evolução de um software livre.

  2. Luciana Fujii

    Eu achei seu texto muito confuso e sem foco. Não entendi muito o que a Google ter softwares de uso gratuito, mas que não são livres tem a ver com uma desvantagem do software livre, entre outros.

    Portanto, vou ficar só nos pontos principais que acho que entendi. Primeiro: “software livre não te dá, necessariamente, livre acesso ao código fonte.”. Mentira. Para um software ser livre você tem que ter acesso ao código fonte se tiver acesso ao binário. Ou seja, se você pode baixar o instalador do firefox, você também pode baixar o código. Isso vem da definição de software livre http://www.gnu.org/philosophy/free-sw.html. Não tem como ter a liberdade 1 sem o código. Se não for assim, não é livre e você está confundindo com outra coisa.

    Continuando com a definição de software livre, se o software é livre também significa que você tem o direito de modificá-lo e de distribuir suas modificações. Veja bem que isso não significa, porém, que você vai ter poderes de decidir quais são os rumos que um projeto vai tomar. Se você quer o seu Gimp de uma forma, você pode modificar, usar do seu jeito e distribuir pra quem você quiser. Mas como a próxima versão do Gimp será, isso não é você quem decide a não ser que você faça parte da comunidade, nem haveria de ser não é mesmo? Se você quiser, você tem a liberdade de fazer o seu próprio projeto do seu jeito usando o software que você baixou como base. É o que se chama “fork” que você colocou como uma coisa negativa, mas que pode ser muito saudável em alguns casos.

    Quanto ao prazer em trabalhar com software livre que você cita, eu não entendi se você fala sobre trabalho voluntário ou não, se fala em contribuir com grandes projetos em contraposição a fazer o seu próprio. Mas, se contribuir com um grande projeto de software livre pode dar trabalho, especialmente pela exigência técnica, contribuir para um grande projeto de software proprietário é praticamente impossível e, se você conseguisse, provavelmente não seria mais dono do seu trabalho, não poderia distribuí-lo, etc.

    “Ter a liberdade de fazer o que quiser com o código-fonte de um software não significa que será possível usufruí-la”. Você pode não usufruí-la diretamente, mas simples usuários de software livre se beneficiam porque:
    - Usam um software auditado, que foi verificado por várias pessoas e tem muito menos chance de conter código malicioso do que software proprietários;
    - São softwares que recebem mais correções dos usuários, provavelmente têm menos defeitos;
    - Podem trocar de software com facilidade, pois é provável que já existam softwares pra importar os dados daquele software específico em softwares equivalentes, o que não acontece quando o formato é obscuro e o software proprietário;
    Fora o fato de poderem distribuir o software para amigos que fiquem interessados, ao invés de ter que falar que isso seria ilegal.

  3. Ricardo

    Obrigado por seu comentário, Luciana, seja bem vinda ao blog! Espero que volte mais vezes.

    Tentarei ser mais claro desta vez. O fato do Google ser citado aqui tem a ver com a confusão que os usuários fazem entre software livre e gratuito. E o problema está nesta confusão. As pessoas usam o Google achando que ele é livre, e não é. Para o Google é vantajosa a confusão mas os usuários estão sendo, em parte, enganados.

    Sobre o acesso livre ao código fonte, insisto que é verdade. Tente baixar o código fonte de um software livre do portal do governo. O acesso não é livre pois você precisa fazer um cadastro primeiro. Um exemplo ainda mais especifico: Tente baixar o código fonte do software SIGA, também do governo. Os fontes não estão disponíveis. Nem com cadastro. É preciso solicitar o acesso aos responsáveis pelo projeto.

    Há inúmeros outros projetos assim, cujo download dos binários é livre mas o acesso aos fontes é controlado. Não quero dizer que não é permitido mas sim dificultado. Citar o exemplo do Firefox só diz para mim que o Firefox leva a filosofia do software livre mais a sério. Mas isto não quer dizer que todos façam o mesmo, infelizmente.

    Sobre a distribuição, sim, você pode distribuir um software livre por conta própria, mas não pode usar o mesmo nome se a distribuição é sua e não aprovada pelos gestores do projeto inicial. Marcas, imagens, etc. também são controladas no software livre. Veja o caso do próprio Firefox, por exemplo. Você pode baixá-lo, modificá-lo e distribuí-lo, mas não poderá necessariamente dizer que se trata do Firefox.

    Sobre o prazer que você citou, refiro-me a motivações para trabalhar com software. No caso do software proprietário, há quase sempre o componente da motivação financeira que muitas vezes não existe no software livre. Este segundo então precisa criar outras formas de motivar suas equipes mais e melhor. Mas, se o projeto for burocrático e hierárquico, muitos programadores podem não se motivar. Veja novamente o caso do Con Kolivas que citei no texto. Ele desistiu de contribuir para o kernel do Linux justamente por desmotivação com a comunidade.

    Finalmente, todos estes últimos benefícios que você citou são questionáveis como falei no texto citando dois links sobre o assunto. E se são questionáveis não quero dizer que estou certo e você errada. Quero dizer que há softwares livre que não são tão bons, que têm problemas.

    Cabe, portanto, ao usuário optar pela melhor opção disponível para ele. ;)

    Abraços!

  4. Rick

    Amigo, em resposta à Luciana, você cita que alguns softwares como o SIGA não são disponibilizados os fontes. Logo, você deveria subentender este software como um Freeware e não como um Free Software.

    Abraços.

  5. Ricardo

    Concordo Rick. Mas não sou eu que estou dizendo que o software é livre. É o governo. Meu ponto é justamente este: Apesar de o governo dizer que o software é livre, o acesso aos fontes é dificultado.

  6. josias

    Apesar do tempo.. só do governo dizer que é livre não significa que é Software Livre como é bem definido pela free foundation.
    O governo gosta também do termo Software Público, talvez seja mais adequado ao modelo deles.
    Então, não seria livre se não é possível de nenhuma forma obter a fonte. Nem adianta pedir nada ao Jobs ou ao Gates, ou a Oracle, de forma nenhuma você conseguiria.
    Agora, se o governo dificulta a obtenção mas no final entrega, aqui se vale a burocracia brasileira, ainda teremos um panorama melhor. Se não entregarem não é livre mesmo que digam o contrário.
    Acesso dificultado não é acesso impossível.

    A dinâmica da produção de software livre tem seus próprios meios de seleção natural. Não é só pq alguém começou a trabalhar uma solução livre que vai dar certo. É assim também com o proprietário, talvez não dê certo dentro de sua realidade. No fim das contas a simples possibilidade de termos software livre é fantástica mesmo com as suas dificuldades, outras existem no software proprietário.

    Sou usuário Linux e trabalho com computação gráfica, pesquisem sobre o histórico de manutenção e gerenciamento do Blender e observem como temos um dos mais bem sucedidos projetos nessa modalide.


Leave a Reply



Back to top