Haruskah kita meninggalkan detail kontak kita dalam kode sumber?

15

Saya biasanya meninggalkan alamat email saya sebagai rasa hormat jika seseorang ingin bertanya kepada saya nanti. Apakah orang lain meninggalkan informasi lebih atau kurang dari itu? Apakah ada yang meninggalkan nomor telepon ??

mungkin di pantai
sumber
7
****** Tidak. ******
Joel Etherton
1
@ Joel - ****** No. Neraka ****** Saya ingat beberapa kode yang saya lepaskan kepada dunia dan saya lebih suka mencoba melupakannya daripada diingatkan 10 tahun dari sekarang oleh seseorang tanya saya WTF! = P
jmq

Jawaban:

28

Saya hampir tidak pernah meninggalkan nama atau alamat email saya:

  • Itu cenderung mendapatkan copy-paste (yeah, praktik buruk) ; dan saya berakhir dengan orang yang menghubungi saya untuk kode yang tidak saya tulis
  • Ketika kode diubah, info kontak tidak dihapus atau diperbarui; dan saya berakhir dengan orang-orang menghubungi saya tentang kode yang telah banyak berubah sehingga saya bahkan tidak mengenalinya.

Sebagai gantinya, saya lebih suka menunjuk orang ke repositori kode (SVN, Git, ...) : di sana, mereka dapat memiliki sejarah lengkap - dan mencari tahu siapa yang menulis / memodifikasi bagian yang mereka tanyakan.

Pascal MARTIN
sumber
6

Saya terbiasa membiasakan diri dengan nama saya atau inisial dalam tajuk komentar, dengan nomor revisi dan deskripsi singkat tentang perubahan itu.

Saya baru-baru ini keluar dari kebiasaan itu mengingat fakta bahwa ini berlebihan dengan kontrol versi, misalnya siapa pun yang tertarik pada siapa yang membuat perubahan apa yang dapat melihat seluruh sejarah kode sumber dalam kontrol versi.

Brandon
sumber
Aha! Saatnya mengeluh kepada NetBeans tentang template default mereka.
Gio Borje
5

Jika Anda mengembangkan perangkat lunak secara profesional, kemungkinan besar Anda menggunakan beberapa sistem kontrol versi (svn, hg, git, dll). Dalam hal ini, saya merasa berlebihan untuk meninggalkan informasi pribadi Anda di dalam kode karena Anda sudah memiliki akun coder (dengan informasi itu) untuk dapat melakukan kode pada proyek.

Namun, beberapa orang dari komunitas open source merasa tertarik untuk meninggalkan nama dan alamat email untuk kontak. Ini sama sekali bukan ide yang buruk. Lihat contoh ini:

Dari FFmpeg:

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

Dari 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
sumber
3

Tapi tentunya meninggalkan nama dan atau email saya berarti saya seharusnya menulis komentar dalam kode saya ?? Maaf bukan jawaban. Pada kenyataannya saya biasanya meninggalkan komentar doctype ...

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

dengan nama saya tetapi tidak alamat email. Ya kode ini dapat dipotong dan disisipkan tetapi jika mesin fotokopi tidak mengubah nama penulis mereka tidak akan mengubah apa pun dan menjadi jelas itu adalah komentar yang tidak dipelihara.

Saya memiliki sig email yang saya gunakan dari waktu ke waktu

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

yang tampaknya merupakan refleksi umum dari banyak posting lain di utas ini. Namun karena tidak ada aturan tentang subjek, seorang programmer perlu melakukan apa yang menurut mereka paling nyaman.

PurplePilot
sumber
Err ... apa? Saya pikir ini seharusnya komentar.
Adam Lear
2
@ Anna - Err .... Saya pikir itu seharusnya menjadi lelucon.
ocodo
@ Slomojo Ya, saya mengerti. Masih berpikir itu lebih tepat sebagai komentar. Ini lucu, tapi tidak ada jawaban.
Adam Lear
@ Anna, oh saya mengerti, mungkin, tetapi berfungsi sebagai jawaban untuk pertanyaan, ketika saya membacanya.
ocodo
2

Saya sering meninggalkan inisial saya dalam komentar (jika perlu), tetapi saya tidak melihat alasan untuk meninggalkan apa pun. Jika saya masih bekerja di perusahaan yang memiliki kode, orang harus tahu cara menghubungi saya.

Jika saya meninggalkan perusahaan dan bekerja di tempat lain, tidak adil bagi majikan baru saya jika saya menerima telepon tentang perangkat lunak di perusahaan terakhir saya (yang bisa menjadi pesaing!).

Jika kode dibagikan dengan cara lain (mis. Open-source, diposting online), mungkin ada baiknya memiliki detail kontak Anda, tetapi jika kode itu diteruskan dengan cara lain, orang yang Anda berikan kemungkinan besar sudah memiliki Anda detail kontak, dan apakah Anda benar-benar ingin orang asing acak menelepon menanyakan kode yang Anda tulis bertahun-tahun sebelumnya?

Danny Tuppeny
sumber
Yap di dalam perusahaan yang masuk akal. Saya lebih memikirkan kode yang dirilis ke domain publik.
1
Untuk kode yang dirilis secara publik, saya mungkin akan tetapi nama / url / email saya di header. Saya mungkin akan menggunakan alias email unik sehingga saya bisa memfilter / memblokir email jika berakhir dengan spam karena diposting online secara publik.
Danny Tuppeny
2

Ada garis pemikiran yang mengatakan: Jangan masukkan hal-hal kode sumber Anda yang seharusnya ada di kontrol sumber.

Informasi kepengarangan adalah salah satu dari hal-hal ini, karena seiring waktu, kode akan dimodifikasi oleh banyak orang kurang dari file granularity. Log kesalahan harus memberi tahu Anda semua yang perlu Anda ketahui.

Yang sedang berkata, banyak perusahaan mengikuti transisi daftar pembuat file asli dan tidak pernah mengubahnya. Apakah itu benar-benar bermanfaat (ketika orang-orang meninggalkan perusahaan), saya tidak tahu.

Saya menduga bahwa nilai utama adalah membangun kesadaran. Anda tidak akan pergi dan meminta IDE untuk memberi tahu Anda siapa yang menulis setiap file yang Anda lihat, tetapi dengan menjumpainya dari waktu ke waktu dalam basis kode grup Anda, Anda mendapatkan gagasan tentang tanggung jawab dan keahlian dalam proyek tersebut.

Untuk domain publik - manfaatnya adalah "iklan", downside adalah bahwa seseorang dapat merusak file Anda di masa depan tetapi masih akan menanggung nama Anda.

Uri
sumber
2

Setelah 3 dekade pemrograman dan memelihara dan mengonversi perangkat lunak, saya dapat dengan aman mengatakan bahwa informasi penulis dalam kode sumber tidak berharga.

Saya belum pernah menggunakannya. Itu tidak bisa dipercaya. Tidak ada orang yang masih dipekerjakan oleh perusahaan. Setengah dari namanya adalah kontraktor.

S.Lott
sumber
2

Saya tidak pernah meninggalkan detail kontak saya dalam kode. Itu selalu keluar dari tanggal dan tampaknya menyebabkan lebih banyak masalah kemudian diselesaikan.

Orang lain telah menunjukkan beberapa masalah, tetapi saya ingin menyebutkan satu yang menurut saya merupakan efek paling berbahaya.

Itu dapat menghancurkan kerja tim dan kualitas kode.

Bagaimana Anda bertanya, baik itu semua berkaitan dengan kepemilikan kode kolektif. Jika Anda memasukkan nama kode Anda, maka orang berikutnya yang datang akan mengatakan "itu bukan kode saya, saya hanya akan X" di mana X dapat meretasnya, mengabaikannya, dll. Lalu jika mereka memperbaikinya, mereka tentu saja ingin memasukkan nama mereka pada kode karena mereka memperbaikinya. Tapi kemudian Anda mungkin berpikir, hei saya menghabiskan waktu berminggu-minggu untuk kode ini dan mereka menghabiskan 10 menit mengapa mereka bisa mendapatkan nama mereka dengan nama saya. Seiring waktu siklus ini berlanjut dan orang-orang berdebat tentang siapa yang harus mendapatkan kredit (atau kesalahan) untuk kode tersebut.

Itu tidak bekerja dengan baik untuk tim. Alih-alih jika tim fokus pada kepemilikan kolektif dan membuat semua kode menjadi hebat tanpa kepemilikan, Anda dapat fokus pada apa yang benar-benar penting yaitu kualitas sistem. Jika Anda perlu melacak siapa yang telah mengerjakannya, Anda selalu dapat menggunakan VCS untuk mendapatkan detailnya.

Catatan: Bahkan tajuk hak cipta dapat memiliki dampak destruktif ini jika memiliki nama pengembang, terutama jika pengembang tidak seaktif kontributor lainnya. Itulah sebabnya pada proyek Open Source saya mencoba untuk hanya menyebutkan penulis dalam PENULIS atau kontributor mengajukan satu tempat di proyek.

Allen
sumber
1
Saya pikir masalah Anda berasal lebih dari rekan kerja yang berpikiran buruk daripada komentar itu sendiri.
Jay
Jawaban yang bagus, beberapa proyek sumber terbuka bahkan melarang untuk menulis informasi penulis dalam file karena melanggar kepemilikan kode kolektif.
Étienne
1

Saya tidak cenderung meninggalkan informasi kontak saya dalam kode sumber karena VCS saya mengurus pertanggungjawaban untuk saya.

Karena itu, disarankan untuk memiliki informasi kontak Anda di suatu tempat sehingga orang yang menggunakan kode dapat menghubungi Anda secara langsung untuk memberikan umpan balik. Tautan ke situs web proyek dalam file README umumnya merupakan praktik yang baik.

Konvensi tersebut berasal dari era ketika Usenet dan IRC digunakan secara teratur untuk berbagi kode sumber. Karena kode jarang dihubungkan dari VCS dan lebih sering dikirim langsung, jika Anda ingin umpan balik, Anda harus memasukkan informasi kontak Anda di suatu tempat.

Chris Browne
sumber
1

Saya meninggalkan nama saya dalam skrip SQL, karena sebagian besar akan diambil langsung dari database, bukan dari kontrol sumber.

Cosmin
sumber