Tópicos populares
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
Se alguém está tão confuso sobre licenças de software quanto eu estava, aqui está como eu as vejo agora. Licenças de software controlam o que as pessoas podem fazer com o seu código.
A licença MIT permite que as pessoas façam qualquer coisa. Digamos que você construa uma biblioteca de análise JSON com licença MIT. Uma startup pode pegar seu código, modificá-lo e vendê-lo como parte do seu serviço de API pago sem lhe dar nada em troca. Eles só precisam manter o seu aviso de copyright nos comentários do código. O React usa MIT, então o Facebook poderia ter tornado isso proprietário, mas eles escolheram mantê-lo aberto. Esta é a licença "faça o que quiser".
A GPL força o compartilhamento. Imagine que você cria um framework web sob GPL. Se alguém modifica seu framework para adicionar novos recursos, eles devem liberar essas modificações como GPL também. Eles não podem vender uma versão proprietária. O WordPress usa GPL, então todos os temas e plugins do WordPress também devem ser GPL. Se você construir um CMS comercial em cima do WordPress, todo o seu CMS se torna GPL. Isso mantém tudo como código aberto.
A Apache 2.0 lida melhor com patentes. Você escreve uma biblioteca de aprendizado de máquina e alguém contribui com um algoritmo. Mais tarde, eles tentam processar usuários por violação de patente nesse algoritmo. Com a licença Apache, eles perdem automaticamente seus direitos de usar sua biblioteca. É uma proteção contra trolls de patentes. O Kubernetes usa Apache 2.0 porque as empresas de nuvem se preocupam com questões de patentes.
A BSD é basicamente MIT com palavras diferentes. Você cria uma biblioteca de rede sob BSD. As mesmas regras que a MIT, as pessoas podem fazer o que quiserem. O FreeBSD usa isso, que é por isso que a Apple pôde pegar o código BSD e colocá-lo no macOS sem liberar o código-fonte do macOS. A maioria dos desenvolvedores usa MIT agora porque é mais claro.
A LGPL é GPL para bibliotecas. Você constrói uma biblioteca de geração de PDF sob LGPL. As empresas podem usar sua biblioteca em seu software proprietário sem tornar todo o seu aplicativo LGPL. Mas se elas modificarem o código da sua biblioteca, essas mudanças devem ser LGPL. O VLC media player usa LGPL para que outros aplicativos possam incluir reprodução de vídeo sem se tornarem GPL.
Proprietário significa que você controla tudo. Você constrói um mecanismo de banco de dados e o mantém proprietário. As empresas pagam taxas de licença para usá-lo. Elas não podem ver o código-fonte, não podem modificá-lo, não podem redistribuí-lo. O Oracle Database funciona assim. Você ganha dinheiro com licenciamento, mas limita quem pode usá-lo.
Licenciamento duplo oferece opções. Você libera um banco de dados sob licenças GPL e comercial. Projetos de código aberto usam a versão GPL gratuitamente. Empresas que não querem as restrições da GPL pagam pela licença comercial. O MySQL faz isso. Startups usam MySQL gratuito, grandes empresas muitas vezes compram licenças comerciais.
Domínio público renuncia a todos os direitos. Você cria uma função hash e a coloca em domínio público. Qualquer um pode fazer qualquer coisa com isso, sem restrições, sem atribuição necessária. O SQLite faz isso. Agências governamentais adoram isso porque não há risco legal.
Construindo uma biblioteca que você quer que todos usem? Escolha MIT. Quer garantir que as melhorias voltem para a comunidade? Use GPL. Preocupado com patentes em software empresarial? Vá com Apache. Construindo um negócio em torno do seu código? Mantenha-se proprietário. Quer máxima liberdade para os usuários? Experimente o domínio público.
A chave é alinhar seus objetivos com as restrições da licença. Não copie apenas o que outros projetos fazem sem entender por que escolheram essa licença.
22,18K
Top
Classificação
Favoritos