Sollen wir unsere Kontaktdaten im Quellcode belassen?

15

Normalerweise hinterlasse ich meine E-Mail-Adresse aus Höflichkeit, falls jemand mir später eine Frage dazu stellen möchte. Hinterlassen andere mehr oder weniger Informationen? Hinterlässt jemand eine Telefonnummer?

wahrscheinlich am strand
quelle
7
****** Nr. ******
Joel Etherton
1
@Joel - ****** Hölle Nr. ****** Ich erinnere mich an einen Teil des Codes, den ich auf der Welt entfesselt habe, und ich würde lieber versuchen, ihn zu vergessen, als in 10 Jahren von jemandem daran erinnert zu werden frag mich WTF! = P
jmq

Antworten:

28

Ich hinterlasse fast nie meinen Namen oder meine E-Mail-Adresse:

  • Es neigt dazu, kopiert zu werden (ja, schlechte Praxis) ; und am Ende haben mich Leute wegen Codes kontaktiert, die ich nicht geschrieben habe
  • Wenn der Code geändert wird, werden die Kontaktinformationen weder entfernt noch aktualisiert. und am Ende haben mich die Leute wegen Code kontaktiert, der sich so sehr geändert hat, dass ich ihn nicht einmal wiedererkenne.

Stattdessen verweise ich lieber auf das Code-Repository (SVN, Git, ...) : Dort können sie den vollständigen Verlauf anzeigen - und herausfinden, wer den Teil geschrieben / geändert hat, zu dem sie eine Frage haben.

Pascal MARTIN
quelle
6

Ich habe die Angewohnheit, meinen Namen oder meine Initialen in Kommentarköpfen zu hinterlassen, mit einer Versionsnummer und einer kurzen Beschreibung der Änderung.

Ich habe mich kürzlich von dieser Angewohnheit verabschiedet, da dies mit der Versionskontrolle überflüssig ist, z. B. kann jeder, der daran interessiert ist, wer welche Änderungen vorgenommen hat, den gesamten Verlauf des Quellcodes in der Versionskontrolle sehen.

Brandon
quelle
Aha! Zeit, sich bei NetBeans über die Standardvorlagen zu beschweren.
Gio Borje
5

Wenn Sie Software professionell entwickeln, verwenden Sie höchstwahrscheinlich ein Versionskontrollsystem (svn, hg, git usw.). In diesem Fall finde ich es überflüssig, Ihre persönlichen Informationen im Code zu belassen, da Sie bereits über ein Codekonto (mit diesen Informationen) verfügen, um Code für das Projekt festzuschreiben.

Einige Leute aus der Open Source Community finden es jedoch interessant, einen Namen und eine E-Mail-Adresse für den Kontakt zu hinterlassen. Das ist überhaupt keine schlechte Idee. Überprüfen Sie diese Beispiele:

Von FFmpeg:

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

Von 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
quelle
3

Aber wenn ich meinen Namen oder meine E-Mail-Adresse belasse, würde das bedeuten, dass ich Kommentare in meinen Code schreiben sollte? Sorry war keine Antwort. In Wirklichkeit hinterlasse ich normalerweise doctype Kommentare ...

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

mit meinem namen aber nicht email adresse. Ja, dieser Code kann ausgeschnitten und eingefügt werden, aber wenn der Kopierer den Namen des Autors nicht ändert, ändert er nichts anderes und es wird deutlich, dass es sich um einen nicht gepflegten Kommentar handelt.

Ich habe eine E-Mail-Adresse, die ich von Zeit zu Zeit benutze

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

Das scheint eine allgemeine Widerspiegelung vieler anderer Beiträge in diesem Thread zu sein. Da es jedoch keine Regeln zu diesem Thema gibt, muss ein Programmierer das tun, womit er sich am wohlsten fühlt.

PurplePilot
quelle
Äh ... was? Ich denke, das hätte ein Kommentar sein sollen.
Adam Lear
2
@Anna - Ähm ... Ich denke, es sollte ein Witz sein.
ocodo
@ Slomojo Ja, das habe ich verstanden. Ich denke aber immer noch, dass es als Kommentar angemessener ist. Es ist süß, aber keine Antwort.
Adam Lear
@Anna, oh ich verstehe vielleicht, aber es funktioniert als Antwort auf die Frage, wenn ich es lese.
ocodo
2

Ich hinterlasse meine Initialen oft in Kommentaren (wo angebracht), sehe aber keinen Grund, mehr zu hinterlassen. Wenn ich noch bei der Firma arbeite, die den Code besitzt, sollten die Leute wissen, wie sie mit mir in Kontakt treten können.

Wenn ich das Unternehmen verlassen habe und woanders arbeite, ist es für meinen neuen Arbeitgeber nicht fair, wenn ich bei meiner letzten Firma (die ein Konkurrent sein könnte!) Anrufe zu Software entgegennehme.

Wenn der Code auf andere Weise weitergegeben wurde (z. B. Open Source, online veröffentlicht), lohnt es sich möglicherweise, Ihre Kontaktdaten anzugeben. Wenn der Code jedoch auf andere Weise weitergegeben wurde, verfügt die Person, der Sie ihn gegeben haben, wahrscheinlich bereits über Ihre Kontaktdaten, und möchten Sie wirklich, dass ein zufälliger Fremder nach dem Code fragt, den Sie Jahre zuvor geschrieben haben?

Danny Tuppeny
quelle
Ja, in einem Unternehmen, das Sinn macht. Ich dachte mehr an Code, der gemeinfrei veröffentlicht wurde.
1
Bei öffentlich veröffentlichtem Code würde ich wohl doch meinen Namen / URL / Email in den Header schreiben. Ich würde wahrscheinlich einen eindeutigen E-Mail-Alias ​​verwenden, damit ich E-Mails filtern / blockieren kann, wenn sie aufgrund einer öffentlichen Online-Veröffentlichung als Spam eingestuft werden.
Danny Tuppeny
2

Es gibt eine Denkrichtung, die besagt: Gib nichts in deinen Quellcode ein, was in der Quellcodeverwaltung sein sollte.

Autoreninformationen sind eines dieser Dinge, da Code im Laufe der Zeit von vielen Menschen mit einer geringeren Granularität als der Datei geändert wird. Ein Schuldbuch sollte Ihnen alles verraten, was Sie wissen müssen.

Allerdings folgen viele Unternehmen dem Übergang, den ursprünglichen Dateiautor aufzulisten und ihn nie zu ändern. Ob es wirklich nützlich ist (wenn Leute Firmen verlassen), weiß ich nicht.

Ich vermute, dass der Hauptwert die Bewusstseinsbildung ist. Sie werden die IDE nicht bitten, Ihnen mitzuteilen, wer die einzelnen Dateien erstellt hat, die Sie sehen, aber wenn Sie diese im Laufe der Zeit in der Codebasis Ihrer Gruppe finden, erhalten Sie eine Vorstellung von den Verantwortlichkeiten und dem Fachwissen im Projekt.

Für die Öffentlichkeit - der Vorteil ist "Werbung", der Nachteil ist, dass jemand Ihre Datei in der Zukunft ruinieren könnte, sie aber immer noch Ihren Namen trägt.

Uri
quelle
2

Nach 3 Jahrzehnten Programmieren und Warten und Konvertieren von Software kann ich mit Sicherheit sagen, dass die Autoreninformationen im Quellcode wertlos sind.

Ich habe nie eine Verwendung dafür gehabt. Es kann nicht vertraut werden. Keiner der Mitarbeiter ist noch im Unternehmen beschäftigt. Die Hälfte der Namen sind Auftragnehmer.

S.Lott
quelle
2

Ich hinterlasse meine Kontaktdaten niemals im Code. Es ist immer veraltet und scheint mehr Probleme zu verursachen, als es löst.

Andere Leute haben auf einige der Probleme hingewiesen, aber ich wollte eines erwähnen, von dem ich denke, dass es die heimtückischsten Auswirkungen sind.

Dies kann die Teamarbeit und die Codequalität zerstören.

Wie können Sie fragen, nun, es hat alles mit kollektivem Code-Besitz zu tun. Wenn Sie Ihren Namen des Codes eingeben, sagt die nächste Person, die hereinkommt, "das ist nicht mein Code, ich werde nur X", wo X ihn hacken, ignorieren usw. kann. Wenn sie ihn dann reparieren, werden sie Natürlich wollen sie ihren Namen auf den Code schreiben, weil sie ihn verbessert haben. Aber dann denken Sie vielleicht, hey, ich habe Wochen mit diesem Code verbracht und sie haben 10 Minuten damit verbracht, warum sie ihren Namen direkt bei mir haben. Im Laufe der Zeit setzt sich dieser Zyklus fort und die Leute streiten darüber, wer für den Code Anerkennung (oder Schuld) erhält.

Es funktioniert einfach nicht gut für das Team. Wenn sich das Team auf kollektive Eigentümerschaft konzentriert und den gesamten Code ohne Eigentümerschaft großartig macht, können Sie sich auf das konzentrieren, was wirklich wichtig ist, nämlich die Qualität des Systems. Wenn Sie herausfinden müssen, wer daran gearbeitet hat, können Sie jederzeit das VCS verwenden, um die Details abzurufen.

Hinweis: Selbst Copyright-Header können diese zerstörerischen Auswirkungen haben, wenn sie den Namen eines Entwicklers tragen, insbesondere wenn der Entwickler nicht so aktiv ist wie andere Mitwirkende. Aus diesem Grund versuche ich, bei Open Source-Projekten nur Autoren in einer AUTHORS- oder Contributors-Datei zu erwähnen, die einen Platz im Projekt haben.

Allen
quelle
1
Ich denke, Ihre Probleme stammen eher von schlecht gesinnten Mitarbeitern als von den Kommentaren selbst.
Jay
Tolle Antwort, einige Open-Source-Projekte verbieten sogar, Autoreninformationen in Dateien zu schreiben, da dies den Besitz von kollektivem Code bricht.
Étienne Reinstate Monica
1

Ich neige nicht dazu, meine Kontaktinformationen im Quellcode zu belassen, da mein VCS die Verantwortung für mich übernimmt.

Das heißt, es ist ratsam, Ihre Kontaktinformationen irgendwo zu haben, damit Leute, die den Code verwenden, Sie direkt kontaktieren können, um Feedback zu geben. Ein Link zu einer Projektwebsite in der README-Datei ist im Allgemeinen eine gute Praxis.

Die Konvention stammt aus der Zeit, als Usenet und IRC regelmäßig zum Teilen von Quellcode verwendet wurden. Da der Code selten von einem VCS aus verknüpft und häufiger direkt gesendet wurde, müssten Sie Ihre Kontaktinformationen irgendwo angeben, wenn Sie Feedback wünschen.

Chris Browne
quelle
1

Ich lasse meinen Namen in SQL-Skripten, da diese meistens direkt aus der Datenbank und nicht aus der Quellcodeverwaltung abgerufen werden.

Cosmin
quelle