O vídeo abaixo, muito popular no YouTube, conta a história do Linux, relacionando-o aos conceitos de inovação, modernidade, desenvolvimento, qualidade, estabilidade, etc. Isso é ótimo e, em termos gerais, o vídeo cumpre muito bem com seu papel, mas comete alguns erros, que eu não poderia deixar de comentar aqui.
O video afirma que o Linux, iniciado em 1991, criou o conceito de Software Livre
"(...) ao desenvolvê-lo, Linus quebrou todos os conceitos comerciais da história, e deixou aberto o código-fonte do sistema. Surgiu aí uma grande mudança, um fenômeno sem precedentes na história da evolução humana, a do Software Livre".
Embora eu seja fã do Linux, tenho que defender a História:
Desde o início da computação moderna (anos 50), o software sempre foi desenvolvido abertamente, em processo colaborativo, geralmente envolvendo empresas e universidades. Isso por duas razões principais: primeiro, naquela época, os computadores eram máquinas enormes, caríssimas, e ninguém via valor comercial no
software; segundo, porque a infraestrutura de
software era muito limitada (ausência de compiladores, sistemas operacionais, grande incompatibilidade entre diferentes
hardwares...), o que tornava a atividade de programar extremamente complexa, exigindo a colaboração entre os poucos profissionais capacitados.
Com o surgimento dos microcomputadores, nos anos 70, que passaram a vender milhares de unidades, surgiu também a oportunidade para vender
software. Foi aí que um tal de Bill Gates, presidente de uma tal de Micro-Soft (ambos eram absolutamente desconhecidos, na época), escreveu
uma carta, criticando o hábito de compartilhar
softwares de maneira aberta (ato que ele compara a "roubar"), e defendendo o direito à propriedade intelectual (
copyright) sobre o desenvolvimento de software. Nesse momento, surge o conceito de Software Proprietário.
Para rebater esse movimento,
Richard Stallman, em 1985, criou a
Fundação do Software Livre, com o objetivo de coordenar a divulgação e defesa dos conceitos de
Software Livre e de
copyleft (o oposto ao
copyright), a elaboração da licença
GPL (General Public License), assim como o desenvolvimento de um sistema operacional livre, anterior ao Linux, chamado
GNU.
O Projeto GNU criou
toda a infraestrutura necessária ao funcionamento de um Sistema Operacional, faltando apenas um componente chamado
kernel (núcleo). Comparando com um automóvel, que é formado por inúmeros componentes (suspensão, rodas, freios,
chassis, direção, câmbio, sistema elétrico... e motor), um SO também é formado por inúmeros componentes, e o
kernel é apenas um deles, responsável por coordenar a execução das diversas tarefas, e a alocação dos diversos recursos. Pela sua importância, o
kernel pode ser comparado ao motor de um automóvel - o componente principal - se é que alguém pode dizer que o motor é mais importante que os freios, ou a direção...
O GNU teria seu próprio
kernel, chamado
HURD, mas seu desenvolvimento, baseado no moderno conceito de
microkernel, ou
kernel modular, tornou-se complexo demais, e não prosperou. Foi aí que surgiu o Linus Torvalds, com uma abordagem mais pragmática, e desenvolveu o
kernel Linux, adotando o antigo e bem conhecido conceito de
kernel monolítico, muito mais fácil de desenvolver, e com desempenho melhor.
O Linux, então, foi integrado ao GNU, formando o sistema operacional GNU/Linux, que as pessoas, por simplicidade ou desconhecimento, referem-se apenas como "Linux". Comparando com equipes de Formula1, a "McLaren" pilotada por Ayrton Senna pertencia à equipe formalmente chamada McLaren/Honda (carro da McLaren, com motor da Honda).
O vídeo também atribui ao Linux a criação do modelo de desenvolvimento colaborativo
"(...) formou-se então uma verdadeira comunidade de cooperação, com milhares de desenvolvedores ao redor do planeta, trazendo consigo mais uma mudança impressionante: a forma de trabalho em desenvolvimento de projetos."
O conceito de desenvolvimento colaborativo não surgiu com o Linux. Embora ele seja um dos mais importantes exemplos, pelo seu tamanho, visibilidade e número de desenvolvedores, não é o único, muito menos o primeiro. O projeto GNU, citado acima, já era desenvolvido de forma colaborativa e, paralelo ao Linux, milhares de outros grandes projetos de software são desenvolvidos colaborativamente.
Software Livre é um conceito amplo, que define quatro liberdades básicas para desenvolvedores ou usuários de software:
- A liberdade para executar o programa, para qualquer propósito (liberdade nº 0);
- A liberdade de estudar como o programa funciona, e adaptá-lo para as suas necessidades (liberdade nº 1). 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 (liberdade nº 2);
- A liberdade de aperfeiçoar o programa, e liberar os seus aperfeiçoamentos, de modo que toda a comunidade se beneficie (liberdade nº 3). Acesso ao código-fonte é um pré-requisito para esta liberdade;
Resumindo:
- O Linux é apenas um importante exemplo de Software Livre, mas não é o único.
- Dada a sua importância e visibilidade, o Linux contribuiu muito para a difusão do conceito de Software Livre, mas não é o seu criador.
- Os sistemas operacionais que atualmente chamamos de "Linux", na verdade são a combinação de dois grandes projetos: o sistema operacional GNU, mais o núcleo Linux.
Feitas essas correções - que não invalidam nem diminuem o valor desse vídeo, recomendo a leitura dos seguintes artigos:
O que é uma Distribuição Linux?Modelos de Negócios Baseados em Software Livre