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 |