Qual é o êxito da GPL em alcançar seus objetivos? [fechadas]


16

Existem, de maneira geral, dois tipos de licenças FOSS quando se refere ao uso comercial do código - digamos o tipo GPL e o tipo BSD. O primeiro é, em geral, restritivo ao uso comercial (por uso, também quero dizer modificação e redistribuição, além de criar trabalhos derivados etc.) do código sob a licença, e o segundo é muito mais permissivo.

Pelo que entendi, a idéia por trás das licenças do tipo GPL é incentivar as pessoas a abandonar o modelo de software proprietário e, em vez disso, converter para o código FOSS, e a licença é o instrumento para induzi-las a fazê-lo - ou seja, "você pode usar este bom software , mas somente se você concordar em ir ao nosso acampamento e jogar de acordo com nossas regras ".

O que eu quero perguntar é - essa estratégia foi bem-sucedida até agora? Ou seja, existem grandes conquistas na forma de um grande projeto que vai do fechado para o aberto por causa da GPL ou de algum software sendo desenvolvido ao ar livre somente porque a GPL o fez? Qual o tamanho do impacto dessa estratégia - comparado, digamos, ao mundo em que todo mundo teria licenças do tipo BSD ou liberaria todo o código-fonte aberto sob domínio público?

Observe que não estou perguntando se o modelo do software livre é bem-sucedido - isso está fora de questão. O que estou perguntando é se a maneira específica de convencer as pessoas a converterem de proprietárias em software livre utilizado pelo tipo GPL e não usado por licenças do tipo BSD foi bem-sucedida. Também não pergunto sobre os méritos da GPL como licença - apenas sobre o fato de sua eficácia.


4
A GPL não faz restrições ao uso. É apenas a distribuição que faz restrições.
whatsisname

1
O contraste deve ser com software proprietário, não comercial. Muito comércio acontecendo com software livre.
Lars Wirzenius

2
Si ʇı ʇɐɥʍ uo ɹǝƃuıɟ ʎɯ ʇnd ǝʇınb ʇ, uɐɔ ı ʇnq 'uǝʇʇıɹʍ sɐʍ ן dƃ ǝɥʇ uǝɥʍ ɯoɹɟ ʇuǝɹǝɟɟıp sɯǝǝs p ןɹ oʍ ǝɥʇ ʇnoqɐ ƃuıɥʇǝɯos
Tim Publicar

Respostas:


10

Primeiro, há uma subjetividade inerente à questão - não há como saber com certeza, e a história pode ser interpretada de qualquer maneira. Este é um debate antigo, e uma das questões centrais do debate de código aberto versus software livre. Você também precisa definir o que quer dizer com atingir seus objetivos. É difícil argumentar que a GPL e a FSF não contribuíram para tornar o código aberto um movimento significativo nas últimas 2-3 décadas. Porém, ele não atingiu seus objetivos de todo o código ser software livre.

O modelo dos softwares GPL é, obviamente, o Linux e tudo o que vem da FSF (gcc, etc ...). Curiosamente, para o linux, a GPL não foi escolhida por sua posição política, mas por causa da idéia de reciprocidade, como declarado várias vezes por Linus Torvald. Dou-lhe o meu código, mas você precisa me dar o seu em troca se usar o meu.

No que diz respeito ao Linux, acho que a GPL tem sido muito valiosa - um exemplo recente é o BTRFS, o novo FS desenvolvido dentro da Oracle. O principal escritor do BTRFS declarou que a única razão pela qual a Oracle concordou em primeiro lugar em usar a GPL é porque ela não tinha escolha. A grande questão é se o linux em si se tornou um sucesso porque ou apesar da GPL. Vários fatores, como a incrível liderança de Linus, questões de direitos autorais do projeto * BSD na época, etc ... tornam a hipótese impossível de provar / refutar.

Para o gcc, Stallman escreveu várias vezes por que a GPL salvou o projeto contra a "propietarização".


3
Stallman escreveu várias coisas brilhantes. Ele também escreveu várias coisas que têm uma conexão dúbia com a realidade. Ele alegando que a GPL salvou o gcc contra a "proprietarização" não necessariamente o faz.
APENAS MINHA OPINIÃO correta

com certeza, mas isso é verdade para qualquer reivindicação que você faça sobre esse tópico - eventualmente, dependerá de sua própria opinião sobre o assunto. Eu não acho que possa haver uma resposta definitiva, especialmente porque as ramificações das questões são de natureza ideológica (tanto para licenças GPL quanto para BSD / MIT).
David Cournapeau

O exemplo do Oracle é válido, obrigado. Quanto ao sucesso do Linux, tenho minhas dúvidas de que a GPL tenha sido muito importante, pois há exemplos óbvios de sistemas operacionais com licença BSD. Eles são um pouco menos populares, mas duvido que a GPL seja a razão. Quanto ao gcc, não tenho certeza do que exatamente 'propriedade' significa aqui, mas a Intel possui seus próprios compiladores proprietários (melhores que o gcc); portanto, se Stallman quis evitar esse cenário, ele falhou.
StasM

Eu quis dizer que, se o gcc fosse, por exemplo, BSD, as pessoas poderiam adicionar suas melhorias sem devolver o código à comunidade. O GCC é (foi) escrito de uma maneira que estendê-lo sem integrá-lo à API privada foi difícil de impedir ( gcc.gnu.org/wiki/GCC_Plugins ).
David Cournapeau

18

Eu diria que licenças irrestritas, como as licenças BSD, MIT e Apache, fizeram muito mais para promover o FOSS do que a GPL.

Exemplos:

  • Projeto Castelo,
  • jQuery,
  • SQLite,
  • Apache,
  • Hibernate e nHibernate,
  • ASP.NET MVC,
  • JSON.ORG,

e muitos outros.

A maioria das empresas é muito cautelosa com a GPL para permitir que o código GPL esteja próximo do seu esforço de desenvolvimento, a menos que a própria empresa realmente trabalhe sob o modelo GPL / serviços de valor agregado.


5
Não poderia concordar mais.
configurator

1
Eu também mencionaria a licença LGPL, que aborda alguns dos problemas da GPL padrão: en.wikipedia.org/wiki/LGPL
andre

Como alguma das alternativas acima promove a adoção do licenciamento FOSS?
Mark H

13
Não entendo esta resposta: como a listagem de alguns projetos prova que o BSD / MIT fez mais do que a GPL em código aberto? Você pode obter uma lista semelhante para projetos GPL (linux, gcc, gnome, kde, qt, mysql, emacs, etc ...), e isso também não provaria nada da GPL.
David Cournapeau

1
@ George: sim, QT é LGPL, não GPL, desculpe a confusão. Não acho que isso mude de ideia.
David Cournapeau

8

A GNU GPL foi bem-sucedida, apesar da aplicação do software livre, não por causa disso. As empresas contribuem voluntariamente e liberam código sob a GPL. Não há algoritmos e bibliotecas significativos cobertos por ele, o que obrigaria os desenvolvedores comerciais a se desapropriarem.

A Apple é um bom exemplo. Eles adotaram o KHTML e o aprimoraram no WebKit. E eles lançaram o código de volta à comunidade de código aberto. Embora se possa supor que isso seja porque eles foram forçados pela LGPL, parece improvável. Para Darwin e a área de usuários do BSD, eles publicam voluntariamente o código. E com o LLVM eles começaram um novo projeto FLOSS. No entanto, obviamente, a Apple continua sendo em grande parte um fornecedor de software proprietário.

Android é semelhante. É claro que o suporte a hardware desempenha um papel importante aqui, mas o Google poderia ter adotado uma base de código BSD e a tornado proprietária. Mas eles escolheram o Linux. Assim, eles voluntariamente contribuem de volta, não porque não havia uma alternativa que não seja a GPL.

O Openoffice é uma história mais interessante, porque era realmente proprietária em um ponto. Mais uma vez, a conversão da LGPL foi voluntária, não necessária. A licença do tipo * GPL, entretanto, tornou possível neste caso. Uma licença acadêmica do tipo BSD não seria suficiente para a Sun lançar o Openoffice, porque outra pessoa poderia ter proprietário o código na época. E, nesse sentido, a GNU * GPL foi bem-sucedida.

A cláusula recíproca / viral não leva diretamente a mais código-fonte aberto. Porém, os fornecedores de software a utilizam quando querem e, portanto, contribuem para o pool do FLOSS. No entanto, a maioria dos fornecedores faz isso sem querer. Vejo pouca diferença entre as licenças no estilo BSD e no GPL no sentido de incentivar mais contribuições de código.
Em conclusão, a GNU GPL foi bem-sucedida, mas também impulsionou as licenças no estilo BSD / MIT, onde são mais apropriadas. Mas você também pode simplesmente medir o sucesso na "quantidade de código", que acredito ser a métrica real da FSF.


5
Engraçado que você deve mencionar o Android, pois saiu do caminho de encontrar deliberadamente uma brecha na GPL, o que lhes permitiu lançar uma plataforma não modificável. (Algo que as versões posteriores da GPL restringem). O Google absolutamente não compartilha os mesmos ideais que a FSF, e o fato de o Android ser um software FOSS é irrelevante, porque ninguém tem recursos para competir com o Google em sua própria plataforma (se eles tivessem concorrência com que se preocupar, eles teriam ' você escolheu uma solução alternativa). Além disso, a Apple não iniciou o LLVM.
Mark H

@parkie: Isso é interessante. Ainda ontem, li um artigo em que um desenvolvedor do Google criticou os fornecedores de celulares por bloquear celulares contra firmwares Android de terceiros. (Embora eu não tenho nenhuma dúvida de que Googles esforços de código aberto são principalmente de apresentação.)
mario

Não vamos esquecer um dos maiores projetos da GPL, o Linux. Nenhum dos grandes fornecedores que adicionaram seu código a ele (IBM, Oracle etc.) tinha a opção de dividir e apropriar-se de um 'núcleo aprimorado de nível corporativo'; eles tiveram que torná-lo público. Mas provavelmente essas partes da infraestrutura universal são sobre toda a área em que a GPL é mais útil do que as licenças no estilo BSD.
9000

3

Olhando para o Manifesto GNU , não está claro que convencer as empresas a lançar o software FOSS era um dos objetivos. Aqui está uma citação:

Para que eu possa continuar usando computadores sem desonra, decidi montar um corpo suficiente de software livre para poder me dar bem sem nenhum software que não seja gratuito.

Se apenas olharmos para esse objetivo, o projeto GNU foi amplamente bem-sucedido. Temos um sistema operacional GPL, um pacote de escritório, bancos de dados e muitos outros aplicativos que podem ser modificados e redistribuídos livremente.


Pelo que entendi, o objetivo final é tornar o máximo possível de software livre e, como muitos softwares são escritos por entidades comerciais, também é um importante objetivo secundário torná-lo gratuito. Se o objetivo era apenas escrever um corpo de software para ser usado sem a necessidade de software não-livre, por que não colocá-lo em domínio público? Obviamente, a natureza viral da GPL tem alguns objetivos que não são alcançáveis ​​por PD ou mesmo pela licença BSD. O que você acha que esses objetivos são?
StasM

A GPL impede a estratégia de "abraçar e estender", para que alguém não possa usar, por exemplo, o Emacs, adicionar extensões que se tornam tão populares que não podem ser vividas sem e liberar tudo sob uma licença proprietária. Dito isto, o manifesto GNU mostra claramente qual era o objetivo da GPL, pelo menos originalmente.
Larry Coleman

1

Eu acho que as duas licenças GPL e BSD são importantes para o mundo do software livre. Eu vejo o uso da GPL em dois grupos. Um é o grupo de apoiadores de código aberto muito engajados. Eles acreditam que a possibilidade de transformar o código aberto novamente em um trabalho exclusivo prejudicará o mundo OSS. Pessoalmente, acho que esse não é o grande problema. O PC-BSD (uma variante proprietária do BSD) não danifica a comunidade BSD. O segundo grupo que adota a GPL são grandes empresas. Eles usam a licença para manter mais controle sobre o produto (para apoiar seu modelo de negócios, por exemplo). A competição terá problemas, para ganhar dinheiro com outro produto de software licenciado pela GPL. Assim, a empresa pode ficar à frente da concorrência e, ao mesmo tempo, ganhar um bom karma pelo código aberto do seu produto.


2
você esquece o terceiro campo, que eu acho bastante significativo: reciprocidade. Ou seja, você não se importa com software proprietário, mas não deseja que seu código lançado como código aberto seja usado em proprietário. A GPL fornece isso, o BSD não. Esse é o acampamento em que estou, pelo menos.
David Cournapeau

0

Minha perspectiva pessoal é de um desenvolvedor individual, que não está empregado há algum tempo devido à deficiência e que espera (ou sonha) poder voltar a viver da única habilidade valiosa que tenho.

A GPL é usada para projetos comerciais o tempo todo. O problema é o que às vezes é chamado de natureza "viral", o que significa que, se você usar algum código GPL em um projeto, provavelmente precisará GPL todo o código desse projeto. Alguns reivindicam uma exclusão para vinculação dinâmica. As Perguntas frequentes da GPL afirmam que a vinculação dinâmica a plug-ins foi proibida devido a estruturas de dados compartilhadas - http://www.gnu.org/licenses/gpl-faq.html#GPLAndPlugins. Isso parece estranho, pois todos os aplicativos do Windows se vinculam dinamicamente aos componentes do Windows e compartilham estruturas de dados com o Windows (um aplicativo é, de várias maneiras, um plug-in do sistema operacional), mas existem aplicativos GPL para Windows, incluindo muitos lançados pelo GNU. Talvez isso signifique disfarçar ponteiros como manipuladores e fazer a maioria dos acessos via funções não contar como compartilhar estruturas de dados, o que seria uma brecha que qualquer API de plug-in especialmente projetada ou biblioteca vinculada dinamicamente poderia explorar, mas obviamente um desenvolvedor individual precisa se proteger sobre essas questões.

De qualquer forma, há boas razões para a natureza "viral" da GPL, mas, para um pequeno desenvolvedor com uma necessidade desesperada de ganhar a vida, isso parece suspeito de doar seu trabalho por nada. Não podemos todos ganhar dinheiro cobrando pelo suporte ou vendendo livros com eficácia, pois, entre outros problemas, nem todos temos as habilidades relevantes. Além disso, se o seu produto tiver um manual gratuito inadequado, o manual do mundo real provavelmente acabará sendo Stack Overflow ou Superuser ou o que quer que seja - não o manual pago. E isso pressupõe que alguém se incomode em descobrir isso.

Desse ponto de vista, as licenças no estilo BSD são muito atraentes. Admito que é hipócrita explorar outro trabalho de código aberto e ainda manter os produtos resultantes fechados, mas isso deve ser equilibrado com outros problemas.

OTOH, eu nunca lancei nada, aberto ou fechado - pelo menos não desde um monte de plugins que eu basicamente tornei domínio público cerca de dez anos atrás (e como os anos extras de experiência me ensinaram, eles não foram tão bem escritos ) Então, a coisa toda é acadêmica para mim, pelo menos por enquanto.

Ainda assim, toda vez que olho para uma biblioteca com uma licença no estilo GPL, meu primeiro pensamento é "se eu ficar dependente disso, limito minhas opções".


As bibliotecas principais do Windows não estão sob a GPL, portanto, você não precisa GPL seu aplicativo se vincular a elas. Não sei em que licença eles estão, mas não diz: "Seu aplicativo deve ser de código fechado se você vincular a isso". O problema é apenas ao vincular a uma biblioteca GPL. As bibliotecas do Windows não são GPL.
Jsternberg

Meu argumento é que o aplicativo (efetivamente um plugin do sistema operacional) está sob a GPL. Se foi proibido escrever um plug-in GPL para o Photoshop não-GPL (porque você não pode liberar a fonte do Photoshop), por que não foi proibido gravar um "plug-in" GPL para o Windows não-GPL? Por exemplo, qualquer aplicativo de linha de comando executado nos links dinâmicos do Windows para DLLs, como user32.dll, e compartilha estruturas de dados (no mínimo, cadeias) com as APIs de E / S do console. Esse acesso pode ser feito indiretamente, por meio de APIs de biblioteca padrão, mas também existem implementações de biblioteca padrão distribuídas sob licenças GNU.
Steve314

Na verdade - acho que existem bibliotecas padrão sob licenças GNU, mas não tenho certeza se isso significa GPL.
Steve314

1
@ Steve314: Leia a GPL com mais cuidado. Você tem permissão para vincular a componentes padrão do sistema, embora eu não me lembre do idioma exato. A GPL foi cuidadosamente projetada para a praticidade - praticidade na promoção de uma certa visão ideológica, mas praticidade, no entanto.
David Thornley

1
@ steve: esqueça o link, etc ... A GPL nunca se refere a isso (a LGPL faz). A GPL diz que um software derivado deve ser lançado sob a GPL, onde derivado é propositadamente deixado indefinido, embora a idéia seja que, se um software não puder funcionar sem o original sem ser significativamente alterado, ele será derivado. Se você criar um aplicativo em cima de um SO, o SO não será um derivado da aplicação (a relação não é reflexivo)
David Cournapeau

-2

Eu acho que quando as pessoas pensam na GPL, pensam nos ideais gnu, nos quais o software deve ser livre, para que as idéias surjam e que as grandes empresas sejam os bandidos, porque não permitem isso. O problema é que o modo de pensar não compra muitos programadores porque eles apenas querem codificar suas coisas, possuem programas e também possuem vida própria, que não envolve necessariamente software, sob essa visão, o BSD e as outras licenças são muito mais atraentes, no mesmo sentido em que Linus é mais popular do que Richard Stallman para os desenvolvedores, porque o primeiro só quer fazer o que quer (como muitos de nós), enquanto o outro quer tentar mudar o mundo inteiro. Então, no final, a GPL é como Mikhail Gorbachev, alguém que inicia a evolução, mas não está destinado a vê-la bem-sucedida.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.