Estratégias para aprender e escrever código quando eu não estou autorizado a ser “contaminado” com código-fonte aberto? [fechadas]

StackOverflow https://stackoverflow.com/questions/421975

  •  05-07-2019
  •  | 
  •  

Pergunta

Eu trabalho em uma empresa onde a regra é basicamente (como eu o entendo) que você não pode usar qualquer código, a menos que (a) você escrever o código sozinho ou (b) há alguma cláusula de indenização explícita guardando o seu uso de qualquer outro código (como código-fonte aberto). Eu estou achando isso fazendo a minha codificação difícil.

Por exemplo, amostras de codificação nos livros são muito uso bastante "como está". Amostras Microsoft Código SDK são o uso "como está". posts sobre codificação são de uso "como está". Existem vários sites lá fora, com exemplos de código (incluindo SO) que são uso em seu próprio risco. Nenhuma garantia implícita ou indenização contra ações judiciais de propriedade intelectual, blá, blá, etc.

Basicamente, eu estou limitado a usar Asp.Net eo .Net Framework e nada mais e para barrar meus olhos acidentalmente pegando algo que eu não tenha criado (ok ... que pode ser minha interpretação anal de a regra; -).

Eu acho isso difícil, porque uma grande parte da aprendizagem ao código eu acho que está lendo outro código. lendo blogs que têm código, livros de leitura que têm código, olhando para codificação de amostras, usando o código a partir de amostras do SDK etc. Além disso, eu acho que é seguro usar o código que as pessoas têm mostrado ser uma boa solução ou padrão para algo e livremente acondicionados para outros usarem. Eu não estou a ponto de pensar que eu pode codificar tudo sozinho. Eu definitivamente tenho que ficar sobre os ombros de codificação de outros para atingir determinados patamares.

Pode ser que eu não entendo licenciamento muito bem também. Da perspectiva do Companie (suponho) que eles não querem incorrer em qualquer risco de beind processado por violação de IP.

O meu pensamento é que você tem que pesar os riscos. Tomando um trecho de codificação de um livro é de baixo risco. Incorporando código a partir de uma biblioteca de código aberto poderia ser de alto risco. Eu digo decisões make baseado em quanto risco que você está disposto a assumir.

Alguém tinha experiência de trabalho em uma situação como esta ou semelhante a isto? Isto é uma coisa rara ou é comum em alguns setores? Existem outros na mesma posição como eu lá fora?

Qualquer visão ou orientação seria apreciada! Obrigado!

Editar: Obrigado pelas respostas! Para esclarecer algumas coisas: Eu não estou defendendo roubar código. Estou falando de código que tem algum tipo de licença pública que permite que ele seja usado em sua forma legal definido. A chave é não existe indenização em licenças públicas utilizando o código. Isso significa que você usá-lo em seu próprio legal de risco (e outros riscos). Se alguém sues um projeto open source que você usou código, você pode ser amarrado na ação judicial, mas também porque você está usando o código, apesar de ter uma licença pública.

Em 2005, a Microsoft estava usando indenização para competir contra vendedores de código aberto, prometendo pelos seus parceiros de que a Microsoft iria protegê-los contra ações judiciais IP. http: / /www.microsoft.com/presspass/press/2005/jun05/06-22PartnerIndemnificationPR.mspx

Assim, mesmo se o risco de ser processado por violação de IP pode ser extremamente baixa, é uma probabilidade não-zero. Assim, eu não posso usar nada disso. Mesmo se ele tem uma licença pública de algum tipo. : - (

Foi útil?

Solução

Por "indenização", presumo que a garantia significa que o código é livre de copyright ou patente ou talvez trocar oneração segredo que eles não sabem sobre na frente, ou que está disposto a compensá-los se alguém algo assim vira para cima . Eu nunca estive em uma empresa que se preocupava com isso, nem tenho ouvido falar de um antes.

Não está claro o que você realmente quer aqui, diferente de simpatia (e eu tenho simpatia por pessoas presas em loucura corporativa). Parece que a política é bastante rígida, se você está preocupado com o código de exemplo em livros. Esta é uma política ruim, e vai impedi-lo, mas eu não sei o que você pode fazer sobre ele. Ao contrário post de Joel em fazer as coisas como um grunhido, parece que você não pode simplesmente começar a fazer coisa inteligente sem estar em clara violação da política da empresa.

Não sabendo a sua situação, a minha sugestão seria a de procurar outro emprego. Este vai definitivamente sufocar seu crescimento profissional e uma empresa com que a política é improvável que seja razoável sobre isso.

(Seria bom se você pudesse assegurar-lhes que não havia perigo, mas isso não é verdade. As pessoas têm mentido sobre direitos autorais, embora projetos de código aberto tendem a não e só um tolo afirmar definitivamente que um grande pedaço de código não infringir quaisquer patentes nos EUA, mesmo se ele foi escrito um ano antes de as patentes de software foram premiadas em primeiro lugar, que seria apenas bons fundamentos para uma briga judicial, ao invés de evitar uma briga judicial software GPL é realmente melhor do que software BSD. , uma vez que requer alguma patente licenciamento jusante, mas não pode lidar com patentes de terceiros. claro, se eles estão preocupados com que está sendo processado, escrevendo software in-house não é solução. isso pode infringir patentes.)

Outras dicas

O "risco de beind processado por IP violação" não é realmente a maneira certa de pensar sobre isso. Esta não é uma coisa "risco".

De qualquer

  • Você tem uma licença e pode usar a fonte. Não há nenhum risco. Você tem a licença. Não pode haver uma ação judicial.

ou

  • Você não tem uma licença e você está em violação. Efetivamente, você irá ser processado. Não há nenhum risco aqui, também. Você está em violação dos direitos de autor de alguém (ou pior).

As empresas são avessos a Open Source para uma variedade de razões estranhas. Risco de ação judicial não é um deles.

Coisas que eu já ouvi.

  • E se tem um vírus?

  • E se ele não funcionar como anunciado?

  • E se ele "trava" alguma coisa? Quem é que vamos processar?

Nenhum destes são itens "de risco". Eles são "due diligence" itens. E principalmente, eles são fáceis de endereço: escolher produtos com número suficiente de usuários que alguém veta o código antes de você; QA open source como se um de seus próprios povos digitou. Exceção de um.

Isso nos leva a razão real. [Dica: Não é "risco de ação judicial".]

Não há ninguém para processar quando você não realizar diligência em código aberto.

A maioria das lojas não têm verdadeira gestão sólida configuração ou políticas de controle de qualidade (do tipo que poderia levantar-se em tribunal como melhores práticas). Até que eles têm essas coisas no lugar, eles não se atrevem a pensar sobre a introdução de código aberto para que você realmente precisa de gerenciamento de QA e configuração sólida.

Eu acho que sua empresa está realmente preocupado é você copiar diretamente grandes segmentos de código para que possa haver problemas de licenciamento, apresentando um problema jurídico para a empresa se forem apanhados a usá-lo. No entanto, você pode ler blogs ou outros códigos não-licenciados e descobrir uma solução que funciona para o problema específico que você está trabalhando. Nesse caso, você seria melhor fora de reescrever o código (isto é, olhar para a solução e reproduzi-lo) ao invés de apenas copiar o código e fazer modificações nele. Na minha empresa, que é o que eles geralmente recomendam para usar código não-proprietária.

Assim, para pequenas quantidades de código (por exemplo, uma implementação padrão de um cache) onde todos implementos isso da mesma maneira, todas as vezes, a sua empresa é improvável que tenha medo de usar código fora, contanto que você tem certeza de testá-lo com cuidado.

Você pode renomear as variáveis ??e como é que eles descobriram? Será que eles verificar cada linha de código? Universidades dizer-lhe que o tempo todo, não copiar o código sem referência. Por que você não tente codificação algo e USANDO partes do código que você encontrar na Internet?

Geralmente você vai usar mais de comunidades como estouro de pilha ou blogs do que de projetos de código aberto.

Finalmente desde que o código não tem garantias, o seu a seu próprio risco .. bem o é o mesmo caso, se você veio com o código por si mesmo: o seu a seu próprio risco.

Espero que ajude ... e boa sorte.

Pode ser que eu não entendo licenciamento muito bem também. Da perspectiva do Companie (suponho) que eles não querem incorrer em qualquer risco de beind processado por violação de IP.

O meu pensamento é que você tem que pesar os riscos. Tomando um trecho de codificação de um livro é de baixo risco. Incorporando código a partir de uma biblioteca de código aberto poderia ser de alto risco. Eu digo decisões make baseado em quanto risco que você está disposto a assumir.

Eu não tenho certeza se eu entendi corretamente. Se você está dizendo que a violação de licença é bom quando você não seja pego, eu vou ter que discordar de você.

Você pode aprender através da leitura de código sem quebrar leis ou ser demitido. Só não copiar o código para base de código da sua empresa, se a licença não permite isso.

Se você não está ciente do conceito de "sala limpa", então há sempre essa abordagem. Ter um amigo olhada em alguns código-fonte aberto e levá-los a dizer-lhe como eles acham que funciona. Diagrama-la, e, em seguida, o código-lo sozinho.

Se ele trabalhou para a IBM, certo?

Tenha em mente que nem todos os Open Source é GPL. Sua empresa pode copiar tanto código licença BSD como eles gostam. código BSD-licenciados tornou em OS X (que é provavelmente o meu maior eufemismo de hoje) e, em menor grau Windows NT.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top