Zazwyczaj zostawiam swój adres e-mail jako uprzejmość na wypadek, gdyby ktoś chciał mi zadać pytanie na ten temat później. Czy inni ludzie zostawiają więcej lub mniej informacji niż to? Czy ktoś zostawia numer telefonu?
Zazwyczaj zostawiam swój adres e-mail jako uprzejmość na wypadek, gdyby ktoś chciał mi zadać pytanie na ten temat później. Czy inni ludzie zostawiają więcej lub mniej informacji niż to? Czy ktoś zostawia numer telefonu?
Odpowiedzi:
Prawie nigdy nie zostawiam swojego nazwiska ani adresu e-mail:
Zamiast tego wolę wskazywać ludziom repozytorium kodu (SVN, Git, ...) : tam mogą mieć pełną historię - i dowiedzieć się, kto napisał / zmodyfikował część, o którą mają pytanie.
Zwykle mam w zwyczaju zostawiać swoje imię lub inicjały w nagłówkach komentarzy, z numerem wersji i krótkim opisem zmiany.
Niedawno zrezygnowałem z tego nawyku, ponieważ jest to zbędne w przypadku kontroli wersji, np. Każdy zainteresowany tym, kto dokonał zmian, może zobaczyć całą historię kodu źródłowego w kontroli wersji.
Jeśli tworzysz oprogramowanie profesjonalnie, najprawdopodobniej używasz jakiegoś systemu kontroli wersji (svn, hg, git itp.). W tym przypadku uważam za zbędne pozostawienie danych osobowych w kodzie, ponieważ masz już konto programisty (z tymi informacjami), aby móc zatwierdzić kod w projekcie.
Jednak niektórzy ludzie ze społeczności open source uważają za interesujące pozostawienie nazwiska i adresu e-mail do kontaktu. To wcale nie jest zły pomysł. Sprawdź te przykłady:
Z FFmpeg:
/*
* Interplay C93 video decoder
* Copyright (c) 2007 Anssi Hannula <anssi.hannula@gmail.com>
*
* This file is part of FFmpeg.
*/
Z 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>.
*/
Ale z pewnością pozostawienie mojego imienia i nazwiska lub adresu e-mail oznaczałoby, że miałem pisać komentarze w moim kodzie? Niestety nie było odpowiedzi. W rzeczywistości zazwyczaj zostawiam komentarze doctype ...
/**
* @author PurplePilot
* @package
* @etc
*/
z moim imieniem, ale nie adresem e-mail. Tak, ten kod można wyciąć i wkleić, ale jeśli kopiarka nie zmieni nazwiska autora, nie zmieni niczego innego i stanie się oczywiste, że jest to niezachowany komentarz.
Mam e-maila, którego używam od czasu do czasu
/* Anything you put in comments is not tested and easily goes out of date. */
co wydaje się być ogólnym odzwierciedleniem wielu innych postów w tym wątku. Ponieważ jednak nie ma żadnych zasad na ten temat, programista musi zrobić to, co najbardziej mu odpowiada.
Często zostawiam swoje inicjały w komentarzach (w stosownych przypadkach), ale nie widzę powodu, aby pozostawić coś więcej. Jeśli nadal pracuję w firmie, która jest właścicielem kodu, ludzie powinni wiedzieć, jak się ze mną skontaktować.
Jeśli opuściłem firmę i pracuję gdzie indziej, to nie jest tak naprawdę uczciwe wobec mojego nowego pracodawcy, jeśli odbieram telefony o oprogramowaniu w mojej ostatniej firmie (która może być konkurentem!).
Jeśli kod został udostępniony w inny sposób (np. Open source, opublikowany online), być może warto mieć swoje dane kontaktowe, ale jeśli kod został przekazany w inny sposób, osoba, której go podałeś, prawdopodobnie już będzie mieć Twój dane kontaktowe i czy naprawdę chciałbyś, żeby ktoś nieznajomy dzwonił z pytaniem o kod napisany wiele lat wcześniej?
Istnieje pewna myśl: „Nie umieszczaj w kodzie źródłowym rzeczy, które powinny znajdować się w kontroli źródła.
Informacje o autorze są jedną z tych rzeczy, ponieważ z czasem kod będzie modyfikowany przez wiele osób w stopniu większym niż ziarnistość pliku. Dziennik winy powinien ci powiedzieć wszystko, co musisz wiedzieć.
To powiedziawszy, wiele firm śledzi zmianę autora oryginalnego pliku i nigdy go nie zmienia. Czy to jest naprawdę przydatne (gdy ludzie opuszczają firmy), nie wiem.
Podejrzewam, że główną wartością jest budowanie świadomości. Nie pójdziesz i nie poprosisz IDE o powiedzenie, kto jest autorem każdego pliku, który widzisz, ale napotykając je z czasem w bazie kodu grupy, masz pojęcie o odpowiedzialności i wiedzy fachowej w projekcie.
W przypadku domeny publicznej - zaletą jest „reklama”, wadą jest to, że ktoś może zniszczyć twój plik w przyszłości, ale nadal będzie nosił twoje imię.
Po 3 dekadach programowania, konserwacji i konwersji oprogramowania mogę spokojnie powiedzieć, że informacje o autorze w kodzie źródłowym są bezwartościowe.
Nigdy nie miałem z tego powodu pożytku. Nie można ufać. Żadna z osób nie jest nadal zatrudniona przez firmę. Połowa nazwisk to kontrahenci.
Nigdy nie zostawiam swoich danych kontaktowych w kodzie. Zawsze przestaje być aktualny i wydaje się, że powoduje więcej problemów niż rozwiązuje.
Inni ludzie wskazali sporo problemów, ale chciałem wspomnieć o jednym, który moim zdaniem jest najbardziej podstępnym efektem.
Może zniszczyć pracę zespołową i jakość kodu.
Jak możesz zapytać, cóż, wszystko to ma związek z własnością zbiorowego kodu. Jeśli podasz nazwę kodu, następna osoba, która wejdzie, powie „to nie jest mój kod, ja po prostu X”, gdzie X może go zhakować, zignorować itp. Jeśli to naprawią, oczywiście chcą umieścić swoją nazwę w kodzie, ponieważ go poprawili. Ale możesz pomyśleć, hej, spędziłem tygodnie nad tym kodem, a oni spędzili 10 minut, dlaczego mają prawo do mojego imienia. Z biegiem czasu ten cykl trwa i ludzie spierają się o to, kto powinien otrzymać kredyt (lub winę) za kod.
To po prostu nie działa dobrze dla zespołu. Zamiast tego, jeśli zespół skupił się na zbiorowej własności i uczynieniu całego kodu świetnym bez własności, możesz skupić się na tym, co jest naprawdę ważne, jakim jest jakość systemu. Jeśli musisz wyśledzić, kto nad tym pracował, zawsze możesz skorzystać z VCS, aby uzyskać szczegółowe informacje.
Uwaga: nawet nagłówki praw autorskich mogą mieć ten destrukcyjny wpływ, jeśli mają nazwę programisty, szczególnie jeśli programista nie jest tak aktywny jak inni współautorzy. Dlatego w projektach Open Source staram się wspomnieć tylko o autorach w pliku AUTORZY lub współautorzy, umieszczając jedno miejsce w projekcie.
Nie zostawiam moich danych kontaktowych w kodzie źródłowym, ponieważ mój VCS dba o mnie.
To powiedziawszy, wskazane jest, aby mieć gdzieś swoje dane kontaktowe , aby osoby korzystające z kodu mogły skontaktować się z Tobą bezpośrednio, aby przekazać swoją opinię. Link do strony internetowej projektu w pliku README jest ogólnie dobrą praktyką.
Konwencja pochodzi z epoki, w której Usenet i IRC były regularnie używane do udostępniania kodu źródłowego. Ponieważ kod rzadko był łączony z VCS i częściej wysyłany bezpośrednio, jeśli chcesz uzyskać informację zwrotną, musisz gdzieś podać swoje dane kontaktowe.