Чи слід залишати наші контактні дані у вихідному коді?


15

Зазвичай я залишаю свою адресу електронної пошти як люб'язність, якщо хтось захоче поставити мені питання про неї пізніше. Чи залишають інші люди більш-менш інформацію, ніж це? Хтось залишає номер телефону ??


7
****** № ******
Joel Etherton

1
@Joel - ****** Пекло № ****** Я пам’ятаю деякий код, який я розв'язав у світі, і я б швидше намагався його забути, ніж про це нагадувати про нього через 10 років кимось питаєш мене, WTF! = P
jmq

Відповіді:


28

Я майже ніколи не залишаю свого імені, ані адреси електронної пошти:

  • Це, як правило, копіюється (так, погана практика) ; і в кінцевому підсумку люди звертаються до мене за кодом, який я не писав
  • Коли код змінено, контактну інформацію не видаляють і не оновлюють; і в кінцевому підсумку люди звертаються до мене з приводу коду, який так змінився, що я навіть не впізнаю його.

Натомість я вважаю за краще вказувати людей на сховище коду (SVN, Git, ...) : там вони можуть мати повну історію - і дізнатися, хто написав / змінив частину, про яку вони мають запитання.


6

Як правило, я залишаю своє ім’я чи ініціали у заголовках коментарів із номером редакції та коротким описом змін.

Нещодавно я вийшов з цієї звички, враховуючи той факт, що це зайве з контролем версій, наприклад, кожен, хто цікавиться, хто вніс зміни, може побачити всю історію вихідного коду в контролі версій.


Ага! Час скаржитися NetBeans на їх шаблони за замовчуванням.
Gio Borje

5

Якщо ви професійно розробляєте програмне забезпечення, ви, швидше за все, використовуєте деяку систему управління версіями (svn, hg, git тощо). У цьому випадку я вважаю зайвим залишати вашу особисту інформацію всередині коду, оскільки у вас вже є обліковий запис кодера (з цією інформацією), щоб можна було ввести код у проекті.

Однак деяким людям із спільноти з відкритим кодом цікаво залишити ім’я та адресу електронної пошти для контакту. Це зовсім не погана ідея. Перевірте ці приклади:

Від FFmpeg:

/*
 * Interplay C93 video decoder
 * Copyright (c) 2007 Anssi Hannula <anssi.hannula@gmail.com>
 *
 * This file is part of FFmpeg.
 */

Від 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 <dok@directfb.org>,
              Andreas Hundt <andi@fischlustig.de>,
              Sven Neumann <neo@directfb.org>,
              Ville Syrjälä <syrjala@sci.fi> and
              Claudio Ciccani <klan@users.sf.net>.
*/

3

Але, звичайно, залишення мого імені та електронної пошти означало б, що я повинен був писати коментарі до свого коду ?? Вибачте не було відповіді. Насправді я зазвичай залишаю коментарі доктіп ...

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

з моїм іменем, але не електронною адресою. Так, цей код можна вирізати та вставити, але якщо копір не змінить ім'я автора, вони нічого іншого не змінять, і це стане очевидним, це незаперечний коментар.

У мене є електронний лист, який я використовую час від часу, який проходить

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

що, здається, є загальним відображенням багатьох інших публікацій у цій темі. Однак, як немає правил щодо цього питання, програмісту потрібно робити те, що їм найбільше комфортно.


Помилка ... що? Я думаю, це повинен був бути коментарем.
Адам Лір

2
@Anna - Помилка .... Я думаю, це має бути жарт.
ocodo

@Slomojo Так, я це зрозумів. Але все-таки думаю, що це більш доречно як коментар. Це мило, але без відповіді.
Адам Лір

@Anna, о, я бачу, можливо, але це працює як відповідь на запитання, коли я його читаю.
ocodo

2

Я часто залишаю свої ініціали в коментарях (де це доречно), але не бачу причин залишати щось більше. Якщо я все ще працюю в компанії, яка володіє кодом, люди повинні знати, як зв’язатися зі мною.

Якщо я покинув компанію і працюю в іншому місці, то з моїм новим роботодавцем не дуже чесно, якщо я телефоную з приводу програмного забезпечення у моєї останньої компанії (яка може бути конкурентом!).

Якщо код був наданий іншим способом (наприклад, з відкритим кодом, розміщений в Інтернеті), можливо, варто мати свої контактні дані, але якщо код був переданий іншим способом, людина, якій ви його надали, швидше за все, має свою контактні дані, і чи справді ви хочете, щоб випадковий незнайомець подзвонив про код, який ви написали роками раніше?


Так, всередині компанії, що має сенс. Я більше думав про код, випущений у загальнодоступне надбання.

1
Для публічно випущеного коду, мабуть, але в заголовку моє ім’я / URL / електронна адреса. Я, мабуть, використовував унікальний псевдонім електронної пошти, щоб я міг фільтрувати / блокувати пошту, якщо вона в кінцевому підсумку потрапила у спам через публічне розміщення в Інтернеті.
Danny Tuppeny

2

Існує лінія думок, яка говорить: Не вкладайте у свій вихідний код речі, які повинні знаходитись у контролі джерела.

Інформація про авторство - одна з таких речей, оскільки з часом багато людей будуть модифіковані меншою мірою, ніж деталізація файлу. Журнал провини повинен повідомити вам все, що вам потрібно знати.

Однак, багато компаній слідують за переліком списку оригінального автора файлу і ніколи його не змінюють. Чи справді це корисно (як люди покидають компанії), я не знаю.

Я підозрюю, що головна цінність - це підвищення обізнаності. Ви не будете просити IDE сказати вам, хто є автором кожного з файлів, які ви бачите, але, стикаючись з ними в часі в кодовій базі вашої групи, ви отримуєте уявлення про обов'язки та досвід роботи в проекті.

Для публічного надбання - вигода - "реклама", недоліком є ​​те, що хтось може зірвати ваш файл у майбутньому, але він все одно буде носити ваше ім'я.


2

Після 3-х десятиліть програмування та обслуговування та перетворення програмного забезпечення, можна сміливо сказати, що авторська інформація у вихідному коді нічим не потрібна.

Я ніколи не використовував це для цього. Йому не можна довіряти Ніхто з людей досі не працює на підприємстві. Половина імен - підрядники.


2

Я ніколи не залишаю свої контактні дані в коді. Вона завжди застаріла і, здається, викликає більше проблем, а потім вирішує.

Інші люди вказали на досить багато проблем, але я хотів зазначити одну, яку, на мою думку, це найбільш підступні наслідки.

Це може зруйнувати командну роботу та якість коду.

Як ви можете запитати, добре це стосується колективного володіння кодом. Якщо ви введете своє ім'я коду, наступна людина, яка приходить, скаже "це не мій код, я просто X", де X можна зламати його, ігнорувати його і т. Д. Потім, якщо вони це виправлять, вони звичайно хочуть поставити своє ім'я на код, тому що вони його покращили. Але тоді ви можете подумати, ей, я витратив тижні на цей код, і вони витратили 10 хвилин, чому вони отримують, щоб їх ім'я було прямо моїм. З часом цей цикл продовжується, і люди сперечаються щодо того, хто повинен отримати кредит (або винуватити) код.

Це просто не виходить добре для команди. Натомість, якщо команда зосередилась на колективній власності та зробила весь код великим без власності, ви можете зосередитись на тому, що дійсно важливо, а саме на якості системи. Якщо вам потрібно виявити, хто над цим працював, ви завжди можете скористатися VCS, щоб отримати детальну інформацію.

Примітка. Навіть заголовки авторських прав можуть мати цей руйнівний вплив, якщо він має ім'я розробника, особливо якщо розробник не такий активний, як інші учасники. Ось чому в проектах з відкритим кодом я намагаюся лише згадати авторів в АВТОРАХ або автори, які подають одне місце в проекті.


1
Я думаю, що ваші питання випливають більше з погано налаштованих колег, ніж самих коментарів.
Джей

Чудова відповідь, деякі проекти з відкритим кодом забороняють навіть писати інформацію про авторів у файли, оскільки це порушує право власності на колективний код.
Етьєнн

1

Я не прагну залишати свою контактну інформацію у вихідному коді, оскільки мій ДКС піклується про відповідальність за мене.

З огляду на це, бажано мати свою контактну інформацію десь, щоб люди, які використовують код, могли зв’язатися безпосередньо з вами, щоб надати відгук. Посилання на веб-сайт проекту у файлі README, як правило, є хорошою практикою.

Конвенція походить з епохи, коли Usenet та IRC регулярно використовувались для обміну вихідним кодом. Оскільки код рідко посилався на VCS і частіше надсилався безпосередньо, якщо ви хочете отримати зворотній зв'язок, вам доведеться десь включити вашу контактну інформацію.


1

Я залишаю своє ім'я в SQL-скриптах, оскільки вони здебільшого вийдуть безпосередньо з бази даних, а не з контролю джерел.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.