Quando o Estado constrói uma escola com dinheiro público, a escola é… pública. Quando o Estado constrói um hospital com dinheiro público, o hospital é… público. Quando o Estado constrói um programa de computador é… complicado.
Este é o mote da campanha da Free Software Foundation Europe (FSFE), que dá o título à crónica de hoje. A questão que levanta merece reflexão.

Antes de tudo, convém dizer que um programa de computador (software) não é mais que uma série de instruções lógicas, escritas numa linguagem que o computador entende. Se eu pretendo desenvolver um programa informático que desempenhe uma determinada tarefa, tenho de escrever uma série de instruções de funcionamento que levem ao resultado pretendido, ou ter quem o faça por mim, um programador. Essas instruções são o código-fonte, que não é visivel ao utilizador final de um programa. É a este código-fonte que o título se refere.

A informática, a Internet e a digitalização do conhecimento vieram desenvolver o paradigma no que respeita aos bens públicos. Se o controlo dos meios de produção foi um dos debates-chave do século passado, toda essa discussão deixa de fazer sentido no contexto de software. Vejamos: um martelo só pode ser utilizado ao mesmo tempo por uma pessoa. Se ela o der ou vender, fica sem ele. Se for nacionalizado, acaba nas mãos do Estado e o privado fica sem ele; se for privatizado, fica nas mãos do privado e o Estado sem ele. Isto vale para quaisquer bens físicos.
Mas imaginemos agora que o martelo é virtual: Existe apenas em código. Continua a existir um certo custo de produção: alguém tem de criar o código e talvez desenhar a ilustração. Mas uma vez isso esteja feito, o copy-paste custa apenas uns cliques de rato e facilmente se criam milhões de martelos. Toda a gente pode ter um, sem que ninguém fique a perder.

Um martelo virtual não será algo de muito útil, por isso pensemos antes num software de gestão de uma Câmara Municipal. Se o executivo de uma Câmara Municipal precisar de desenvolver um software para suprir determinada necessidade, pode desenvolvê-lo internamente ou encomendar o desenvolvimento a terceiros. Normalmente a primeira opção não é viável a nível municipal por falta de recursos humanos especializados (já o sendo na administração central), por isso recorre à segunda opção: contrata o serviço. Este serviço é pago com dinheiro público, o que levanta a questão: quem deve ficar com os direitos sobre o código que é desenvolvido? A Câmara Municipal? A empresa que prestou o serviço? Tudo depende daquilo que for contratualizado.

A analogia com as infraestruturas do Estado, como escolas e hospitais, que a FSFE apresenta, é particularmente elucidativa. O que seria se essas infraestruturas fossem geridas como o software costuma ser? O hospital, apesar de público e construído com dinheiro público, não poderia decidir expandir a sua capacidade sem que o dono do edifício o permitisse. A escola não poderia abrir mais turmas pois estaria definido um certo limite. O amianto não poderia ser retirado do telhado do ginásio, pois a empresa só estaria interessada em vender um ginásio todo novo. A Câmara Municipal até poderia desconfiar que alguém estava a ter acesso ilícito aos seus documentos, mas não poderia confirmar se havia janelas ou portas abertas nas traseiras, porque isso infringiria o contrato de utilização assinado que nem sequer lhe dá acesso às traseiras. É isto o que acontece em muita da nossa infraestrutura digital. Licenças válidas por períodos de tempo limitado; o prestador tem o monopólio sobre aquele programa e por isso modificações não são permitidas ou são caríssimas; nem sequer os próprios serviços da câmara podem acrescentar novas funcionalidades; utilizações perfeitamente razoáveis são impedidas; e não se pode verificar o código-fonte, nem para detectar eventuais brechas de segurança.

Mas existem alternativas

É bastante provável que a necessidade que a Câmara Municipal sentiu, e que levou à encomenda do software, seja também sentida por outras Câmaras Municipais. Se todas as Câmara Municipais encomendarem um software diferente para o mesmo fim, vamos ter o Estado a pagar repetidas vezes pelo mesmo trabalho, sem qualquer valor acrescentado, e com enormes custos de licenciamento. O problema pode ser amenizado através do recurso a compras centralizadas pelo Estado, mas essa solução tem desvantagens (impõe uma solução igual para todos), e corresponde a uma visão limitada e auto-centrada do problema.

No caso de os direitos ficarem contratualmente do lado do Estado, o mesmo software poderia ser usado, mantido e desenvolvido por todas as Câmaras Municipais, sem necessidade de licenças. Indo mais longe, na verdade, o código só seria verdadeiramente público se a Câmara Municipal optasse por o disponibilizar através de uma licença aberta, que garante que uma cópia do código-fonte do programa possa ser utilizada, inspecionada, partilhada e melhorada por qualquer pessoa: a isto chamamos “software livre”. Mais ainda, este tipo de licenciamento de software é muito comum, pelo que é provável que o programa que a Câmara Municipal precisa já exista e possa ser livremente utilizado, com menos encargos para o Estado, ou exista algo que possa ser mais facilmente adaptado em vez de ter de ser criado de raiz. Basta que anteriormente uma outra qualquer entidade, pública ou privada, em Portugal ou lá fora, tenha sentido a mesma necessidade e tenha criado um programa para esse fim, tendo-o disponibilizado como software livre. No caso de optar-se por software livre, o investimento deve ser direccionado para a manutenção e continuação do desenvolvimento do software. Assim, todos saem a ganhar.

A esmagadora maioria dos servidores em que se navega quando se está na Internet correm em software livre, em sistemas Linux; mais de um terço dos sites da Internet são feitos em WordPress, um software livre; programas populares como o navegador Firefox ou reprodutor de vídeo VLC são o resultado de licenciamentos livres; o sistema operativo do vosso telemóvel Android é também software livre (deriva do Linux).

No caso do software desenvolvido ou cujo desenvolvimento é encomendado pelo Estado e pago com dinheiro público, não é de admitir outra solução. Se o dinheiro é público, o código deve ser público.

Eduardo Leonardo dos Santos
Advogado
Presidente da Associação D3 - Defesa dos Direitos Digitais
www.direitosdigitais.pt

In theory, this is a personal blog that will focus mostly on Law, Technology and Digital Rights. In practice, anything goes. These are the rules:
I write mostly for myself but everyone is welcome here. | The blog will have posts both in English and in Portuguese, depending on the subject and intended audience. | There are no comments, but feel free to drop me an email to react to any text or for any other reason. | Yes, I will (eventually...) complete this website, start to write new texts on it and also recover old texts of mine that are spread around the web. However I don't expect to write very often.