Eu era advogado de propriedade intelectual, por isso tenho experiência com licença-ese. Eu sinto que os termos em si são razoavelmente legíveis e compreensíveis, mas, novamente, sou prejudicado por três anos de faculdade de direito e algum tempo de advocacia antes de recuperar meu juízo e voltar a invadir. Especialmente porque atualmente não sou advogado ativo, isso certamente não se destina a aconselhamento jurídico nem um pouco.
Vamos começar com o próprio idioma da licença do MIT. A seguir, apresentarei alguns pontos-chave para entender as licenças de código-fonte aberto, abordarei suas perguntas e apresentarei observações de alto nível.
A permissão é concedida, gratuitamente, a qualquer pessoa que obtenha uma cópia deste software e dos arquivos de documentação associados (o "Software"), para negociar no Software sem restrições, incluindo, sem limitação, os direitos de uso, cópia, modificação, fusão , publique, distribua, sublicencie e / ou venda cópias do Software e permita que as pessoas a quem o Software é fornecido o façam, sob as seguintes condições: (que eles deixem este aviso nele. O final.)
Algumas coisas importantes com a maioria das licenças de código aberto (incluindo BSD, MIT, GPL) para proprietários de direitos autorais são:
- A licença não altera sua propriedade dos direitos autorais. É uma licença não exclusiva, não uma cessão ou perda de propriedade. O uso de uma licença do sistema operacional não é "colocar algo em domínio público", embora essa seja certamente uma abordagem do código aberto.
- Nada "força" você, o proprietário dos direitos autorais, a tornar o código público de qualquer maneira apenas porque você anexa uma licença a ele.
- Mas se você usar uma licença do sistema operacional, não poderá impedir que qualquer pessoa que "obtenha" o seu código licenciado no sistema o torne público de qualquer forma, o que está explicitamente sob seus direitos sob todas essas licenças.
- As licenças da Copyleft (por exemplo, GPL) exigem que os adquirentes (mas não os proprietários) tornem suas obras derivadas públicas e de código aberto. Permissivo (MIT, BSD) não. (isso pode ser um pouco de simplificação, mas é a diferença essencial)
- Não existe uma cláusula de "devolução" para a maioria das licenças de código-fonte aberto (por exemplo, o MIT). Assim, quando alguém "obtém" seu código, ele tem o direito de usá-lo permanentemente, de acordo com os termos da licença em que o recebeu.
- Você sempre pode distribuir versões futuras do seu código sob uma licença diferente ou mantê-las completamente proprietárias. Isso não impede que alguém comece com a sua versão anterior de código aberto (supondo que a "tenha obtido") e adicione suas próprias peças novas e a distribua.
- Você pode remover um canal de "obtenção" para versões anteriores do seu código, por exemplo, retirá-lo do github. No entanto, como mencionado, isso não impede que outras pessoas usem ou distribuam nenhuma versão anterior que você tenha aberto, de qualquer forma.
Com essa base, passarei às suas perguntas.
Não estou distribuindo meu código para ninguém. Não preciso distribuir meu código licenciado do MIT a ninguém, se eu possuir os direitos autorais, correto? Quero dizer, alguém pode solicitar que eu libere meu código que agora afirmo que está sob licença do MIT? Não seria o fim do mundo e eu certamente concordaria em fazer isso sob uma ameaça legal. ... Ao mesmo tempo, não quero distribuir esse código como um projeto de código aberto para ninguém.
Como detentor dos direitos autorais, você não precisa distribuir nenhum código para ninguém; você não precisaria atender a essas solicitações (mesmo que fosse a GPL). Você mantém todos os direitos. No entanto, na situação descrita, você estaria distribuindo para sua nova empresa e licenciando-a perpetuamente sob uma licença de sistema operacional. Seu empregador (provavelmente ex-empregador) poderia colar seu código na Internet e você não seria capaz de fazer nada além de resmungar.
Suponho que você queira dizer "alguém além do meu empregador". Se você não deseja entregá-lo ao seu empregador "como código aberto" e conceder a ele todos os direitos incluídos nessa licença, incluindo redistribuição e uso perpétuo da maneira que desejar, então você não deve usar um licença de código aberto. Você deve apenas licenciá-lo diretamente para eles, nos termos que desejar. Bullet indica o que você quer e solicite a um advogado uma hora ou duas para colocá-los em um formulário de parágrafo. Ou escreva você mesmo. Licenças são apenas contratos que são apenas acordos postos em palavras.
Meu objetivo final é poder usar uma versão derivada da minha estrutura codificada anterior sem perder os direitos autorais.
Você não pode perder os direitos autorais a menos que o atribua a alguém, licencie-o exclusivamente (incluindo a exclusão de si mesmo) ou perca-o. Licença de código aberto não é nenhuma delas. Você sempre poderá usar as versões derivadas criadas e poderá licenciar as derivações de maneira diferente ou manter todos os direitos.
Porém, uma das suas principais e legítimas preocupações parece ser a de que você poderá reter os direitos autorais e usar seu código no futuro sem que o empregador reivindique o código como deles ou que você esteja fora dos seus direitos. A chave para isso é criar uma evidência irrefutável de que A) você mantém os direitos autorais de seu trabalho anterior e os fornece sob os termos da licença X (o MIT funciona, se você estiver de acordo com o aspecto de código aberto descrito acima. ) B) eles concordam com estes termos, e C) o que exatamente era o trabalho anterior.
Para (A) e (B), você pode assinar ou concordar por escrito com algo que faça referência ou inclua a licença e que eles entendam que você está trazendo o código para a tabela sob esses termos. Quanto a (C), não tenho certeza de qual seria a maneira padrão de fazer isso, mas seja lógico. Se não for muito grande, basta imprimir o código e incluí-lo no adendo nas cópias do contrato que você e seu empregador assinam. Mantenha sua cópia, com a assinatura deles. Se for grande demais para imprimir praticamente, parece que um hash md5 seria útil aqui. Talvez você possa se referir a ele como algo como "o arquivo zip chamado X no repositório privado do github /, (ou site ftp etc.), que possui um hash md5 de XXXXXX ... e foi enviado por e-mail ao representante da empresa Y em Z encontro". Em seguida, você pode enviá-lo por e-mail ao seu gerente ou advogado ou a qualquer pessoa da sua conta de e-mail pessoal e, mesmo que eles excluam a cópia, você ainda mantém a sua e eles não podem argumentar que você previu o futuro hash de código md5 que ainda não foi gravado. . Teoricamente, isso os impediria de reivindicar qualquer outra coisa no caminho.