INTRODUÇÃO AO SOFTWARE LIVRE

 

Alexandre Oliva (*)

 

Prólogo

 

Richard M. Stallman viu-se um dia impedido de efetuar modificações num programa controlador de impressora.  A razão?  Ele não tinha acesso ao código fonte. Código fonte é a forma em que programas são escritos e documentados, para depois serem traduzidos para linguagem  de máquina passível de execução eficiente através de um processo denominado compilação.

 

Decidiu que não mais queria fazer parte de uma indústria de software que, cada vez mais, ocultava informações de seus usuários, e lhes negava a possibilidade de corrigir problemas.

 

Já tendo participado do desenvolvimento de outros sistemas operacionais, decidiu que era capaz de fazê-lo novamente.  Deixou seu emprego no Massachussets Institute of Technology, publicou o GNU Manifesto} e criou a FSF (Free Software Foundation), convocando programadores do mundo a se unirem com o objetivo de criar software que permitisse o uso de computadores sem abrir mão de certas liberdades.  Surgiu assim o projeto GNU.

 

Liberdades

 

Entende-se por software livre aquele que permita ao usuário:

 

1.      Executar o programa para qualquer propósito. Mesmo a liberdade mais óbvia é cerceada por autores de programas proprietários que, com o propósito de conter a pirataria, introduzem mecanismos que impedem o uso do software em casos de troca de equipamento, ou o uso não simultâneo em computadores diferentes.

 

2.      Estudar o programa, e adaptá-lo às suas necessidades.  Para isso é necessário o código fonte.  Governos de muitos países têm se dado conta de quão perigoso pode ser colocar informações das quais sua soberania depende nas mãos de softwares proprietários, que podem sorrateiramente expor essa   informação, não sendo possível verificar a ausência de tais mecanismos. A possibilidade de adaptar software é útil mesmo para quem não tem conhecimento para programar um computador: dispondo do código fonte, é possível solicitar que outra pessoa (o autor original ou não) efetue a adaptação.  Não poder adaptar o software significa precisar adaptar o uso, ou deixar de usar o software.

 

3.      Distribuir cópias do programa. A liberdade de, ao permitir a outra pessoa fazer uso do software, não ser comparado a alguém que invade e saqueia um navio enquanto mata ou escraviza sua tripulação.  O custo físico de duplicar   software é extremamente baixo.  As leis que concedem monopólio temporário de exploração aos detentores do direito autoral sobre uma obra, a fim de estimular a criatividade e enriquecer o domínio público após o prazo, têm um prazo longo demais para o software, que se torna obsoleto em poucos anos. Aos que temem ver seus investimentos perdidos por não poder cobrar por inúmeras licenças de uso do software, considerem o alcance maior que o software pode ter caso possa ser experimentado e utilizado livremente, trazendo mais clientes para serviços tais como desenvolvimento, adaptação, treinamento e suporte.  E, aos que têm medo da possível concorrência, confiem em sua própria excelência, e contem com a concorrência para trabalhar no aprimoramento do produto.

 

4.      Modificar o programa, e redistribuí-lo. Da mesma forma que Isaac Newton pôde metaforicamente ver mais longe pois estava sobre ombros de gigantes, os programas de computador também podem se beneficiar da troca livre de informação existente na comunidade científica.  Se, ao invés de ter de recriar mecanismos   básicos para cada novo software, utilizar-se software já existente, que siga as melhores práticas conhecidas, pode-ser concentrar na funcionalidade nova, fomentando o progresso.

 

Licenças

 

O instrumento legal em que o detentor do direito autoral sobre um software concede a outra pessoa a permissão de executar, modificar e/ou distribuir seu software, modificado ou não, é chamado licença. Há inúmeras licenças que satisfazem as liberdades acima, e que portanto permitem que softwares que delas se utilizem sejam chamados livres.

 

Há, porém, diferenças importantes entre essas licenças.  Algumas, como a licença BSD (utilizada originalmente pela Berkeley Software Distribution) faz uma exigência mínima: apenas a preservação da nota de direito autoral.  Permite, por exemplo, que qualquer um tome o software na forma de código fonte, faça modificações ou não e distribua o programa na forma executável, cerceando portanto as liberdades de terceiros que deles recebam o programa.

 

A licença GNU GPL (General Public License) foi criada pela FSF com o propósito de evitar esse comportamento: um software licenciado através da GNU GPL, com ou sem modificações, só pode ser distribuído nesses mesmos termos, cabendo ao distribuidor garantir ao receptor acesso ao código fonte.

 

Mercado

 

É importante ressaltar que software livre não é necessariamente gratuito, uma confusão comum induzida por traduções desinformadas do termo original (Free Software).  A definição foi criada de modo que não só permitisse o surgimento de um mercado, mas que propiciasse o desenvolvimento de um mercado muito competitivo.  O próprio Richard Stallman se sustentou gravando o software, que ele disponibilizava para download gratuito, em fitas para interessados em colaborar financeiramente com o projeto.

 

O objetivo maior é preservar as liberdades do usuário.  Ao adquirir um software proprietário, uma pessoa cria um monopólio para si mesma: em caso de necessidade de adaptação ou correção no software, só pode recorrer a quem lho licenciou.  E ai do cliente ao descobrir que seu fornecedor não existe mais, ou perdeu o código fonte ou o interesse em atender às solicitações.

 

No caso do software livre, o cliente, sempre que se sinta insatisfeito com o fornecedor, pode decidir dar prosseguimento ao suporte por conta própria, ou contratar os serviços de outrem, sem precisar se sujeitar a uma migração para um software diferente.

 

Embora algumas licenças de software livre não permitam que se cobre por licença, permite-se a cobrança por serviços associados ao software, entre eles o serviço de distribuição.  Na prática, para cada cópia do programa adquirida por um cliente, cobra-se um valor.  Como o usuário pode redistribuir, preços abusivos não se mantêm.

 

Diferenciam-se os vários competidores num mesmo nicho, ainda que usem o mesmo software, através de sua reputação por controle de qualidade, assim como por serviços adicionais de suporte, documentação, treinamento, desenvolvimento, customização, entre outros.

 

Exemplos disso são as distribuições GNU/Linux (Linux é o nome do núcleo; grande parte dos demais componentes são do projeto GNU); algumas adicionam componentes proprietários, outras contêm apenas software livre, e diversas são as modalidades de suporte, tempo de vida útil, para disponibilização de atualizações e correções, etc.

 

Algumas pessoas, incomodadas com a dificuldade de conciliar questões pragmáticas do mundo dos negócios com a postura do movimento pelo Software Livre, que considera éticas as questões de liberdade associadas ao software, criaram a iniciativa Open Source.

 

Embora as definições de Open Source e Software Livre sejam equivalentes, o movimento Open Source promove o software de fonte aberto com base em razões práticas, como melhor desempenho, maior segurança e menor custo, não se comprometendo com o essencial do software livre: as questões filosóficas e éticas relacionadas à liberdade.

 

Mais informações

 

http://www.gnu.org

http://www.opensource.org

http://sources.redhat.com

http://www.softwarelivre.org

http://www.quilombodigital.org

http://cipsga.org.br

http://www.ic.unicamp.br/~oliva/

 

 

 

 

 

 

 

 

(*) aoliva@redhat.com>

http://www.ic.unicamp.br/~oliva/

 


Anais da 56ª Reunião Anual da SBPC - Cuiabá, MT - Julho/2004