É possível fechar o código-fonte aberto novamente?



Esse conceito parece bastante simples para qualquer pessoa que trabalha com código aberto há algum tempo: um projeto, uma vez lançado como código aberto, permanece aberto para sempre. Obviamente, o desenvolvedor pode decidir que futuras versões do projeto serão fechadas e, às vezes, isso aconteceu, mas o que já foi lançado não pode ser lembrado. A Internet não possui um botão de exclusão; Tendo publicado seu código e dando a milhões de pessoas o potencial para baixá-lo, eles não podem colocar o gênio de volta na garrafa.

Mas e as boas razões? E se o projeto se transformar em algo com o qual você não deseja mais se relacionar? Talvez você tenha enviado seu código para o projeto, tendo uma idéia de como ele será usado, e as regras mudadas. Ou você foi banido deste projeto e, ao mesmo tempo, as pessoas que o apoiam não têm problema em deixar sua contribuição significativa na forma de código, mesmo quando você é jogado para o lado de fora?

Devido ao que algumas pessoas consideram uma mudança forçada nas regras de conduta para desenvolvedores de Linux, alguns desenvolvedores do projeto de código aberto mais exclusivo do mundo têm dúvidas. A comunidade raramente tem que lidar com essa situação, e isso nunca aconteceu com um projeto dessa magnitude.

É realmente impossível revogar o código fonte enviado a um projeto lançado sob uma licença livre e aberta como a GPL? E se possível, o que acontecerá? O que acontece se houver bilhões de dispositivos executando o kernel do Linux violando os direitos intelectuais de um desenvolvedor? Essas perguntas são cruciais para a internet e provavelmente até nosso estilo de vida. No entanto, as respostas para eles não são tão fáceis de encontrar quanto você imagina.

Copyleft e propriedade


A GPL é conhecida como licença copyleft , adicionando direitos aos usuários finais que, de outra forma, seriam limitados pelas leis de direitos autorais. Por exemplo, dá ao usuário o direito de copiar o trabalho e criar seus derivados. Um ponto importante: as licenças copyleft, como a GPL, não substituem os direitos autorais - elas apenas complementam. Os direitos do código original permanecem com seu autor e, como resultado, com o proprietário principal.

Isso dá origem ao conceito de licenciamento duplo: um único autor de um programa pode liberá-lo sob várias licenças ao mesmo tempo e, geralmente, um deles permite que você faça mais com o programa do que outros. Por exemplo, uma versão de um programa para Windows pode ter código fechado, mas para Linux pode estar aberto, mesmo que o código do programa em si não seja diferente. Mais frequentemente, é usado para que, sob uma licença, o programa seja usado para fins comerciais e sob outra, mais gratuito - para fins pessoais.

Alguns projetos de código aberto, geralmente grandes e com suporte corporativo, às vezes têm um Contrato de licença de colaborador. Este documento descreve todos os requisitos e regras adicionais necessários para adicionar código ao projeto e geralmente contém uma cláusula explicando que a pessoa que digita o código transfere o direito a ele para o proprietário do projeto. Por exemplo, aqui está uma parte dessa licença do Google :
Sob os termos e condições deste contrato, você transfere para o Google e para os destinatários do software distribuído pela empresa direitos perpétuos, mundiais, não exclusivos, gratuitos, não dedutíveis e irrevogáveis ​​de reproduzir, criar trabalhos derivados, demonstrar publicamente, desempenho público, licenciar novamente e distribuir sua contribuição e trabalhos derivados dele.

Vale ressaltar que o Linux não usa esse contrato, portanto os direitos a qualquer código contribuído pelo desenvolvedor permanecem com ele.

Perda de reputação


Portanto, se um desenvolvedor é livre para escolher licenças para distribuir seu código até o diametralmente oposto (código aberto e fechado), e é geralmente reconhecido que, na ausência de um CLA, ele tem um direito inegável de escrever código, então a situação se torna sensível. Não resulta daí que o desenvolvedor tenha o direito de retirar sua promessa de abrir o código se surgir uma situação que o obriga a acreditar que o código não vale mais a pena ser aberto?


Eric Raymond

Eric Raymond , um dos fundadores da iniciativa de código aberto, a Open Source Initiative , e autor da trilogia Catedral e Bazar , acredita que eles têm esse direito. Em uma entrada na lista de discussão do Linux Kernel, Eric, em particular, refere-se a uma ameaça feita por alguns desenvolvedores em relação à recuperação de seu código-fonte do kernel:

Para começar, permita-me confirmar que esta não é uma ameaça vazia. Na fundação da Open Source Initiative, estudei leis relacionadas. Nos EUA, existe uma jurisprudência que confirma que as perdas de reputação associadas à transformação dos direitos de um participante do projeto sob a GPL podem ser consideradas em juízo. Eu não sei sobre a existência de jurisprudência fora dos EUA, mas em países que cumprem a Convenção de Berna sem emendas dos EUA aos “direitos morais” [depois de ingressar na Convenção dos EUA, eles declararam que os direitos morais já estão protegidos por disposições de difamação e, portanto, não exigem regulamentação adicional / aprox. trans.], é provável que este artigo da convenção fortaleça ainda mais a posição dos oponentes na quadra.

A Seção 6 da Convenção de Berna explica que o autor original da obra, mesmo transferindo seus direitos a outra pessoa ou organização, pode se opor ao seu uso se lhe parecer que o usa "em detrimento de sua honra e reputação". Portanto, em teoria, o desenvolvedor está insatisfeito por ter de convencer o juiz de que os gerentes de projeto danificaram sua reputação, por exemplo, banindo-o publicamente por violar as regras de conduta, como resultado do qual ele pode obrigar o projeto a parar de usar o código, independentemente da licença usada.

Crítica


Mas a questão permanece: um desenvolvedor pode realmente "revogar" os direitos transferidos através da GPL? Se estamos falando sobre a GPLv2, que o Linux segue, o item mais adequado está contido na seção 4.
Ao mesmo tempo, a licença concedida por você a terceiros que receberam cópias ou direitos de você sob esta licença não será rescindida até que essas pessoas cumpram totalmente seus termos.

Curiosamente, na GPLv3, as regras foram reforçadas:
Todos os direitos concedidos sob esta Licença são concedidos pelo período de direitos autorais do Programa e não podem ser revogados desde que as condições sejam atendidas.

Alguns consideram essa distinção crítica. Legalmente, “recall” geralmente significa que o contrato foi revogado por quem o propôs (aqui - o desenvolvedor original), e “rescisão” significa simplesmente o fim do contrato. Como resultado, há espaço para interpretação e, em princípio, pode-se argumentar que, como a GPLv2 não indica que o desenvolvedor não pode revogar seus direitos, essa possibilidade é preservada.

Territórios inexplorados


Dada a avaliação de Eric Raymond, segundo a qual o desenvolvedor pode alegar que o projeto no qual ele participa prejudica sua reputação e o fato de os desenvolvedores não serem diretamente proibidos de retirar sua contribuição na licença atual do Linux, a situação está ficando nebulosa e até agora ninguém conseguiu não tenho certeza de nada. Estamos em uma área desconhecida, e suposições antigas podem não ser compatíveis com os conhecimentos legais.

Também vale a pena mencionar que um conceito jurídico como o estoppel pode entrar em jogo - essencialmente proíbe uma pessoa de aceitar sua promessa se outra pessoa já tiver tomado medidas com base nessa promessa. Ou seja, se você disse a alguém que ele pode usar seu código e ele o criou para criar um projeto bem-sucedido, você não pode mudar de idéia, pois isso o danificará.

Do ponto de vista prático, mesmo que uma pessoa pudesse defender seu ponto de vista no tribunal, exigindo remover seu código do Linux, seria fisicamente impossível. E então, em vez de poder remover o código de dispositivos que violam direitos autorais a partir desse momento, o desenvolvedor mencionado provavelmente receberá uma recompensa em dinheiro. O que, no entanto, se tornará um precedente terrível para uma comunidade aberta: ofendido - compensação recebida.

Como resultado, falar sobre a revogação de licenças de código aberto está errado. Parafraseando Ian Malcolm, um personagem do Jurassic Park: desenvolvedores ofendidos estão tão ocupados pensando se conseguem ou não fazer isso, que não têm tempo para pensar se devem ou não fazê-lo. Após o surgimento de um precedente legal pelo qual um desenvolvedor pode retirar seu código de um projeto aberto, a comunidade aberta será destruída. Demorou décadas para que o software de código aberto atingisse a prosperidade de hoje, mas as ações precipitadas de vários desenvolvedores infelizes podem arrastá-lo de volta ao reino das idéias que você deseja trazer à vida.

Source: https://habr.com/ru/post/pt426159/


All Articles