Software Livre ou Código Aberto?

escrito por Humberto Rocha em 25/05/2016

Recentemente, participei de uma discussão no Telegram da comunidade Grupy-DF sobre como diferenciar de forma simples código aberto de software livre para pessoas que não são da área de TI. E na medida em que a discussão acontecia percebi que toda tentativa de simplificar levou a mais discussão e dúvidas sobre o assunto.

Com isso tentei condensar aqui meu entendimento sobre o assunto.

Software Livre

O software livre ou Free Software é um termo utilizado para denominar programas de computador que respeitam o ideais de liberdade e comunidade. Eles estão compilados em 4 liberdades essenciais definidas pela Free Software Foundation (FSF) que podem ser lidas através deste link.

Código Aberto

O código aberto ou Open Source se refere os programas de computador que utilizam licenças que seguem os 10 critérios delineados pela Open Source Initiative (OSI) que podem ser lidos através deste link.

O que há em comum?

Apesar das comunidades por trás destes dois conceitos possuírem suas diferenças, o produto final que é o software em 99,9% dos casos (porcentagem ilustrativa) pode ser considerado software livre e de código aberto. Toda licença considerada livre é certificada como de código aberto e raríssimas são as licenças de código aberto que não se encaixam nos padrões de software livre.

Então já que o produto final é praticamente o mesmo qual a diferença?

Existem 2 diferenças que me chamaram mais a atenção depois de ler como cada comunidade tratava do assunto e como uma enxergava a outra:

1 - A comunidade de software livre tem preferência por licenças de copyleft, que obrigam o software derivado a seguir o mesmo esquema de licença do original, e por serem mais restritivas podem estar sujeitas a incompatibilidades que podem requerer que o código acoplado use o mesmo esquema de licenciamento que o código principal. Já a comunidade de código aberto não tem esta preferência, deixando para o desenvolvedor a decisão de escolha de licença de acordo com suas necessidades.

2 - O software livre carrega uma ideologia muito forte que prega a disseminação dos conceitos de liberdade e o combate às práticas que os ferem, enquanto o código aberto prega somente que o seu modelo gera software de maior qualidade que o fechado. Pessoas que seguem a ideologia do software livre se recusam a usar software proprietário pois isso significaria abrir mão de sua liberdade, enquanto os que praticam o código aberto não se importam em usar software proprietário, caso não encontrem um equivalente aberto a altura.

Concluindo

Se você só compartilha seu código no github você não está praticando nenhum dos dois conceitos acima. Se você licencia seu código para que outras pessoas possam usar, aprender e te ajudar a construir um software mais robusto você está praticando o código aberto. Mas se além de licenciar você ajuda a conscientizar as pessoas sobre a importância da liberdade e combate o uso de software proprietário você está praticando o software livre.

E caso queira licenciar seu código e possua dúvidas para escolher a licença o site escolhaumalicenca.com.br é uma excelente porta de entrada.