Software livre se refere à liberdade dos usuários executarem, copiarem,distribuírem, estudarem, modificarem e aperfeiçoarem o software. Mais precisamente, ele se refere a quatro tipos de liberdade, para usuários do software:
- A liberdade de executar o programa, para qualquer propósito.
- A liberdade de estudar como o programa funciona, e adapta-lo para suas necessidades. Acesso ao código-fonte é um pré-requisito para esta liberdade.
- A liberdade de redistribuir cópias de modo que você possa ajudar ao seu próximo.
- A liberdade de aperfeiçoar o programa, e liberar os seus aperfeiçoamentos, de modo que toda a comunidade se beneficie. Acesso ao código-fonte é um pré-requisito para esta liberdade.
Outra diferenciação que deve ser feita é entre software livre e open source. Todo software livre é open source (código aberto), mas nem todo open source é software livre, pois existem muitos programas proprietários (ou seja não-livres, a pessoa é obrigada a obter permissão para uso) que também tem seus codigos abertos.
Existem também regras que devem ser seguidas caso o software possua algumas licenças específicas, como é o caso da licença copyleft que impede uma pessoa de modificar o código com intenção de deixar o programa sem ser opensource.
Na prática, isto obriga o software a ser distribuído com código fonte, ou seja, com o código na linguagem original na qual o programa foi escrito. Para isto ter algum uso, no entanto, alguém precisa poder desenvolver em cima deste código nova funcionalidade, e corrigir defeitos.
A liberdade de uso, modificação e distribuição favorecem a inovação. O software livre permite que pessoas ou empresas retomem o trabalho a partir do ponto onde outra pessoa ou empresa parou, ou continue o trabalho de maneiras imprevistas.
A liberdade de utilizar um programa significa a liberdade para qualquer tipo de pessoa física ou jurídica utilizar o software em qualquer tipo de sistema computacional, para qualquer tipo de trabalho ou atividade, sem que seja necessário comunicar ao desenvolvedor ou a qualquer outra entidade em especial.
O software livre permite que os programadores absorvam o conhecimento expresso no código-fonte de um programa, e possam em seguida contribuir para a melhoria do mesmo. Existe uma grande pressão em torno do software aberto para que o código seja perfeito, diferentemente de sistemas fechados, não são tolerados codigos que funcionem "mais ou menos".
O copyleft diz que qualquer um que distribui o software, com ou sem modificações, tem que passar adiante a liberdade de copiar e modificar novamente o programa. O copyleft garante que todos os usuários tem liberdade, representando um tipo de "deixamos copiar". O modo mais simples de tornar um programa livre é coloca-lo em domínio publico, sem copyright. Isto permite que as pessoas compartilhem o programa e suas melhorias, se elas estiverem dispostas a tal.Para tornar um programa copyleft, primeiro registra-se o copyright; então adiciona-se termos de distribuição, que são um instrumento legal que garante a qualquer pessoa os direitos de usar, modificar, e redistribuir o programa ou qualquer programa derivado dele se e somente se os termos de distribuição não forem modificados. Desta forma, o programa e as liberdades se tornam legalmente inseparáveis.
No entanto essa absorção pode ser utilizada para o mal, está surgindo um debate questionando se o software livre realmente é mais seguro ou se ele é apenas mais seguro porque pouca gente o usa ? Ou será porque os hackers se divertem tanto com o windows que não tem tempo para brincar com os programas de codigo aberto?
Em geral o tempo de resposta para a correção de um bug de software livre é bem mais rapido que a de um software fechado, alguns bugs de software fechado nunca foram corrigidos. Um outro problema é o fato de versões antigas não serem mais suportadas. Com o software de codigo livre é possivel que a empresa ou individuo mesmo que não saiba programar, consiga de outra fonte a correção de programas não mais suportados pela empresa produtora.
A vantagem de custo do software livre não está somente na economia com o pagamento de licenças, esta é uma vantagem clara e imediatamente percebida, mas o software livre também reduz os custos de mudança que estão frequentemente associados aos softwares proprietários.
No entanto uma pesquisa recentemente divulgada mostra que o custo para manter um sistema com software livre pode exceder o custo para manter um software pago. Existe hoje uma escassez de profissionais adeptos ao software livre devido ao fato de uma grande quantidade de empresas terem migrado para este modelo.
Há um outro problema, a falta de um organismo eficiente de suporte, grandes empresas querem ter acesso a telefones 0800 e visita de técnicos especializados com o estalar dos dedos. Dificilmente isto ocorre com o software livre, é preciso visitar forums e mandar dezenas de emails para conseguir alguma resposta.
A tendência dos softwares livres, open source, etc., pode gerar uma banalização da profissão de desenvolvimento de softwares, pois o descrédito neste serviço se dará pela possibilidade de se obter de forma cada vez mais fácil os trechos de códigos responsáveis pela criação de um determinado software, o que gera uma desvalorização deste trabalho. O constante aumento desenvolvedores, outro fator de influência, pode está relacionado ao fato de que ,hoje, com uma boa pesquisa no Google e alguns "Ctrl+C" e "Ctrl+V", cada vez mais pessoas se metem em desenvolver softwares sem ter qualquer tipo de fundamento teórico. Tudo isso, pode resultar numa grande demanda de sistemas falhos que ,em algum momento, poderá trazer prejuízos de alta escala.
A filosofia do Software Livre encontra as suas raízes na livre troca de conhecimentos e de pensamentos que podem tradicionalmente ser encontrada no campo científico. Tal como as idéias, os programas de computador não são tangíveis e podem ser copiados sem perda. A sua distribuição é a base de um processo de evolução que alimenta o desenvolvimento do pensamento.
Um software que tenha liberdade de executar , para qualquer uso, liberdade de estudar o funcionamento de um programa e de adaptá-lo às suas necessidades, redistribuir cópias, melhorar o programa e de tornar as modificações públicas de modo que a comunidade inteira beneficie da melhoria pode ser chamado de software livre.
Quando se fala em aplicar software livre, temos que ter em mente a necessidade de se usar uma linguagem de programação difundida e que esteja ao alcance de todos. Se não existem pessoas com conhecimento suficiente naquela linguagem ou ambiente, é difícil se tirar proveito do código fonte.
Uma pergunta comum é: "quem paga a conta no final"? Em primeiro lugar, é preciso lembrar que software livre não é sinônimo de software grátis. Softwares livres podem ser comercializados, e softwares proprietários podem ser distribuídos gratuitamente. Em segundo lugar, uma boa parte do trabalho por trás do software livre não é “gratuito”, mas voluntário. Desenvolvedores ao redor do mundo gastam seu tempo e recursos para melhorar os softwares existentes, e de alguma forma, não necessariamente financeira, são recompensados por seu trabalho. Finalmente, o software livre vem recebendo cada vez mais apoio de grandes empresas, que ajudam a financiar o desenvolvimento que não é atendido pelo trabalho voluntário.
Pedro Montenegro
Fabio D´Amorim
Everson Melo
Vitor Braga
Heber Cruz
André Araújo
Yuri Lima
Laís Xavier
Adriano Gomes
Bruno Farache
Renato Ferraz
Felipe Paiva