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

15

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

provavelmente na praia
fonte
7
****** No. ******
Joel Etherton
1
@Joel - ****** Inferno No. ****** Lembro-me de alguns dos códigos que libertei sobre o mundo e prefiro tentar esquecê-lo do que ser lembrado daqui a dez anos por alguém me perguntando WTF! = P
jmq

Respostas:

28

Quase nunca deixo meu nome e endereço de email:

  • Tende a ser copiado e colado (sim, más práticas) ; e acabo com pessoas entrando em contato comigo por código que não escrevi
  • Quando o código é modificado, as informações de contato não são removidas nem atualizadas; e acabo com pessoas entrando em contato comigo sobre códigos que mudaram tanto que eu nem os reconheço.

Em vez disso, 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 sobre a qual tem uma pergunta.

Pascal MARTIN
fonte
6

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

Recentemente, deixei esse hábito, pois isso é redundante com o controle de versão, por exemplo, qualquer pessoa interessada em quem fez as alterações pode ver todo o histórico do código-fonte no controle de versão.

Brandon
fonte
Aha! Hora de reclamar com o NetBeans sobre seus modelos padrão.
quer
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á possui 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 acham interessante deixar um nome e endereço de email para contato. Esta não é uma má idéia. Veja estes exemplos:

Partida 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]>.
*/
karlphillip
fonte
3

Mas certamente deixar meu nome e / ou email 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 o meu nome, mas não o endereço de e-mail. Sim, esse código pode ser recortado e colado, mas se a copiadora não alterar o nome do autor, não alterará mais nada e torna-se óbvio que é um comentário não mantido.

Eu tenho um e-mail sig eu uso de vez em quando que vai

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

que parece ser um reflexo geral de muitos dos outros posts neste tópico. No entanto, como não há regras sobre o assunto, um programador precisa fazer o que se sente mais confortável.

PurplePilot
fonte
Err ... o que? Eu acho que isso deveria ter sido um comentário.
Adam Lear
2
@ Anna - Err .... Eu acho que é para ser uma piada.
Ocho
@ Slomojo Sim, entendi. Ainda acho que é mais apropriado como um comentário. É fofo, mas não responde.
Adam Lear
@ Anna, oh eu vejo, talvez, mas funciona como uma resposta para a pergunta, quando eu a leio.
Ocho4
2

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

Se eu deixei a empresa e trabalho em outro lugar, não é realmente justo para o meu novo empregador se eu estiver recebendo ligações sobre software na minha última empresa (quem poderia ser um concorrente!).

Se o código foi compartilhado de alguma outra maneira (por exemplo, código aberto, publicado on-line), é possível que valha a pena ter seus detalhes de contato, mas se o código foi passado de outra maneira, a pessoa a quem você deu provavelmente já terá o seu detalhes de contato e você realmente gostaria que um estranho ligasse perguntando sobre o código que você escreveu anos antes?

Danny Tuppeny
fonte
Sim, dentro de uma empresa que faz sentido. Eu estava pensando mais em código lançado em domínio público.
1
Para código divulgado publicamente, eu provavelmente usaria meu nome / url / email no cabeçalho. Eu provavelmente usaria um alias de e-mail exclusivo para poder filtrar / bloquear e-mails se eles acabassem sendo enviados por spam devido a serem publicados on-line publicamente.
precisa saber é o seguinte
2

Há uma linha de pensamento que diz: Não insira seu 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 o alteram. Se é realmente útil (como as pessoas saem de empresas), eu não sei.

Suspeito que o principal valor seja a conscientização. Você não solicita ao IDE que informe quem criou o arquivo que você vê, mas, ao encontrá-lo ao longo do tempo na base de código do seu grupo, você terá uma idéia das responsabilidades e conhecimentos do projeto.

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

Uri
fonte
2

Após 3 décadas de programação, 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 pode ser confiável. Nenhuma das pessoas ainda está empregada pela empresa. Metade dos nomes são contratados.

S.Lott
fonte
2

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

Outras pessoas apontaram alguns dos problemas, mas eu queria mencionar um que considero os efeitos mais insidiosos.

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

Como você pode perguntar, tudo isso tem a ver com a propriedade coletiva do código. Se você digitar o seu nome do código, a próxima pessoa que entrar dirá "esse não é o meu código, apenas X", onde X pode ser hackeado, ignorado etc. etc. é claro que querem colocar seu nome no código porque o aprimoraram. Mas então você pode pensar: ei, passei semanas nesse código e eles passaram 10 minutos por que eles têm o 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.

Simplesmente não funciona bem para a equipe. Em vez disso, se a equipe se concentrar na propriedade coletiva e tornar todo o código ótimo sem propriedade, você poderá se concentrar no que é realmente importante, que é a qualidade do sistema. Se você precisar rastrear quem trabalhou nele, sempre poderá usar o VCS para obter os detalhes.

Nota: Até 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 os outros colaboradores. É por isso que, em projetos de código aberto, tento mencionar apenas autores em um AUTHORS ou contribuidores arquivam um local no projeto.

Allen
fonte
1
Penso que os seus problemas provêm mais de colegas de trabalho mal-intencionados do que dos próprios comentários.
Jay em Jay
Ótima resposta, alguns projetos de código aberto até proíbem gravar informações do autor em arquivos porque estão quebrando a propriedade do código coletivo.
Étienne
1

Eu não costumo deixar minhas informações de contato no código fonte, pois 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 entrar em contato diretamente com você para fornecer feedback. Um link para um site do projeto no arquivo README geralmente é uma boa prática.

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

Chris Browne
fonte
1

Deixo meu nome em scripts SQL, pois eles serão buscados diretamente no banco de dados, não no controle de origem.

Cosmin
fonte