3. Licenciamento de software ============================ 3.1 - O que é e por quê licenciar? ---------------------------------- * Propriedade intelectual: marcas, patentes, direito autoral. * Licença padrão e automática: copyright. * No Brasil: `Lei 9610/98 `_. 3.2 - Licenças básicas ---------------------- 3.2 - Domínio Público ~~~~~~~~~~~~~~~~~~~~~ * Obras sem direitos autorais, isto é, não protegidas por legislação de autor. * Existe direito moral (autores/as podem reinvindicar a autoria). * Trabalhos podem ser modificados e vendidos mesmo sem citar a fonte. * Obra "doada ao infinito". 3.2 - MIT ~~~~~~~~~ * Próxima do domínio público. * Trabalhos derivados podem se tornar proprietários. * Permite sublicenciamento. * Exemplos de software sob esta licença: Ruby on Rails, Node.js e jQuery. Imagens: * Licença MIT. 3.2 - Estilo BSD ~~~~~~~~~~~~~~~~ * Similar à Licença MIT. * Família de licenças. * Exemplo: New BSD: permite redistribuição (fontes e binários): * Desde que mantido o texto de copyright. * Desde que o nome dos/as autores não seja usado para promover produtos derivados. * Mas exime autores(as) de quaisquer responsabilidade advindas do software. Imagens: * Licença BSD. 3.2 - Vantagens e desvantagens ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Vantagens: * Facilmente legíveis (licenças pequenas). * Flexibilidade: aderência a modelos de negócios. Desvantagens: * Trabalhos podem se tornar proprietários. * Contribuições não necessariamente voltam à origem. 3.3 - Copyleft: GNU GPL ----------------------- 3.3 - Histórico --------------- * Custo crescente e comodificação do software. * Ameaça ao "commons" hacker. * Free Software Foundation. * Licença copyleft "viral": garante as liberdades. 3.3 - Quatro liberdades do software livre ----------------------------------------- * 0. Rodar. * 1. Estudar. * 2. Redistribuir. * 3. Melhorar. Exemplo: `licença desta documentação `_. 3.3 - Sabores ~~~~~~~~~~~~~ * GNU GPL: licença padrão. * GNU FDL: para documentação. * GNU Affero GPL: requer a disponibilização de código fonte por quem roda o software. 3.3 - Open Source versus Free Software -------------------------------------- * Free Software: liberdade como princípio. * Open Source: código aberto favorece negócios. 3.4 - Creative Commons ---------------------- * Conjunto de licenças (7 licenças padrão). * Escopo abrangente. Em geral usado para o que não é software. * Formatos curto, longo e compreensível por máquina. * Parâmetros: * Atribuição. * Compartilhamento sob a mesma licença. * Se o trabalho é comercial ou não. * Permite ou não trabalhos derivados. 3.5 - Outras licenças --------------------- 3.5 - Apache ~~~~~~~~~~~~ * Similar às licenças BSD e MIT. * Linguagem mais adaptada ao direito. * Dá permissão ao uso de quaisquer patentes dos autores que estejam no código. * Exemplo: Android. 3.5 - MPL (Mozilla) ~~~~~~~~~~~~~~~~~~~ * Hibridação da New BSD com a GPL: balanço entre o mundo livre e o proprietário. * Código em MPL deve permanecer em MPL. * Mas código MPL pode ser mesclado com código proprietário. * Exemplo: Mozilla Firefox (integra com plugins proprietários). 3.6 - Licenciando o seu trabalho -------------------------------- 3.6 - Escolhendo a licença ~~~~~~~~~~~~~~~~~~~~~~~~~~ * Compatibilidade entre licençar (distribuição e linkagem). * Sublicenciamento. * Você pode criar sua própria licença! * Você pode licenciar o seu trabalho sob múltiplas licenças. Roteiro do screencast: :: cd ~/projetos/blogatico wget https://www.gnu.org/licenses/gpl.txt -O LICENSE.txt 3.7 - Atividades ---------------- #. Escolha uma licença para o seu projeto. #. Caso seu projeto possua conteúdo que não seja apenas software (ícones, imagens, etc), entre no gerador de licenças do CreativeCommons e gere uma licença. Guarde o código de embarcação da mesma para inseri-la no seu projeto. #. Bônus: escreva uma pequena licença de software. Isso pode lhe ajudar a entender melhor o que você acha importante numa licença. 3.8 - Referências ----------------- * `TLDRLegal `_. * `Open Source Initiative `_. * `CreativeCommons Brasil `_. * `Free Software Foundation — working together for free software `_. * `Apache license vs BSD vs MIT - Stack Overflow `_. * `Escolher uma licença open source não precisa ser assustador - EscolhaUmaLicenca.com.br `_. * `Choosing an open source license doesn’t need to be scary - Choose a License `_. * `O problema da Licença BSD - Projeto GNU - Free Software Foundation `_. * `Software livre, código aberto e software gratuito: as diferenças `_. * `Licença Pública Mozilla versão 1.1 `_.