Digamos que eu inicie e desenvolva algum projeto sob licença de código aberto e aceite algumas contribuições da comunidade. Quão insegura é minha posição se decidir levar o projeto comercial e de código fechado (ou licença dividida)?
Esta questão não aborda diretamente a questão de um projeto com contribuições da comunidade, que parece um território diferente, pelo menos no que diz respeito à ética. Legalmente, isso também pode ser duvidoso, porque não tenho certeza se as contribuições se enquadram nos meus direitos autorais ou se o contribuinte detém os direitos autorais da parte do projeto que ele adicionou.
Eu estou seguro (ética e legalmente) desde que esteja na frente da possibilidade de poder comercializar o projeto no futuro?
Respostas:
Em geral, os colaboradores da comunidade reteriam seus direitos autorais sobre o código que eles contribuíram para o projeto. Eles licenciam a contribuição para você quando contribuem com o código. Se você quiser manter a possibilidade de alterar os termos da licença no futuro, geralmente precisará de colaboradores para atribuir seus direitos autorais (pessoalmente ou uma entidade corporativa criada para possuir os direitos autorais deste projeto) ou os termos alterados precisariam para ser compatível com os novos termos da licença. Obviamente, se você precisar desse tipo de papelada de atribuição de direitos autorais antes de poder aceitar uma contribuição da comunidade, é muito menos provável que a comunidade decida contribuir e você terá que fazer uma quantidade razoável de trabalho obtendo as formas legais em ordem antes de aceitar cada contribuição. Mais, existe uma grande chance de seu projeto ser bifurcado se e quando você decidir alterar os termos da licença. Parece-me improvável que um novo projeto de código aberto receba muitas contribuições da comunidade nessas circunstâncias.
Geralmente, seria mais fácil se você licenciasse o produto sob os termos da licença dividida inicialmente ou se os termos da licença inicial fossem compatíveis com um produto futuro de código fechado. O código que está sob a licença BSD, por exemplo, pode ser incorporado a um produto comercial a qualquer momento. Portanto, se o projeto e as contribuições estiverem sob a licença BSD, você poderá facilmente lançar uma versão comercial do mesmo produto. Sua intenção (ou opção) de produzir um produto comercial, no entanto, provavelmente diminuirá o interesse em fazer contribuições para o seu projeto - a maioria dos desenvolvedores de código aberto não está interessada em fazer contribuições não pagas a um produto comercial.
É claro que, como em qualquer questão legal, você gostaria de conversar com um advogado, em vez de confiar em uma postagem no fórum antes de tomar qualquer tipo de ação definitiva. Você quase certamente desejará que esse advogado rascunhe o documento de atribuição de direitos autorais que precisará que as pessoas assinem e que discuta seus planos para o futuro com o advogado para garantir que tudo esteja configurado corretamente.
fonte
Se o projeto for licenciado sob uma das licenças mais permissivas (BSD, MIT, Boost ou Apache são as que eu conheço permitem isso), legalmente você poderá distribuir o código do objeto e não precisará fornecer as modificações feitas para o código fonte de volta para a comunidade. Você também pode licenciar o trabalho derivado sob uma licença diferente. Observe que você ainda precisa incluir o texto da licença conforme os requisitos de licença.
Se isso é ético ou não, é algo bastante controverso. Costumo pensar que, se um desenvolvedor licenciou seu código sob uma dessas licenças mais permissivas, deseja que o software seja usado em projetos de código aberto e comerciais. Se eles não desejassem o uso comercial de seu código, deveriam ter o licenciado sob a GPLv3.
fonte
Qualquer contribuição que eu der ao seu projeto permanece meus direitos autorais, a menos que eu a atribua a outra pessoa. Ser o detentor dos direitos autorais significa que posso decidir em que licença meu trabalho está disponível.
Portanto, o licenciamento é um problema relacionado, mas separado. Se eu contribuir com o seu projeto, devo concordar em liberar meu trabalho sob a licença do projeto (ou talvez compatível).
Muitas licenças de código aberto não permitem que você feche a fonte derivada posteriormente, mas algumas o farão. Se bem entendi, ninguém permitiria que você fechasse a base de código atual (aberta), e isso também é algo que você precisa considerar.
Portanto, você precisará começar com uma licença que permita fechar o desenvolvimento futuro ou ter um acordo nesse sentido com todos os colaboradores. É melhor conversar com um advogado antes que haja contribuições significativas e ser muito franco quanto ao que você está tentando fazer.
fonte
Se você deseja alterar a licença do seu projeto, solicitou a todos os colaboradores que assinassem um "contrato de colaborador" ou solicitou a permissão de todos os colaboradores.
o que é bastante difícil e a razão pela qual o kernel Linux ainda está sob o gpl v2
fonte
A maioria dos projetos de SO parece ter um braço comercial anexado a eles, como uma versão Enterprise. Basicamente, eles oferecem SLAs, suporte etc. Acho que se o projeto é de código aberto, fundamentalmente você não pode simplesmente fechá-lo. Você poderá criar versões futuras de código fechado e renomeá-las, ou fazer addons de código fechado, mas os projetos reais, tanto quanto eu entendo, devem permanecer de código aberto. Eu acho que a empresa é o melhor caminho a percorrer, você ainda obtém benefícios de código aberto e pode gerar receita.
Por curiosidade, por que você deseja fechar o código do seu projeto?
fonte
Legalmente, se você usar uma licença aberta o suficiente para que qualquer pessoa envolvida possa comercializá-la, eu imaginaria (não sendo advogado) que você também seria capaz de fazê-lo.
Eticamente você teria uma obrigação mais forte. Você teria que ser muito aberto e claro sobre suas intenções, inicialmente e ao longo do tempo, à medida que seus planos mudam.
fonte
Além disso, convém adotar um modelo semelhante ao da Redhat. Construindo plug-ins de código fechado, mas deixando o código-fonte aberto. Isso também pode levar a uma inovação melhor, pois você ainda obterá suporte da comunidade para um produto que pode beneficiar a comunidade de código aberto. Oferecer treinamento, consultoria e suporte também pode facilitar o negócio.
fonte