Devemos deixar nossos detalhes de contato no código-fonte?

14

Eu costumo deixar meu endereço de e-mail como cortesia, caso alguém queira me fazer uma pergunta sobre isso depois. Outras pessoas deixam mais ou menos informações do que isso? Alguém deixa um número de telefone?

    
por probably at the beach 04.03.2011 / 18:22
fonte

10 respostas

28

Quase nunca deixo meu nome nem endereço de e-mail:

  • Ele tende a copiar-colado (sim, má prática) ; e acabo com as pessoas que me contatam para o código que eu não escrevi
  • Quando o código é modificado, as informações de contato não são removidas nem atualizadas; e acabo com as pessoas que me contatam sobre o código que mudou tanto que nem sequer o reconheço.

Em vez disso, eu prefiro apontar as pessoas para o repositório de código (SVN, Git, ...) : lá, elas podem ter o histórico completo - e descobrir quem escreveu / modificou a parte tenho uma pergunta sobre.

    
por 04.03.2011 / 18:27
fonte
6

Costumo ter o hábito de deixar meu nome ou minhas iniciais nos cabeçalhos de comentários, com um número de revisão e uma breve descrição da alteração.

Eu recentemente saí desse hábito, devido ao fato de que isso é redundante com o controle de versão, por exemplo, qualquer um interessado em quem fez quais alterações podem ver todo o histórico do código-fonte no controle de versão.

    
por 04.03.2011 / 18:27
fonte
5

Se você está desenvolvendo software profissionalmente, provavelmente está usando algum sistema de controle de versão (svn, hg, git, etc). Nesse caso, acho redundante deixar suas informações pessoais dentro do código, pois você já tem uma conta de codificador (com essas informações) para poder confirmar o código no projeto.

No entanto, algumas pessoas da comunidade de código aberto consideram interessante deixar um nome e endereço de email para contato. Esta não é uma má ideia. Veja este exemplo:

Do FFmpeg:

/*
 * Interplay C93 video decoder
 * Copyright (c) 2007 Anssi Hannula <[email protected]>
 *
 * This file is part of FFmpeg.
 */

Do DirectFB:

/*
   (c) Copyright 2001-2009  The world wide DirectFB Open Source Community (directfb.org)
   (c) Copyright 2000-2004  Convergence (integrated media) GmbH

   All rights reserved.

   Written by Denis Oliver Kropp <[email protected]>,
              Andreas Hundt <[email protected]>,
              Sven Neumann <[email protected]>,
              Ville Syrjälä <[email protected]> and
              Claudio Ciccani <[email protected]>.
*/
    
por 04.03.2011 / 19:45
fonte
3

Mas certamente deixar meu nome e / ou e-mail significaria que eu deveria escrever comentários no meu código ?? Desculpe não foi uma resposta. Na realidade, costumo deixar comentários do tipo doctype ...

/**
* @author PurplePilot
* @package
* @etc
*/

com meu nome, mas não com endereço de e-mail. Sim, este código pode ser recortado e colado, mas se a copiadora não alterar o nome do autor, ele não alterará mais nada e ficará óbvio que é um comentário não mantido.

Eu tenho um e-mail que eu costumo usar de vez em quando,

/* Anything you put in comments is not tested and easily goes out of date. */

, que parece ser um reflexo geral de muitas das outras postagens deste tópico. No entanto, como não há regras sobre o assunto, um programador precisa fazer o que mais lhe convém.

    
por 04.03.2011 / 20:59
fonte
2

Eu nunca deixo meus detalhes de contato no código. Sempre fica desatualizado e parece causar mais problemas do que resolve.

Outras pessoas apontaram alguns dos problemas, mas eu queria mencionar um que eu acho que é o efeito mais insidioso.

Ele pode destruir o trabalho em equipe e a qualidade do código.

Como você pode perguntar, bem, tudo isso tem a ver com a propriedade coletiva de código. Se você colocar o seu nome no código, a próxima pessoa que entrar nele dirá "esse não é o meu código, eu vou apenas X", onde X pode ser hackear, ignorar, etc. Então, se eles consertarem, eles Claro que quer colocar o seu nome no código porque melhorou. Mas então você pode pensar, hey eu passei semanas neste código e eles gastaram 10 minutos porque eles conseguem ter o seu nome certo pelo meu. Com o tempo, esse ciclo continua e as pessoas discutem sobre quem deve receber crédito (ou culpa) pelo código.

Não funciona bem para a equipe. Em vez disso, se a equipe se concentra na propriedade coletiva e torna todo o código excelente sem propriedade, você pode se concentrar no que é realmente importante, que é a qualidade do sistema. Se você precisa rastrear quem trabalhou nele, você sempre pode usar o VCS para obter os detalhes.

Observação: até mesmo os cabeçalhos de direitos autorais podem ter esse impacto destrutivo se tiverem o nome de um desenvolvedor, especialmente se o desenvolvedor não for tão ativo quanto outros colaboradores. É por isso que, em projetos Open Source, tento mencionar apenas autores em um arquivo AUTHORS ou contribuidores em um lugar no projeto.

    
por 04.03.2011 / 20:17
fonte
2

Muitas vezes deixo minhas iniciais nos comentários (quando apropriado), mas não vejo motivo para deixar mais nada. Se eu ainda estiver trabalhando na empresa proprietária do código, as pessoas devem saber como entrar em contato comigo.

Se eu saí da empresa e trabalhei em outro lugar, não é realmente justo para o meu novo empregador se estou fazendo chamadas sobre software na minha última empresa (que pode ser um concorrente!).

Se o código foi compartilhado de alguma outra forma (por exemplo, código aberto, postado on-line), talvez valha a pena ter seus dados de contato, mas se o código foi passado de outra forma, a pessoa que você forneceu provavelmente já tem seus dados de contato, e você realmente quer um estranho aleatório ligando perguntando sobre o código que você escreveu anos antes?

    
por 04.03.2011 / 18:28
fonte
2

Há uma linha de pensamento que diz: não coloque em seu material de código-fonte que deveria estar no controle de origem.

As informações de autoria são uma dessas coisas, pois, com o tempo, o código será modificado por muitas pessoas com menos de granularidade de arquivo. Um registro de culpa deve dizer tudo o que você precisa saber.

Dito isto, muitas empresas seguem a transição de listar o autor do arquivo original e nunca alterá-lo. Se é realmente útil (como as pessoas deixam as empresas), eu não sei.

Eu suspeito que o principal valor seja a conscientização. Você não vai pedir ao IDE que informe quem criou cada arquivo que vê, mas ao encontrá-los ao longo do tempo na base de código do seu grupo, você terá uma idéia das responsabilidades e experiência no projeto.

Para o domínio público - o benefício é "publicidade", a desvantagem é que alguém pode destruir seu arquivo no futuro, mas ainda estaria com seu nome.

    
por 04.03.2011 / 18:51
fonte
2

Após 3 décadas de programação e manutenção e conversão de software, posso dizer com segurança que as informações do autor no código-fonte são inúteis.

Eu nunca tive um uso para isso. Não é confiável. Nenhuma das pessoas ainda está empregada pela empresa. Metade dos nomes são contratados.

    
por 04.03.2011 / 19:23
fonte
1

Eu não costumo deixar minhas informações de contato no código-fonte, pois o meu VCS cuida da responsabilidade por mim.

Dito isso, é aconselhável ter suas informações de contato em algum lugar para que as pessoas que usam o código possam contatá-lo diretamente para fornecer feedback. Um link para um site de projeto no arquivo LEIA-ME é geralmente uma boa prática.

A convenção vem da época em que a Usenet e o IRC eram usados regularmente para compartilhar o código-fonte. Como o código raramente era vinculado a partir de um VCS e, com mais frequência, enviado diretamente, se você quisesse comentários, teria que incluir suas informações de contato em algum lugar.

    
por 04.03.2011 / 22:34
fonte
1

Eu deixo meu nome em scripts SQL, já que eles são principalmente obtidos diretamente do banco de dados, não do controle de origem.

    
por 04.03.2011 / 23:15
fonte