Passei algum tempo lendo as copyleft comuns e as licenças de software permissivas. Existe uma licença que permita ao criador de um aplicativo ou algoritmo especificar amplamente quem pode usar / distribuir o produto com base em seus próprios preconceitos pessoais?
Entendo que as pessoas usam licenças duplas para forçar entidades comerciais a pagar pela licença permissiva ou serem forçadas a distribuir códigos de busca para seus projetos, mas eu estava pensando em algo mais parecido com, por exemplo, "Este código pode ser usado livremente, modificado e distribuído por qualquer entidade não envolvida no setor x [que considere indigno do uso do meu software livre] ".
Não consegui encontrar nenhuma dessas licenças ou modelos de licença e pensei que pelo menos alguns programadores estariam preocupados com as implicações éticas de seus produtos. É possível criar um algoritmo de busca de caminho da IA e garantir que ele não acabe orientando um drone armado ou um modelo de bloco de gelo do Ártico e garantir que ele não acabe sendo usado na perfuração de petróleo offshore, enquanto ainda estiver usando uma licença de estilo permissivo?
Respostas:
Essa pergunta surge com bastante regularidade na comunidade de software livre e isso é compreensível. As pessoas que escrevem software livre (geralmente em seu tempo livre) e doam para o público normalmente fazem isso porque querem fazer a diferença para melhor, não para pior. Portanto, tentar garantir que seu ofício não seja usado de maneira que você considere antiético é algo natural em que pensar.
A Free Software Foundation se opõe claramente às tentativas de usar a licença do software para limitar a maneira como as pessoas podem usar o software. Richard Stallman escreveu um artigo “Por que os programas não devem limitar a liberdade de executá-los”, onde explica por que está convencido de que o uso de licenças de software para restringir o uso de um pedaço de software a aplicativos éticos está fadado ao fracasso e prejudicaria a interoperabilidade e o limite a utilidade para usuários legítimos. Acho o artigo dele muito convincente e recomendo, é claro, que você leia o original, mas estou parafraseando (com comentários meus) quais são meus principais argumentos aqui.
Proibir o uso do software para atividades ilegais é inútil. Essas atividades são sempre ilegais, independentemente do que a licença diz. Uma licença só pode conceder aos usuários os direitos de software que o detentor dos direitos autorais possui. Não está escrito explicitamente em seu artigo, mas concluo e concordo que faria mais sentido fazer campanha politicamente para que atividades imorais fossem tornadas ilegais.
Não permitir que o software seja usado pelos estados para atividades imorais (o RMS menciona a tortura como exemplo) provavelmente não será eficaz porque a maioria dos estados possui legislação especial que permite que eles façam o que quiserem, desde que seja do interesse deles. de segurança nacional. Embora eu acredite que isso seja um pouco exagerado, é certamente verdade que tais isenções legais para uso militar existem em muitos estados ou poderiam ser aprovadas se os poderes legislativos os considerassem desejáveis. O que provavelmente é mais relevante é que você teria dificuldade em provar que seu trabalho é usado sem acesso a informações classificadas e, embora a lei de direitos autorais seja esticada por muitos jogadores para justificar coisas ultrajantes, eu ' não sei que “obter acesso a informações classificadas para processar o estado” é algo que a lei de direitos autorais lhe concede em qualquer estado do mundo. Você certamente não conseguirá processar um estado estrangeiro autocrático que possa usar seu software para as coisas mais horríveis.
Não está claro se essas restrições seriam aplicáveis via direitos autorais e, se fossem, se isso seria benéfico. Só posso falar da Alemanha, mas estou bastante confiante de que esses termos de licença seriam nulos nos processos judiciais alemães. Eu acho que isso é uma coisa boa. A lei de direitos autorais já é muito poderosa no que outras pessoas podem impor a você. A última coisa que precisamos é de ainda mais restrições.
Se as licenças de software restringissem o uso do software a "propósitos éticos", uma terrível confusão resultaria e o software não seria compatível. Embora isso certamente possa acontecer, não vejo por que não poderia surgir uma “licença pública ética ética” publicada por uma organização credível e usada por muitos projetos, como é o caso da GPL hoje. O que vejo é que, para que uma licença geral seja amplamente aceita e usada, muito provavelmente teria que se resumir a definir como antiético o que já foi acordado como antiético e, portanto, proibido pela legislação pública nas democracias, portanto não daria muito. Mais importante, como essa licença não existe hoje, você teria que criar a sua própria, o que é sempre uma má ideia.
fonte
Existem projetos de software que usam uma licença como esta. No entanto, essas não seriam consideradas licenças gratuitas pela definição OSI.
Mais importante, a aplicabilidade dessas licenças tem sido fortemente questionada toda vez que as vi mencionadas, e elas nunca foram testadas em tribunal, pelo que eu sei. É improvável que o uso dessa licença tenha mais do que valor simbólico.
Parte do problema aqui é que esses termos são incrivelmente vagos, como Ixrec aponta em seu comentário. Digamos que você desenvolva um algoritmo que orienta carros autônomos. Ético? Provavelmente. Então esse algoritmo é usado para construir caminhões que dirigem por conta própria. Ainda ético. E agora esses caminhões são usados para reabastecer campos militares ou transportar drogas; você dirá que isso não é permitido porque seu código é usado lá? Talvez eles até sejam usados no tráfico de pessoas, o que é definitivamente antiético, mas como você controlaria isso? Exigir que os fabricantes de caminhões também coloquem uma licença em seus caminhões?
Por fim, uma empresa militar ou de petróleo média tem dinheiro suficiente para apenas ter sua ideia e reimplementá-la; portanto, se esse é o seu algoritmo que você não deseja usar, você estará sem sorte. E como o código militar (um software de orientação para foguetes ou drones) geralmente é classificado de qualquer maneira, como você saberia que seu código foi usado?
fonte
Quando você olha para o mercado atual, já existem licenças com estipulações sobre o uso do software.
Provavelmente, existem várias outras licenças que possuem cláusulas igualmente estranhas. Portanto, uma licença que discrimine com base em questões éticas não seria a primeira vez que uma licença tem uma estipulação estranha.
fonte
Você pode escrever qualquer licença que desejar e processar qualquer pessoa que use seu código de forma contrária aos termos da licença por violação de direitos autorais.
Seus termos "não devem ser usados pelo setor X" tornam a licença incompatível com a licença GPL, por exemplo. Não posso incluir o seu software no código GPL que desejo distribuir (ou que pode ser distribuído acidentalmente, o que acontece). Não pude incluir seu código no código-fonte fechado da minha empresa, porque o departamento jurídico me mataria (isso significa que se alguém nos oferecesse milhões pelo nosso código-fonte, talvez não pudéssemos vendê-lo devido a suas restrições). No mínimo, nosso departamento jurídico diria "custará US $ 5.000 para verificar a licença. Quanto custa você escrever o código você mesmo?"
fonte
Se você está preocupado com a ética do setor X, em vez de criar uma licença que discrimine o setor X, você pode abordá-lo de maneira diferente; você pode usar a abordagem de licença dupla e criar uma versão gratuita e comercial. Em seguida, faça doações para alguma organização anti-indústria X - na forma de uma versão comercial completa ou de algum corte nos lucros da versão comercial.
Isso é completamente legal e está apoiando um ideal em que você acredita. Também é muito melhor "marketing de boa vontade". Mesmo as pessoas da multidão da indústria profissional X o respeitarão, porque pelo menos você está apoiando algo em que acredita. É sempre melhor ser visto apoiando um ideal, em vez de atacar seu contra-ideal.
fonte
Eu trabalho para uma empresa com o mandato de desenvolver produtos de software para instituições de caridade progressivas. Criamos algumas bibliotecas que queríamos código aberto e, como o OP, não estávamos satisfeitos com as licenças que pudemos encontrar.
Criamos a Just World License para que, no mínimo, nosso código não seja usado por aqueles que trabalham contra os objetivos das instituições de caridade que apoiamos. (Aqui está um artigo explicando nossas razões por trás disso)
Abaixo, abordarei algumas das objeções a licenças éticas levantadas em comentários e respostas. Ao fazer isso, vou fazer uma comparação com a GPL, porque também é um exemplo de licença tirada de um forte ponto de vista ideológico e é instrutiva sobre como uma licença é mais do que apenas um documento legal e seus aspectos. viemos a aceitar.
Por que (não) ético?
Muitas das objeções que li estão relacionadas à aplicabilidade dessa licença, mas eu argumentaria que o objetivo de uma licença ética não é aplicá-la em um tribunal. Na verdade, a maioria dos documentos legais que você realmente não deseja testar em tribunal - é caro e doloroso. Sim, você deve torná-los claros e inequívocos, mas a maioria das pessoas não redige documentos legais com o objetivo principal de levar a outra parte ao tribunal.
Como as pessoas apontaram (com razão), se uma grande empresa deseja usar seu software apesar das restrições, provavelmente possui os recursos para enterrá-lo na papelada legal.
Mas isso não é diferente da GPL, e a GPL também não foi escrita para que os desenvolvedores do FOSS possam levar grandes empresas a tribunal por usarem código-fonte aberto. Sim, é legalmente específico e possível de aplicar, mas esse não era o objetivo principal que os autores tinham em mente para isso. Eles criaram a GPL para espalhar uma idéia - a idéia de que o software e sua fonte devem ser compartilhados livremente.
Da mesma forma, ao criar uma licença ética, queremos espalhar uma idéia - de que nosso software deve ser usado para a melhoria do mundo e que nós, como desenvolvedores, podemos assumir a responsabilidade pela forma como nosso software é usado.
Executoriedade
Dito isto, eu também argumentaria que uma licença ética pode ser imposta. Mesmo com os termos extremamente vagos de licenciamento do JSLint, a IBM estava suficientemente preocupada com a aplicação, a fim de pedir ao autor permissão expressa para usar o JSLint para o mal .
Sim, o tabaco grande poderia usar nosso código e ficar quieto, mas o medo de ser descoberto ou denunciado e a possibilidade de aplicação da lei são suficientes para a maioria das empresas, mesmo as que estão fazendo coisas ruins, para decidir que não vale o risco e vá e encontre outro código.
Restringir o uso de coisas ilegais é inútil
Acordado.
Ao escrever uma licença ética, decidimos não excluir atos ilegais por esse motivo e também porque alguns países têm leis muito ruins que restringem as liberdades das pessoas de maneira terrível. Se os ativistas que trabalham contra essas coisas querem usar nosso software, eles têm o suficiente para se preocupar, sem se preocupar que possamos aparecer, adicionar um cessar e desistir de seus problemas.
Se é ruim, existem leis para impedi-lo
<insira um vídeo obrigatório dos legisladores pedindo a Mark Zuckerberg sobre o envio de um email pelo WhatsApp>
Infelizmente, nossos legisladores estão entre os mais lentos quando se trata de responder a mudanças nas normas sociais, sem falar na tecnologia. Para começar, é 2018 e ainda existem produtos nas prateleiras feitos por escravos de verdade .
Ética não pode ser definida
O mundo não é tão cinzento como costuma ser.
Nossa licença impediria que as pessoas usassem nosso software para (entre outras coisas) tomar ações conhecidas por arruinar o estado do planeta para as gerações futuras, explorando o trabalho escravo, promovendo o racismo ou invadindo a psicologia comportamental para fazer as pessoas desperdiçarem muito da sua vida clicando em anúncios.
Estes não são exatamente o problema do carrinho .
A ética é subjetiva
Sim, mas isso não é uma coisa ruim.
Algumas de nossas decisões mais essenciais são subjetivas. Se você estiver interessado, há algumas histórias realmente interessantes de pessoas que tiveram seus centros emocionais danificados em um acidente e não conseguem mais funcionar , apesar de sua razão e objetividade estarem completamente intactas.
Menos filosoficamente. A noção de que é errado pegar o software FOSS e melhorá-lo sem liberar as alterações também é uma posição subjetiva. Este é um ponto de vista subjetivo que forma uma parte essencial da GPL e nem todos no mundo do desenvolvimento de software podem concordar que é uma coisa boa, mas essa diferença de opinião ainda não derrubou a comunidade FOSS ;-)
Seria inconveniente
Bem, esse é o ponto. Se uma empresa está escrevendo software para atos eticamente duvidosos, uma licença ética deve ser um inconveniente.
O mesmo pode ser dito de algumas licenças de software livre. Hoje, algumas empresas estão usando ferramentas como o verificador de licenças, porque não desejam o código GPL em seus produtos.
Se todo autor adotasse sua própria definição de ética e tivéssemos um monte de licenças éticas fora do padrão, isso se tornaria muito árduo e inconveniente, mas se, como fazemos agora em código aberto geral, poderíamos concordar com algumas licenças padrão não há razão para que seja menos conveniente.
As más companhias apenas escreverão suas próprias
Boa. Deixe-os desperdiçar seus recursos, se quiserem lucrar prejudicando as pessoas e o nosso futuro.
Não vou me iludir com o fato de que colocar as pequenas bibliotecas que libertei fora vai inibir materialmente grandes corporações más, mas e se projetos maiores o fizessem?
Por exemplo, o Hadoop da Apache está sendo usado pelas empresas de petróleo e gás para ajudá-las a operar com mais lucro no momento em que deveriam fechar as portas para que possamos evitar um desastre climático.
Se a Apache Foundation determinasse que esses usos não se enquadravam no benefício público que sua missão prevê para seus recursos e decidisse codificar isso em sua licença, as empresas teriam que recorrer a outra coisa, talvez uma solução proprietária cara. Esse arrasto na linha de fundo de uma empresa que prejudica nosso futuro seria uma coisa boa.
É uma ideia nova
Tudo isso dito, a Just World License é uma nova idéia. Achamos que ele tem pernas e gostaríamos de receber feedback ou receber solicitações para torná-lo melhor.
fonte
Existem algumas licenças que proíbem especificamente o uso militar.
http://mindprod.com/contact/nonmil.html
Licenças de código aberto que proíbem explicitamente aplicativos militares
O problema com esse tipo de coisa é que eles se tornam incompatíveis com outras licenças, como a GPL. Portanto, na superfície, eles podem parecer "razoáveis", mas podem prejudicar o uso.
A licença do CryEngine apenas permite o desenvolvimento de 'Jogos' e proíbe especificamente o seguinte:
Jogos sérios:
É claro que isso é provável por razões comerciais, e não éticas, uma vez que eles poderiam obter mais dinheiro com um prestador de serviços militares, por exemplo, e precisariam apenas obter uma licença diferente. Também é meio ruim que jogos educativos não sejam permitidos.
fonte
Qualquer licença que restrinja o uso do software para determinados fins não é, por definição, uma licença de Software Livre . É uma violação do primeiro do que o GNU considera as quatro liberdades essenciais :
Você pode encontrar vários na lista da GNU licenças de software não-livre , mas francamente o mundo está repleto de licenciados de software não-livre. Um bom exemplo é a licença JSON , que inclui isso:
Observe que essa licença é incompatível com a GPL e a LGPL. Isso significa que se alguém tentar usar o software usando essa licença com o software GPL ou LPGL, o trabalho resultante poderá não ser legalmente distribuído a ninguém.
Em geral, eu realmente odeio ter que vasculhar a licença de software caseira de alguém para ver se posso usar o software. Eu tenho coisas melhores para fazer com meu tempo. Descobri que há três licenças que podem ser usadas para qualquer finalidade que eu lançaria publicamente o software:
Se você usar outra coisa, já estou um pouco irritado com você. Se é obscuro o suficiente para que não esteja na lista de licenças do GNU , então eu tenho que analisá-lo pessoalmente, estou triplamente irritado. Normalmente, é mais fácil encontrar outro software com uma licença melhor.
Observe que qualquer pessoa que usar seu software como "maligno" provavelmente também não se importará muito com as restrições de uso em sua licença.
fonte