Há algum código que é GPL ou LGPL que estou pensando em usar para um projeto do iPhone.
Se eu pegasse esse código (JavaScript) e o reescrevesse em um idioma diferente para uso no iPhone, isso seria um problema legal?
Em teoria, o processo que aconteceu foi que eu passei por cada linha do projeto, aprendi o que estava fazendo e depois reimplementei as idéias em um novo idioma.
Para mim, parece que é como aprender a implementar algo, mas depois reimplementá-lo separadamente da licença original. Portanto, você copiou apenas o algoritmo, o qual, sem dúvida, você poderia ter aprendido em outro lugar que não o projeto original.
A licença cobre a implementação específica ou o algoritmo também?
EDITAR------
Realmente feliz em ver este tópico criar uma boa conversa. Para dar um pouco mais de apoio ao projeto, o código envolvido faz algum tipo de análise de áudio. Acredito que não é trivial aprender ou implementar, embora eu estivesse preparado para iniciar essa tarefa (estou no nível em que posso implementar um algoritmo FFT , e isso iria além disso.) script LOC baixo , então não achei que seria muito difícil fazer uma porta reta.
Eu realmente gosto da idéia de relançar minha porta e usá-la no aplicativo. Não vejo nenhum problema com isso, e seria uma ótima maneira de devolver algo à comunidade.
Eu acrescentaria uma linha sobre não querer discutir as questões morais, mas estou muito feliz por não ter feito isso, pois parece ter disparado um pouco o debate.
Ainda me sinto um pouco estranho ao usar o código-fonte aberto para aprender. Isso significa que qualquer coisa que se aprende em um projeto de código aberto não pode ser usada em um projeto de código fechado? E quanto tempo depois ou diferente de uma implementação deve ser para não ser considerada violação da licença? Murky!
EDIT 2 --------
fonte
Respostas:
Eu não sou um advogado. Este não é um conselho legal.
Dito isto, pegar todas as linhas de um aplicativo e alterá-lo levemente com o único objetivo de burlar a lei de direitos autorais está flagrantemente, obviamente, criando um trabalho derivado sem defesa plausível. Mesmo o juiz e o júri mais procurados definitivamente encontrarão contra você se você for arrastado para o tribunal.
Apenas como comparação: as empresas que precisam reescrever algo para interoperabilidade geralmente contratam diferentes grupos de pessoas para entender a fonte e criar a porta ("implementação de sala limpa"), para que ninguém possa acusá-las de criar uma derivada derivada. trabalhos. O que você propõe é exatamente o oposto.
fonte
De acordo com Betsy Rosenblatt do Copyright Basics da Harvard Law School :
Parece-me que você violaria o item 2 acima.
No entanto, acho que a terminologia é importante aqui. Você disse: "Se eu pegasse esse código (javascript) e o reescrevesse em um idioma diferente para uso no iPhone, isso seria uma questão legal?" (ênfase minha). Reescrever algo pode ou não ser diferente de copiar. Por exemplo, se você olhou para a Mona Lisa, entrou no seu próprio estúdio e pintou o que lembra, parece-me que você está criando um trabalho original que é sua expressão de como você percebeu o original. Se, no entanto, você tinha uma cópia da Mona Lisa em seu estúdio, e você pintou uma cópia, e não o que você lembra, então eu acho que você está definitivamente copiando.
Da mesma forma, se você usa o MS Word, e talvez até mesmo se você analisa parte do código, e depois escreve seu próprio processador de texto com semelhanças funcionais, acredito que há casos em que foi decidido que "olhe & feel "não tem direitos autorais. (Isso não diz nada sobre patentes, é claro.)
Você provavelmente deve perguntar a um advogado (como eu não sou um).
Minha opinião pessoal é que uma "porta" é um trabalho derivado e, portanto, você deve liberar o código da porta na mesma licença.
fonte
Não sou advogado, isso não é aconselhamento jurídico e, se você confiar no que digo em qualquer tipo de empreendimento duvidoso (1), você é um idiota e (2) eu me isento de toda responsabilidade. Isto é o que eu ouvi e li ao longo dos anos de pessoas que parecem saber.
Os juízes não jogam jogos "em teoria". Eles não gostam de pessoas que inventam maneiras de distorcer a lei que talvez sejam aceitáveis em termos de análise lógica, mas que são contrárias à intenção óbvia e como os juízes governaram no passado. Nunca tente ser esperto demais com a lei se houver alguma chance de você terminar em um tribunal defendendo sua interpretação.
É geralmente aceito que pegar um romance e fazer um filme dele ou traduzi-lo para outro idioma está criando trabalhos derivados, e essas são transformações muito maiores do que você está falando e exigem muito mais criatividade. Veja isso como exemplos; um juiz certamente o fará.
Nos EUA, houve casos em que a cópia de um programa de maneira mais vaga do que você está falando foi considerada uma infração. Nos EUA, espere que eles sejam usados como precedentes.
Em outras palavras, você iniciará uma empresa comercial em uma base que será considerada ilegal se alguém se preocupar em procurar. Não é uma boa ideia.
Além disso, se você tem algum respeito pela idéia de direitos autorais ou qualquer controle que um autor possa ter sobre o que ele publica, você está sendo hipócrita. O código fonte foi disponibilizado para uso em determinadas condições. Você está violando a lei e a intenção expressa do autor.
Agora, os algoritmos não podem ter direitos autorais. Nos EUA, os tribunais decidiram que é impossível registrar uma ideia em direitos autorais, e qualquer coisa normalmente protegida por direitos autorais que seja a única maneira de expressar algo não é protegida por direitos autorais. Portanto, você certamente pode usar o algoritmo.
Existe uma maneira de copiar um algoritmo à prova de direitos autorais: a abordagem "sala limpa", em que uma pessoa ou grupo estuda o código-fonte e cria uma descrição do algoritmo (com o mínimo possível de detalhes de implementação) e outra pessoa ou O grupo escreve um novo código sem fazer referência à fonte original. Quanto mais perto você chegar disso, mais seguro estará.
Você também pode considerar que, ao postar a pergunta aqui, publicou uma possível intenção de violar direitos autorais, de uma forma que provavelmente possa ser rastreada até você, se alguém tiver o direito legal de fazê-lo (como a descoberta em um caso civil ou uma investigação policial simples, se for um caso criminal).
fonte
Por que você não apenas abriu sua porta de código-fonte e deixou o resto do seu projeto fechado?
Para citar outra resposta minha:
Mas de um ponto de vista mais pragmático:
se o código que você portou é realmente tão útil que você acha que deveria protegê-lo para manter uma vantagem (o que você não tem, porque as pessoas que usam o Appcelerator podem usá-lo imediatamente), haverá ser uma porta de código aberto mais cedo ou mais tarde. Ele será mantido por várias pessoas, será usado e, portanto, testado por ainda mais pessoas e será refinado ainda mais para incorporar os princípios promovidos pelo idioma de destino e para melhor interagir com as estruturas predominantes em sua plataforma. Mais cedo ou mais tarde, seu código parecerá uma porcaria comparado a ele.
O código aberto é, de fato, a sua chance de ficar por dentro. É ganha-ganha. Se você tiver sorte, receberá até mantenedores para esse código e poderá se concentrar na lógica do aplicativo, que é o que realmente torna seu produto único.
fonte
Eu não sou advogado, nem jogo na TV.
Mas acho que a questão aqui é derivação. Se o seu novo trabalho é derivado do trabalho da GPL ou LGPL, esse trabalho deve seguir os requisitos da GPL ou LGPL. Seu trabalho será claramente derivado, mesmo se você o reescrever completamente, linha por linha, em outro idioma.
fonte
Como outros dizem, é provável que seja um trabalho derivado e, portanto, viole diretamente os termos da GPL, se você optar por fazê-lo "separado da licença original" (presumo que isso significa que você removeria a GPL e usaria outra coisa, mesmo de código fechado) .
Mesmo se parecer "legal", é claramente imoral . O autor de um software da GPL escolheu uma licença que estende as liberdades para trabalhos derivados. Seja uma coisa boa ou ruim, é a intenção do autor , e você deve respeitar isso . Eles forneceram o código para ler e modificar, bifurcar e o que for, apenas pedindo em troca que você não altera as condições. Também é provável que você também não pagasse pelo próprio software.
Sei que o dinheiro é difícil, mas dessa forma, quando você pinta sua ideia, é roubar. Claro, você poderia ter aprendido esse algoritmo ou qualquer detalhe de implementação de outra fonte, mas não aprendeu, como disse você mesmo.
Se a moralidade não lhe interessa, lembre-se de que, dada a natureza cinza da legalidade do que você está fazendo (ou prestes a fazer), é muito possível que os autores originais entrem em contato com a Apple devido a uma violação de direitos autorais. Até agora, a Apple foi rápida em remover o software que infringia a GPL. Outra possibilidade é uma ação judicial.
Se eu fosse você, consideraria a GPL meu próprio trabalho (isso não é uma coisa tão ruim!) Ou obter o conhecimento por outros meios.
fonte
Que tal tentar fazer a coisa certa e não roubar as idéias de alguém? Você pode simplesmente enviar um email ao criador do código e perguntar se você pode basear partes do seu projeto fora delas. Muitas pessoas não teriam problemas com isso. Se eles têm algum problema com isso, mesmo deixando de lado questões legais, por que você deseja manchar sua reputação como profissional na comunidade? O fato de essa pergunta ter sido formulada mais ou menos como "O que eu posso fazer com que?", Em vez de "O que devo fazer?" é um pouco preocupante.
Bottom line, pergunte à pessoa (ou pessoas) que escreveu o código .
fonte
Também não sou advogado. Se você está preocupado se isso é um problema legal, provavelmente você nem deveria estar fazendo essa pergunta e apenas escrevendo a sua.
Minha opinião pessoal sobre o assunto:
Se você está pegando o código javascript e reescrevendo-o em um idioma diferente, isso é chamado de portabilidade e é considerado um trabalho derivado. Se você está escrevendo sua própria versão do software e usando o código javascript como referência para aprender como certos algoritmos funcionam, provavelmente está bem.
Eu erraria ao pedir um advogado.
Como um adendo , a lei de direitos autorais permite que você basicamente faça NADA [*] com o código-fonte publicado, além de lê-lo. A licença sob a qual o proprietário dos direitos autorais liberou permite certos privilégios adicionais não fornecidos pela lei de direitos autorais. Tomar e usar o código de maneiras diferentes da permitida na licença não é diferente de pegar e usar quaisquer trabalhos protegidos por leis de direitos autorais sem a permissão do autor.
[*] Com exceções para uso justo.
fonte
Não. Não é ético. É quase certamente ilegal. E se eu revisasse um aplicativo de emprego de alguém que fizesse isso, ele seria arquivado com extremo preconceito.
fonte
Sempre codifique como se o cara que acabasse mantendo o seu código fosse um psicopata violento que sabe onde você mora. ~ Martin Golding
Eu não sou advogado, então não vou responder como um. Além disso, muitas outras pessoas que não são advogados já se manifestaram sobre as implicações legais da sua ideia. E eu vou pular o debate de moralização / ética.
Se eu fosse você, ficaria mais preocupado com as ramificações como desenvolvedor. É uma coisa de respeito. Auto-respeito, especialmente.
Claro, todos nós caçamos por "Como você implementou {em {especificação}?" de tempos em tempos. Foi daí que Stack veio, amirita? E é assim que todos nós encontramos aqui, certo? Não é disso que estou falando, porque não é disso que você está falando.
Se eu combinasse o golpe de gênio + esforço heróico = resultado que valha a pena apresentar à comunidade de desenvolvedores como uma oferta de código aberto e, em primeiro lugar, e as pessoas gostassem o suficiente para usá-lo, eu cairia na bajulação. Eu seria um grande momento. Como John Reisig, ou Mark Story. Pequena ol mim. E, em seguida, apareceu um idiota e listou minha contribuição com itens de linha para que eles possam oferecer comercialmente ou nativamente em seu aplicativo comercial. Cair morto.
Código é como caligrafia. Você não pode mudar um aplicativo maior que uma caixa de fósforos significativamente bastante que outro dev legítimo não poderia diff os dois lado a lado e dizer: "Espere um minuto ..." Como um desenvolvedor, eu ficaria muito envergonhado pela possibilidade de que os meus colegas , meus colegas, pessoas que eu respeito e cujo respeito eu desejo, descobririam que eu levantei o código de alguém. Eu seria uma piada. Porque isso é uma cópia épica de pasta de macarrão infantil ks. Você realmente deseja deslegitimar-se aos olhos de seus colegas? O código de jacking é uma boa maneira de começar.
E, como desenvolvedor, considere o seguinte: se esse era o meu aplicativo, e eu descobri que você o roubou de tal forma que ficaria preocupado em ser processado, e se eu decidir o inferno em processá-lo, você está fazendo uma pilha de dinheiro de qualquer forma, graças ao meu código, por que não devo bater em você onde dói, talvez recuperar um pouco disso? Como você SABE que eu não sou um adolescente ou possuo um temperamento e um conjunto assustador de habilidades? Saia do meu caminho para jogar r00 [no ur b0xen, por assim dizer. Desde que jacking meu aplicativo me mostraria que eu> você (base: eu poderia escrever o que você poderia apenas jack). Não seria a primeira vez.
fonte
Você não pode fazer trabalho derivado de trabalho derivado de trabalho derivado ... e esperar que não seja trabalho derivado. Pode tornar-se irreconhecível, mas isso é outra coisa. E você pode começar de qualquer texto e, por série de alterações, obter qualquer texto (por exemplo, remova o primeiro, insira o segundo), para que isso não seja possível. Portanto, não é importante se algo é possível, mas se realmente aconteceu (apenas o impossível obviamente não aconteceu)
Falando moralmente: aprender com qualquer coisa que você possa (legalmente) obter é bom, mas você deve reconhecer fontes. o resto é legalidade.
IANAL, mas não acho que cometi algo errado, se: 1) aprendi com a implementação de código aberto 2) Implemente o mesmo algoritmo (mesmo na mesma linguagem) fazendo isso de fato, grandes porções naturalmente se tornarão totalmente diferentes, e algumas serão ser bem parecido. Se essas partes semelhantes são coisas em que ambos os lados seguiram a mesma prática de codificação e, portanto, não podem ser diferentes, essas partes não são protegidas por direitos autorais. Por exemplo. se a classe tiver dois campos String privados e eles tiverem getters e setters, o interessante é que essa classe tem duas propriedades de leitura / gravação, não implementações de getters e setters.
fonte
Se você reescrever cada linha individualmente, poderá ou não estar "copiando" as linhas.
Mas você está copiando literalmente a ordem, a estrutura geral e a inclusão das linhas. Em outras palavras, o tipo de coisa que torna o trabalho um "todo".
Você está copiando a parte que diz "esta linha deve ir aqui, esta linha deve ir lá". Essa é uma grande parte do algoritmo geral.
Além disso, quando um projeto é iniciado, ninguém sabe o que incluir, o que deve ser considerado mais ou menos importante, como estruturar e compor os algoritmos. Essa informação precisa ser produzida e projetada em algum momento. Mas você não precisaria, porque estaria "copiando".
Como um exemplo:
Se eu tiver um conjunto {a, b, c, d, e, f}.
Eu posso criar uma lista ordenada deles, [f, e, c, b, d, a]. Você deve dizer que adicionei algumas informações à lista, conhecidas como pedidos , que não estavam presentes no conjunto não ordenado. Dependendo do tamanho da lista, essas informações podem ser muito específicas e difíceis de apresentar.
fonte
É como qualquer outra coisa - você não pode desaprender o que aprendeu, viu, leu ... mas o que você pode controlar é como o usa ...
Duas coisas sobre esse assunto -
O que eu acho como desenvolvedor é que as pessoas não querem dar crédito, feche-o para imitar um ótimo desenvolvedor / codificador, sob o pretexto de ganhar dinheiro com os esforços de outra pessoa ...
então eu discordo para # 2 ...
meus 2 centavos. :)
O que é engraçado - a maioria das pessoas pensa que inventou uma "ideia específica" - quando, de fato, a "ideia" provavelmente (probabilidade extremamente alta) já foi lançada na forma de guardanapos, papel, codificação, internet, blog, etc ...
Portanto, embora possa ser novo para você, especialmente porque você o viu no sistema operacional de outra pessoa, provavelmente é usado em outros sistemas operacionais dos quais eles derivaram o trabalho do sistema operacional ... e, finalmente, provavelmente é usado em outro lugar on-line .. isso não é mesmo com uma questão de licença / direito autoral declarada ... nesse caso, você pode copiar dessa fonte ... modificar, alterar, excluir, adicionar ... (para copiar / url para rastrear onde você conseguiu mostrar que o obteve legitimamente) no código da maneira que desejar.
Eu acho que é incrível em 'code-land', especialmente quantas vezes eu descobri que meu código 'astuto' já estava escrito (não tão bem ... veja bem - lol) em 2003 no nerd de alguém, pesquisa no google classificação de # 1.239, site que eles criaram quando estavam na pós-graduação, apenas criando funções para uso gratuito e divertido. :)
O ponto é .. dê crédito, não evite o problema e, quando tudo mais falhar ... ou em caso de dúvida - PERGUNTE ao OS'r original por direitos de uso ... yeesh! quando é que ficamos tão arrogantes que não podemos simplesmente pedir a alguém para usar sua maconha, tesoura, cortador de grama ... e - ah sim - uma função legal que eles fizeram!
Ok, foram 3 centavos ...
fonte
Dar ao homem uma pausa!
se uma queixa legal fosse registrada nele, isso significaria que alguém teria que realmente ter acesso ao código e LER. E se o software for compilado?
Ele sempre poderá invocar sua ignorância no momento dos fatos. Não se deve ter boa fé antes de serem considerados culpados?
Aprender não é copiar. Encontrar inspiração em algum trabalho existente definitivamente também não está copiando. E se ele aprendesse com um software a função de cada linha de código e decidisse que deveria usar os princípios dos resultados para melhorar isso e criar um software melhor, mais simples e mais enxuto. Não copiando IMHO.
Esses foram meus 2 centavos. Agora é a vez do primeiro sem pecado a jogar a pedra ...;)
fonte