Saya telah melakukan banyak tinjauan kode akhir-akhir ini, dan saya tidak yakin dengan efek positif dan negatif serta profesionalisme dalam memberikan komentar positif dan / atau lucu dalam ulasan kode.
Kami menggunakan Github sebagai platform peninjauan kode kami di tim saya, sehingga komentar dapat dilihat oleh siapa pun. Saya biasanya mencoba menggunakan platform ini sehingga seluruh proses dari awal hingga selesai terlihat dan historis.
Jawaban:
Penting untuk menyoroti hal-hal positif maupun negatif. Saya tahu jika saya meninjau refactor dari subsistem neraka tertentu menjadi sesuatu yang rapi dan bersih, saya mungkin akan membeli programmer pizza untuk usahanya.
Jika Anda menggunakan ulasan sebagai pelatihan, ini sangat penting - menyoroti kode yang baik akan bermanfaat bagi para programmer junior yang juga meninjau kode itu. Mereka akan memiliki kesempatan untuk mengajukan pertanyaan tentang mengapa pendekatan atau teknik tertentu lebih baik daripada yang lain.
sumber
Lucu: Simpan untuk pendingin air, kecuali dalam dosis minimal - memiliki wajah prune bukan keharusan untuk meninjau kode.
Positif: Tentu saja. Tinjauan mencakup positif dan negatif / konstruktif, menurut definisi.
Umpan Balik Positif membantu semua orang:
Untuk yang menerima acungan jempol, Anda memperkuat kepercayaan diri mereka dan menginspirasi mereka untuk melakukan hal yang sama melalui umpan balik positif Anda.
Selebihnya, seperti yang disebutkan orang lain, mereka akan belajar apa yang harus dilakukan , serta apa yang tidak boleh dilakukan . Mereka juga akan didorong untuk unggul, sehingga suatu hari mereka juga dapat menjadi sorotan.
Saya pernah bekerja untuk bos yang liberal dalam umpan balik positifnya - timnya sangat sukses dan produktif. Dia pindah, dan yang lain mengambil alih yang tidak memiliki kemampuan untuk memuji pekerjaan yang dilakukan dengan baik. Produktivitas dan moral terpuruk, dan banyak anggota tim yang lebih baik meninggalkan perusahaan.
sumber
Saya akan mengatakan menjaga komentar tetap bersih dan to the point, tepatnya karena budaya.
Anda tidak dapat menghindari bahwa beberapa orang akan mengambil hal-hal dengan cara yang salah.
Untuk mengurangi itu, pembicaraan pribadi satu lawan satu akan memperlancar hal-hal, jika tatap muka tidak mungkin, obrolan atau email atau skype.
sumber
Mengomentari dalam tinjauan kode sedang dikelola
Perlakukan komentar sebagai alat manajemen
Memasukkan komentar ke dalam tinjauan kode adalah bentuk manajemen. Karena itu, harus didekati sebagai alat manajemen.
Gunakan praktik manajerial saat berkomentar
Ada struktur untuk mengelola orang di mana tujuannya adalah untuk memenuhi hasil yang diinginkan. Beberapa pendekatan utama untuk manajemen tidak akan berlaku dalam komentar tetapi sebagian besar akan. Topik yang berlaku mencakup lingkungan, kepemimpinan, pengorganisasian, dan pengendalian.
Lingkungan Hidup
Budaya
Lingkungan menentukan gaya manajemen. Budaya dan lingkungan tempat kerja harus selalu diingat ketika menggunakan alat manajemen apa pun. Biasanya ini dipengaruhi oleh industri dan ukuran perusahaan atau entitas yang dikelola.
Gaya
Jika ada budaya ringan maka itu mungkin akan muncul dalam gaya manajemen yang digunakan. Jika ada pedoman, kebijakan, dan konsekuensi yang sangat ketat, maka itu harus tercermin dalam gaya yang digunakan. Jadi, jika semua orang ada di papan untuk lelucon perang bintang referensi droid dan stormtrooper berpikiran lemah maka interupsi komedi dapat diterapkan. Namun, jika ada konsekuensi yang mengerikan karena tidak menganggap serius hasil akhir maka hal itu mungkin perlu dihindari.
Kepemimpinan
Fundamental
Ada tiga pilar utama kepemimpinan yang perlu dipertimbangkan ketika berkomentar. Yaitu mereka adalah visi, komunikasi, dan penilaian.
Vision
Penting untuk mengingat visi besar saat menjelaskan atau memberikan instruksi. Dalam komentar, ini bisa berarti menunjukkan bagaimana perubahan kecil mempengaruhi proyek secara keseluruhan, apa implikasinya dari mengambil pendekatan yang berbeda, atau ujung topi untuk pemisahan masalah.
Communication
Menjadi komunikator yang baik adalah penting dalam banyak aspek kehidupan. Tidak ada bedanya dalam komentar. Mempekerjakan tingkat singkat yang bijaksana adalah penting - terutama karena komentar tidak boleh mengambil banyak ruang. Dapatkan lebih awal, dan buatlah cadangan dengan contoh jika perlu. Dalam organisasi yang lebih besar, ini juga dapat mencakup kebutuhan untuk mengirimkan komunike atau memo jika masalah tidak dilokalisasi ke satu sesi peninjauan.
Judgement
Adalah penting bahwa strategi digunakan ketika menilai apakah komentar perlu dibuat atau tidak, dan perubahan apa yang perlu dilakukan. Penghakiman Anda tidak selalu harus benar, tetapi perlu secara konsisten benar terutama ketika panggilan penghakiman besar dilakukan.
Pengorganisasian
Dari sudut pandang manajerial, pengorganisasian akan mengacu pada menjaga tujuan akhir dalam pikiran dan memastikan bahwa proses diselaraskan untuk mengikuti serangkaian aturan. Komentar juga harus mengingat hal ini karena komentar harus bila memungkinkan saling membangun untuk memastikan bahwa aliran desain diikuti. Penting juga untuk mengingat ruang lingkup kode yang ditinjau untuk mengurangi penggandengan dan mengikuti keseluruhan desain.
Mengontrol
Mengontrol tindakan mereka yang dikelola adalah proses yang rumit. Sementara bersikap tegas, harus diingat bahwa rakyat itu penting. Ada beberapa keterampilan manajerial yang digunakan saat mengendalikan orang lain. Keterampilan ini bersifat politis, konseptual, interpersonal, diagnostik, dan teknis.
Politik
Politik dapat ditemukan kapan saja ada interaksi antara orang-orang. Ini adalah topik yang sangat besar, tetapi dalam arti umum politik berputar di sekitar pengaruh. Penting untuk mengingat politik pribadi dan profesional di tempat kerja ketika memberikan komentar. Ini bisa terkait dengan instruksi, lelucon, atau bahkan pertanyaan.
Konseptual
Mengelola melalui konseptualisasi adalah alat yang penting. Ini membutuhkan analisis yang kompleks dari situasi yang dihadapi. Ketika berkomentar, akan bermanfaat jika menyertakan beberapa analisis yang digunakan untuk menghasilkan kesimpulan atau perubahan yang ditunjukkan dalam ulasan.
Interpersonal
Keterampilan interpersonal sangat penting ketika mengelola. Ini juga merupakan topik besar. Beberapa hal penting yang perlu dipertimbangkan dengan keterampilan interpersonal adalah bimbingan, kritik konstruktif, dan "harpooning".
Mentoring
Penting bahwa manajemen dipandang lebih sebagai mentor daripada sebagai antagonis. Dalam ulasan kode, ini berarti bahwa kadang-kadang akan bermanfaat untuk memasukkan anggukan pada pola desain atau pendekatan yang dapat digunakan untuk memperbaiki situasi.
Constructive Criticism
Kritik itu penting karena ia mengundang refleksi. Namun, kritik harus dijaga se-positif mungkin. Ini berarti menawarkan bukti yang valid untuk mendukung kritik, dan juga memastikan bahwa nada yang digunakan tidak negatif. Saat meninjau kode, ini dapat mencakup menampilkan pengecualian atau kemungkinan skenario yang akan menghasilkan kesalahan sambil menyiratkan solusi alih-alih menunjukkan setiap tempat yang salah ketika seluruh bagian kode perlu diganti.
"Harpooning"
"Harpooning" adalah ketika Anda secara kiasan menghantam seseorang ke tanah. Ini dilakukan dengan memecah mereka langkah demi langkah tanpa penangguhan hukuman sampai mereka merasa tidak bisa bangun. Jika Anda menusuk seseorang dalam ulasan kode atau di tempat lain Anda akan kehilangan kerja sama mereka. Penting untuk menghindari menjatuhkan seseorang secara berlebihan.
Ringkasan bisnis plan
Perlakukan komentar dalam ulasan kode sebagai alat manajerial. Ingatlah bahwa komentar harus singkat, to the point, dan konstruktif. Juga memastikan bahwa ketika mengomentari orang yang ditinjau dipertimbangkan.
sumber
Ulasan kode adalah alat untuk meningkatkan kualitas kode, sebagian dengan mengungkap cacat. Lebih penting lagi, Anda ingin menanamkan praktik pengkodean yang baik.
Dari perspektif ini, penting untuk mengomentari hal-hal yang dilakukan dengan baik. Dalam konteks pelatihan, peningkatan juga harus dikomentari. Jika budaya Anda adalah salah satu dari perbaikan berkelanjutan, maka Anda harus selalu mengomentari perbaikan.
Kesalahan, bug, dan pengkodean yang buruk akan terjadi. Tunjukkan secara non-pribadi, dan perlakukan seperti yang diharapkan.
Dari perspektif modifikasi perilaku, hadiah jauh lebih baik dalam menghasilkan perubahan daripada hukuman. Saya akan menganggap pekerjaan yang baik diperhatikan sebagai hadiah.
sumber