Um complemento disponível gratuitamente para um software proprietário pode ser considerado código aberto?

Um complemento disponível gratuitamente para um software proprietário pode ser considerado código aberto?

Em um artigo que li recentemente, os autores promovem seu software como código aberto porque foi lançado no GitHub sob a licença Apache 2.0. No entanto, o software é um complemento de um software proprietário (código fechado) e não livre. Além disso, foi desenvolvido em C# e .NET Framework, que, pelo menos historicamente, não é considerado código aberto ou software livre. Com base nisso, é realmente correto rotular esse software complementar de código aberto?

Responder1

A resposta para isso é um tópico bastante debatido... talvez principalmente dentro da comunidade de hardware de código aberto.

Fundamentalmente - "É permitido referir-se a um projeto como código aberto se as ferramentas necessárias para editar/construir as fontes não forem de uso gratuito?"

Exemplos:

  • Projetos com dependências de tempo de construção em ferramentas que não são de uso gratuito (por exemplo: projetos de hardware projetados usando Altium)
  • Projetos com dependências de tempo de execução e ambientes operacionais que não são de uso gratuito (por exemplo: projetos de software projetados para uso em Windows)

Na minha opinião, se a resposta fosse "Não", então um exemplo extremo seria aquelequalquersoftware que só roda em um sistema operacional não-livre, como o Windowsnão podeser referido como "Código aberto"... Mesmo se istopoderiaser executado em um ambiente emulado comoVinho, ele não foi projetado para esse uso.


No entanto, minha opinião é que se as fontes estiverem abertas para qualquer pessoa inspecionar e revisar, então "Sim"é permitido referir-se ao projeto como"Código aberto".

Tenha em mente que o "Fonte" em "AbrirFonte" refere-se aos arquivos de origem - as partes componentes originais de um projeto que são usadas com várias ferramentas para produzir um resultado final utilizável.

"Fontes" cobre:

  • Código fonte do aplicativo
  • Construa infraestrutura ou scripts (por exemplo:Makefiles)
  • Arquivos de projeto (ex.: VCProj)
  • Documentação
  • etc...

opensource.com define "Código aberto" como:

algo que as pessoas podem modificar e compartilhar porque seu design é acessível publicamente


Observe que as ferramentas C# e .NET são de fato "de uso gratuito", mas são de "código fechado":

https://visualstudio.microsoft.com/downloads

Comunidade do Visual Studio 2017

IDE gratuito e completo para estudantes, desenvolvedores de código aberto e individuais

Responder2

Com base nas informações fornecidas, o suplemento éabsolutamentegratuito e de código aberto. A parte "gratuita" é o fato de ser licenciado sob a licença Apache. E é de código aberto, pois eles oferecem o código-fonte.

O fato de o complemento ser feito para um aplicativo de código fechado não gratuito é irrelevante. Esse aplicativo é uma entidade completamente diferente e não tem relação com a "gratuidade" dos suplementos ou com sua fonte. O mesmo vale para a linguagem de programação. Você pode pegar o suplemento e redistribuí-lo sob os termos da licença Apache e modificar o código-fonte fornecido.

Responder3

Se alguém disser que algo é "código aberto", você deve se perguntar se consegue ver o código completo em que este produto consiste. Se a resposta for sim, então é realmente "aberto". É claro que o OSI tem uma definição clara de"Código aberto", que lhe dá muito mais direitos e elimina muitas restrições. O "código aberto" é geralmente visto como menos rigoroso do que"software grátis"com base na definição de Richard M. Stallman e da Free Software Foundation. Alguns dos raciocínios de seu ponto de vista podem ser encontradosaqui.

Eu diria que, no seu caso, o software parece ser de código aberto no sentido OSI, porque a licença lhe dá todos os direitos. Que o software não ajuda muito sem o .NET Framework é outra história - você ainda pode usar o software semrestrições legaispara o .NET Framework. Você pode dar uma olhada, talvez o complemento em si possa ser executado com o .NET Standard, quem sabe - mas isso não muda o fato de que provavelmente é "código aberto". Eu não chegaria ao ponto de descrevê-lo como software livre, porque não sei como o programa trata seus usuários. Aí eu não concordo necessariamente com @keltari.

informação relacionada