Apa itu proses peninjauan kode umum dan apa yang dianggap buruk?

16

Perusahaan saya baru-baru ini mulai melakukan tinjauan kode formal. Prosesnya seperti ini: Anda mengirimkan ke github, meminta permintaan tarik, kode ditinjau oleh sekitar tiga orang, lalu jika semua lewat, kode Anda masuk.

Prosesnya tampak adil, namun tiga orang yang melakukan tinjauan kode tampaknya tidak adil. Saya perhatikan bahwa ketika saya memasukkan kode saya untuk ditinjau, saya mendapatkan antara 100-200 komentar. Jumlah teratas untuk saya adalah 300 komentar sekali. Tentu saja Anda akan berpikir itu adalah perubahan besar, tetapi ini bisa menjadi perubahan yang sangat kecil juga dengan kurang dari 50 baris kode (yang termasuk tes unit). Semua komentar dianggap "harus dilakukan" dan tanpa argumen.

Dengan pemikiran itu, masalah utama saya di sini adalah tampaknya agak berlebihan. Saya berbicara dengan grup dan pada dasarnya mereka mengatakan kepada saya bahwa hanya karena saya memiliki bertahun-tahun pengembangan di php tidak berarti saya seorang "pengembang." Tentu saja ini tampaknya lebih menyakitkan daripada tidak. Saya juga memperhatikan bahwa di dalam grup, mereka tampaknya tidak menghasilkan banyak komentar dan sebagian besar waktu mereka mengabaikan atau mengabaikan komentar atau saran lain jarang menerimanya sebagai poin yang valid bahkan jika ada sesuatu yang rusak.

Jadi pertanyaan saya adalah apakah ini adil? Atau biasa?

pengguna1207047
sumber
3
Apa komentar yang Anda dapat? Sepertinya banyak. Apakah itu memformat komentar? Pengodean? Sulit untuk menjawab tanpa mengetahui lebih lanjut tentang sifat komentar (dan mungkin persis apa yang ada di kode Anda memicu komentar).
MetalMikester
1
Hai - tidak yakin apakah ini istilah yang tepat, tetapi kebanyakan berupa komentar "praktik terbaik" umum seperti variabel penamaan ulang, fungsi pemindahan, pengubahan nama fungsi ke atas 3-5 kali, dll. Kami telah memasang phpcs sehingga pemformatannya benar.
user1207047
Juga lupa menyebutkan tiket ini, saya sebenarnya adalah pengembang level 3 di perusahaan ini. Saya memiliki sertifikasi php dan telah bekerja dengan baik selama 8 tahun bekerja di sini. Ini baru akhir-akhir ini mulai terjadi. Jadi saya ingin orang berpikir bahwa setelah 8 tahun, Anda akan tahu sesuatu yang benar?
user1207047
1
"Jadi maksudku orang akan berpikir bahwa setelah 8 tahun, kamu akan tahu sesuatu yang benar?" - Yah, Anda akan terkejut ... Hal-hal yang saya lihat di tempat kerja kadang-kadang ...
MetalMikester

Jawaban:

15

Semua komentar dianggap "harus dilakukan" dan tanpa argumen.

IMHO itulah masalah sebenarnya, karena tidak ada prioritas dalam hal itu. Ketika Anda mendapatkan 100-300 komentar, pasti ada beberapa di antaranya yang memiliki prioritas A (bug nyata), beberapa di antaranya prio B (kemungkinan akan mengarah ke bug nanti) dan beberapa di antaranya prio C (semuanya). Beri tahu kolega Anda bahwa Anda bersedia untuk menghormati semua keinginan mereka, tetapi untuk membuat perubahan efektif, dan waktu Anda terbatas, bersikeras pada prioritas. Kemudian, mulailah dengan memperbaiki prio A komentar terlebih dahulu, dan jika Anda benar-benar punya waktu untuk lebih setelah itu, Anda dapat mulai dengan B (jika Anda beruntung, bos Anda akan mengerti bahwa memperbaiki prio B dan C tidak begitu penting, dan memberi Anda beberapa tugas yang lebih penting daripada membuang-buang waktu Anda).

Doc Brown
sumber
Saya telah mencoba berkali-kali untuk meminta prioritas komentar. Saya mendapatkan kembali sesuatu seperti "senang memiliki" dan "diharuskan." Ternyata sebagian besar dari mereka "diperlukan."
user1207047
2
Saya telah melihatnya terjadi di mana pengembang tertentu diberikan banyak item tindakan dari ulasan mereka untuk mencegah mereka mengacaukan kode di area lain dari program ini. Tapi itu akan menjadi untuk pengembang yang sangat miskin yang "dipaksa" ke proyek dan pemimpinnya tidak dapat menyingkirkan mereka karena keputusan manajemen.
Dunk
2
Anda tahu @Dunk, saya pikir Anda ada di sini. Komentar Anda benar-benar diterima dan saya menerima jawaban ini karena saya pikir saya tidak dapat menerima komentar. Saya adalah "orang luar" untuk grup ini dan menyadari sekarang mengapa lingkaran dalam mendapatkan ulasan yang lebih baik dan lebih cepat dan yang di luar tidak. Saya "dipaksa" ke tim ini oleh manajemen, ya dan kami "dipaksa" untuk bekerja sama. Jadi ini terdengar sangat masuk akal dan penjelasan logis mengapa itu lebih keras. Itu atau saya benar-benar bau coding. Satu-satunya cara untuk mencari tahu adalah dengan pergi ke grup / perusahaan lain dan melihat sendiri.
user1207047
4
@ user1207047: Anda seharusnya tidak menerima jawaban karena Anda menyukai salah satu komentar di bawahnya karena bertentangan dengan standar dan tujuan situs (saya pikir saya merasakan pola di sini). Ada fungsi komentar upvote untuk itu.
webbiedave
10

Ulasan kode dapat menjadi proses yang memecah belah.

Anda berada di persimpangan yang penting. Lakukan analisis bijaksana pada ulasan mereka. Apakah mereka mengidentifikasi masalah memilih, atau menyoroti kelemahan serius dalam gaya dan logika Anda?

Jika yang pertama, saya sarankan bekerja menuju resolusi (pekerjaan baru, atau proses peninjauan kode baru).

Jika ini yang terakhir, saya sarankan melakukan banyak membaca kode dan belajar untuk mencoba membawa kode Anda ke kualitas profesional.

JoeG
sumber
Hei, pikiran bagus. Dari apa yang saya dapat kumpulkan beberapa dari mereka memang analisis yang bijaksana, tetapi kebanyakan dari mereka muncul memetik seperti fungsi bergerak atau fungsi penggantian nama. Masalahnya adalah ketika mereka menjelaskan proses berpikir mereka memang masuk akal tetapi di antara mereka sendiri mereka tidak melakukan hal yang sama dan membuat kesalahan yang sama seperti saya.
user1207047
Terlebih lagi, ulasan kode begitu dalam sehingga saya lupa apa yang saya lakukan dan membuat lebih banyak bug memperbaiki aplikasi karena komentar 100-an yang berlebihan. Misalnya, suatu kali saya disuruh menulis ulang sebagian besar kode. Sebelum itu kode itu benar dan fungsional. Setelah ulasan kode dan hampir 150 komentar, fungsi asli dan kebenaran hilang dan banyak bug dimasukkan. Ketika saya menyadari ini dan memperbaikinya, saya pada dasarnya diberitahu, "Ya, proses peninjauan kode kami membuat Anda seorang programmer yang hebat karena sekarang Anda akan memperbaikinya kembali dan lebih mudah untuk melakukannya."
user1207047
8
@ Pengguna: penamaan metode / fungsi itu penting, itu tidak selalu nit-picking. Jika Anda melakukan pekerjaan yang buruk dengan penamaan maka itu dapat mengganggu tim Anda. Jika Anda tidak dapat menemukan nama yang jelas maka itu mungkin bukan fungsi yang baik. Anda tampaknya menjadi pria "baru" dan yang lain tampaknya memiliki metode untuk kegilaan mereka yang mungkin telah mereka diskusikan berkali-kali sebelumnya. Jadi, alasannya kurang berkomentar. Saya sarankan Anda mempelajari apa yang mereka inginkan dan mencoba menyesuaikan daripada kepala butt. Dapatkan rasa hormat, maka Anda akan berada dalam posisi untuk menawarkan ide-ide alternatif yang akan bertemu dengan pikiran terbuka.
Dunk
1
@user: Sepertinya Anda membutuhkan standar pengkodean / desain.
Dunk
2
@ Pengguna: Yang dapat Anda lakukan hanyalah berusaha untuk bekerja di dalam sistem dan menunjukkan bahwa Anda adalah pemain tim. Jika Anda sudah melakukannya. maka baik persepsi Anda tidak benar, Anda berhadapan dengan orang-orang yang tidak rasional, mereka menganggap sikap Anda menjadi perdebatan ATAU itu hanya politik kantor yang buruk. Satu-satunya yang Anda kendalikan adalah sikap / persepsi Anda. Jika Anda yakin Anda tidak sedang menghasut masalah maka saya tidak tahu mengapa Anda akan tinggal. Pergi mencari tempat yang menyenangkan untuk bekerja karena orang-orang rukun. Jika masalah yang sama terjadi di tempat lain maka lihatlah di cermin.
Dunk
5

Tampaknya oleh komentar Anda bahwa kolega Anda menggunakan proses peninjauan kode untuk menyetujui metodologi atau memoles kode. Saya baru saja mulai melakukan tinjauan kode seperti Anda dan saya perhatikan bahwa kadang-kadang kita membahas banyak hal yang hanya pendekatan atau peningkatan implementasi. Ini tidak buruk sama sekali sejauh yang wajar (300 komentar terlihat terlalu banyak bagi saya, yang harus terlihat seperti utas reddit)

Mungkin Anda perlu menyetujui beberapa keputusan arsitektur tentang kode sebelum mulai menerapkannya atau mungkin hanya setuju tentang penamaan konvensi, pola dan praktik yang baik sehingga Anda semua tahu apa yang dianggap "kode yang baik".

Jika Anda mematuhi standar kode Anda seperti yang Anda katakan dan kode berfungsi sebagaimana mestinya, seharusnya tidak ada begitu banyak komentar, sehingga mereka menggunakan kode Anda sebagai forum atau mereka mengolok-olok Anda karena tampaknya Anda menunjuk.

Saya akan mencoba untuk menjadi kritikus dengan diri saya sendiri, akan mencoba untuk mengambil bagian dalam percakapan dan melihat alasan semua komentar ini dan mungkin berbicara dengan mereka tentang hal itu dengan cara yang konstruktif untuk melihat mengapa mereka begitu tidak senang dengan kode Anda dan jika Anda dapat kode dengan cara yang membuat semua orang senang dan pekerjaan tidak terjebak dalam ulasan kode.

Saya baru saja membaca komentar terakhir Anda, kadang-kadang ketika Anda tidak setuju dengan kode Anda dapat memeriksanya seratus kali dan mengusulkan perubahan di mana-mana yang tidak membuat Anda bahagia karena alasan sebenarnya bahwa Anda akan melakukan keputusan arsitektur yang berbeda dan Anda tidak suka kode itu, tidak peduli berapa kali Anda membuatnya ulang. Seperti yang saya katakan di atas, mungkin Anda harus menyetujui pendekatan kode sebelumnya sehingga ketika Anda menulisnya Anda tahu apa yang mereka harapkan darinya dan karena itu kode Anda akan lebih masuk akal bagi mereka.

Juanmi Rodriguez
sumber
1
100% setuju dengan paragraf terakhir: Anda harus mendiskusikan desain yang Anda inginkan sebelum menerapkan. Setidaknya Anda mulai dengan kerangka kerja yang seharusnya dapat diterima. Kemudian setelah implementasi, mungkin ada gunanya mencoba membahas desain akhir (bukan kode). Kemudian modifikasi kode agar sesuai dengan hasil diskusi desain akhir. Jika setelah beberapa kali mencoba hal itu dan itu tidak memperbaiki masalah maka itu akan membuatnya jelas bahwa posisinya hanya cocok dan Anda harus mulai mencari di tempat lain.
Dunk
4

Dari apa yang Anda katakan, menurut saya mereka mungkin memiliki bias terhadap pengembang php, dan dengan demikian mereka mencoba untuk menemukan setiap hal yang salah dengan kode Anda untuk membuktikan pendapat mereka.

Mengenai review kode itu sendiri, saya percaya seperti yang Anda katakan sudah, bahwa sejumlah besar komentar kecil kurang membantu daripada beberapa kritik yang baik dan valid. Dan meskipun saya memiliki pengalaman terbatas sehubungan dengan ulasan kode, teknik berikut ini telah bekerja dengan baik untuk tim tempat saya bekerja sebelumnya.

  • Pertama-tama, penganalisa kode statis harus digunakan untuk mengidentifikasi sebagian besar masalah sebelum peninjauan kode dilakukan. Misalnya: menjalankan kode Anda melalui Sonar, Lint atau penganalisa kode yang baik lainnya akan membantu Anda untuk menyingkirkan sebagian besar masalah kecil. Terutama karena pengulas Anda dapat menentukan profil khusus untuk memastikan semuanya mulai dari penempatan braket, spasi putih, komentar, penamaan variabel yang tepat, dan banyak lagi ...
  • Kedua, saya tampaknya bekerja dengan baik jika Anda membagi komentar ke dalam kategori yang berbeda. Misalnya dua kategori di mana satu grup menyertakan hal-hal kecil yang harus Anda perhatikan dan terapkan di masa depan. Dan grup kedua untuk komentar-komentar itu yang memerlukan modifikasi segera dari kode Anda yang akan membutuhkan komit lain dan ulasan selanjutnya. Tentu saja, jumlah komentar di grup terakhir harus lebih kecil.

Selain itu, saya harus mengatakan bahwa ulasan kode nyata pertama saya juga berisi lebih banyak komentar daripada yang saya harapkan. Namun saya tidak pernah menganggap ini sebagai hal yang buruk. Jika Anda terus belajar dari komentar mereka² dan bersedia menerapkan teknik-teknik baru yang dipelajari / praktik terbaik dalam pengiriman kode Anda di masa mendatang, komentar-komentar tersebut akan menjadi kurang. Itu memang benar bagi saya ;-)

¹ Dalam pengalaman saya, ini sering terjadi karena banyak programmer mengklaim bahwa php adalah bahasa pemrograman yang paling jahat, dengan menggunakan programmer yang paling tidak berpengalaman menggunakannya. Saya menjauhkan diri dari pernyataan ini karena saya percaya bahwa perangkat lunak yang hebat dapat ditulis dalam bahasa apa pun!

² Dengan asumsi bahwa meskipun komentarnya berlebihan, ada beberapa nilai di dalamnya

Jérôme
sumber
Saya sepenuh hati setuju dengan apa yang Anda katakan. Ini adalah pengalaman belajar dan orang harus belajar. Namun, ini sudah berlangsung cukup lama ke titik di mana sepertinya tidak demikian. Entah saya mendapatkan bodoh atau sesuatu yang lain sedang terjadi. Saya kira jika setiap permintaan tarik menghasilkan 100-an komentar maka Anda salah sepanjang waktu, atau ada hal lain yang terlibat di sini yang tidak sesuai dengan apa yang mereka klaim sedang coba lakukan. Entah mereka harus mengatakan, "Oke mari kita berhenti dan belajar" atau langsung ke pokok permasalahan. Setidaknya begitulah cara saya melihatnya.
user1207047
1
@ user1207047 Setelah membaca jawaban Anda terhadap jawaban lain, menurut saya Anda sudah tahu jawaban untuk pertanyaan Anda sendiri: :-) Tampaknya cukup jelas bahwa ada sesuatu yang mencurigakan dengan ulasan kode Anda. Mungkin sudah waktunya untuk berbicara dengan atasan atau untuk meminta transfer ke tim lain?
Jérôme
3

Apakah umum bagi siapa saja untuk mendapatkan 100+ komentar dalam ulasan kode mereka secara rutin? Saya akan mengatakan tidak. Apakah biasa bagi orang yang kualitas kodenya "meninggalkan banyak yang diinginkan" untuk mendapatkan banyak komentar, tentu saja.

Namun, itu juga tergantung pada "aturan" dari proses peninjauan kode. SEMUA ORANG memiliki ide mereka sendiri tentang bagaimana sesuatu seharusnya dilakukan. Jika proses peninjauan kode Anda memungkinkan komentar berbentuk "Anda harus melakukannya dengan cara ini, bukan seperti itu", maka Anda kemungkinan akan mendapatkan BANYAK komentar bahkan untuk kode yang memadai. Jika proses Anda dimaksudkan untuk menemukan "cacat" maka jumlah komentar harus jauh lebih kecil.

Dalam pengalaman saya, ulasan yang memungkinkan "saran" untuk metode alternatif adalah pemborosan waktu. "Saran" itu harus ditangani satu lawan satu di luar proses peninjauan. Ulasan yang cacat lebih bermanfaat karena membuat orang berfokus pada bug daripada "mengapa Anda tidak melakukannya seperti yang saya lakukan?". Ini juga lebih bermanfaat karena tidak dapat disangkal bug jika seseorang menemukannya. Dengan demikian, tidak ada perasaan terluka, tetapi kemungkinan besar rasa terima kasih sebagai gantinya.

PEMBARUAN: Dengan semua yang dikatakan, beberapa kode benar-benar buruk, meskipun cacat gratis. Dalam hal itu, komentar ulasan harus berupa komentar tunggal yang mengatakan sesuatu seperti. "Kode ini perlu dibersihkan. Silakan tunda ulasan sampai kode dibahas dengan [nama Anda di sini]." Dalam hal ini, peninjauan kode lebih lanjut harus berhenti sampai komentar diperbaiki.

UPDATE2: @ Pengguna: Apakah Anda mendiskusikan kode / desain Anda dengan salah satu dari mereka saat Anda sedang mengembangkannya sehingga Anda dapat mengimplementasikan apa yang mereka cari sebelum Anda melakukannya dengan cara Anda? Apakah Anda mengubah sesuatu tentang bagaimana Anda mengembangkan kode berdasarkan saran mereka atau tetap berpikir cara Anda baik-baik saja? Apakah Anda belajar sesuatu dari komentar mereka?

Ketika saya memimpin proyek, itu adalah tugas saya untuk bertanggung jawab atas SEMUA produk kerja. Jika saya menyetujui produk kerja maka saya mengklaim produk tersebut dapat diterima. Saya ingin memiliki reputasi untuk membangun produk yang berkualitas. Jadi, saya memiliki harapan dan tidak akan menerima kurang memuaskan. Pada saat yang sama saya mencoba mengajar dan menjelaskan alasan preferensi saya. Preferensi-preferensi itu mungkin tidak selalu ideal (terutama di mata orang lain), tetapi sebagian besar preferensi itu berasal dari pengalaman. Biasanya merupakan reaksi untuk menghindari pengulangan yang buruk. Jadi, ada beberapa "stickler" pribadi saya yang diperlukan untuk mendapatkan persetujuan saya, terlepas dari pushback.

Di sisi lain, Anda perlu mempelajari harapan yang diperlukan untuk mendapatkan produk kerja Anda disetujui. Anda dapat tidak setuju, tetapi karena Anda tampaknya tidak memiliki wewenang untuk memerintah maka pelajari apa yang diharapkan. Saya ragu bahwa tim berusaha membuat Anda gagal. Karena itu membuat mereka terlihat buruk juga. Dalam hal itu, cukup tunjukkan bahwa Anda ingin belajar (bahkan jika tidak), ambil apa yang mereka katakan dan lakukan yang terbaik untuk beradaptasi dengan preferensi mereka dan Anda mungkin akan melihat mereka mundur sedikit. Mungkin temukan yang paling tidak bisa Anda toleransi dan lihat apakah mereka akan melakukan sedikit pegangan tangan untuk mengajari Anda cara mereka. Siapa tahu, dalam prosesnya Anda bisa belajar sesuatu yang benar-benar bisa membawa keterampilan Anda ke tingkat selanjutnya.

Celup
sumber
Setuju, dan Anda tidak akan mendengar argumen dari saya dengan alasan itu. Namun, prosesnya tidak seperti itu. Mereka mengatakan demikian, dan dalam banyak kasus tampaknya hanya orang-orang di luar dari ketiga kelompok ini yang berada di bawah pengawasan yang lebih berat daripada diri mereka sendiri. Mereka mengklaim orang lain adalah pengembang yang buruk tetapi mereka adalah satu-satunya "pengembang" di tim.
user1207047
Namun satu hal adalah bahwa jika Anda tidak dapat memahami kode, atau pengembang menemukan kembali roda alih-alih menggunakan metode yang ada, atau jika metodenya memiliki kompleksitas siklomatik 50, maka itu jelas merupakan kasus untuk komentar, bahkan jika tidak ada bug. Sulit untuk membaca kode dan duplikasi adalah kewajiban, bahkan jika itu bukan bug. Itulah sebabnya saya tidak pernah ragu untuk menunjukkan bahwa suatu variabel nama buruk, atau bahwa solusinya memperkenalkan kopling sementara yang membuat pemahaman kode lebih sulit. Utang teknis harus dikelola.
Laurent Bourgault-Roy
1
@Laurent: Saya tahu apa yang Anda katakan dan dalam banyak hal setuju. Namun, itu membuka sekaleng cacing yang cenderung bola salju. Jika perusahaan Anda memiliki dana dan jadwal untuk memungkinkan tinjauan kode untuk mengambil bagian penting dari upaya maka tidak masalah (seperti proyek peralatan medis / pesawat terbang). Tetapi sebagian besar proyek tidak memiliki kemewahan. Dengan demikian, membatasi ruang lingkup ulasan komentar sangat membantu. Untuk mengimbangi kekhawatiran Anda, itu adalah tugas pemimpin untuk mengawasi pengembang dan pekerjaan mereka. Mereka harus tahu siapa yang harus dipantau paling dekat dan memperbaiki masalah-masalah itu sebelum peninjauan kode.
Dunk
Kita harus setuju untuk tidak setuju di sini :). Utang teknis adalah sesuatu yang harus Anda bayar cepat atau lambat (dan semakin Anda menunggu, semakin banyak bunga yang Anda bayar). Anda tidak akan menghemat uang karena menunda pembersihan. Jika Anda tidak meluangkan waktu untuk membersihkannya sekarang, maka perubahan selanjutnya mungkin dikenakan biaya dua kali lipat karena Anda akan kesulitan memahami kode. Saya bekerja dengan basis kode 8 tahun dan pengembangan telah melambat berhenti karena masalah kualitas. Kami sekarang memiliki aturan resmi "kualitas internal tidak dapat diabaikan". Saya dapat membuktikan bahwa itu menyelamatkan kita!
Laurent Bourgault-Roy
Saya membaca ulang komentar Anda dan saya menyadari bahwa mungkin kita memiliki pandangan yang berbeda karena metodologi kami. Saya bekerja pada Tim Agile di mana tidak ada petunjuk. Karena kita semua sama dan semua bertanggung jawab atas kualitas kode, kita semua harus saling memantau. Dan review kode dilakukan setiap 3-4 jam sebelum setiap integrasi. Jadi membersihkan permintaan tarik besar adalah beberapa jam jika kita sangat nazi atau jika kita melakukan refactor yang berdampak pada bagian lama dan kasar dari perangkat lunak. Karenanya mengapa saya melihat komentar kualitas kode sebagai "tidak ada masalah".
Laurent Bourgault-Roy
2

Beberapa perbedaan penting dengan proses inspeksi tim kami:

  • dasar inspeksi adalah daftar periksa, yang disusun oleh seluruh tim.
  • Fokus adalah cacat (sekarang dan masa depan), bukan gaya demi gaya.
  • 3 inspektur (termasuk penulis) duduk bersama untuk membahas komentar. Hanya komentar dengan suara mayoritas yang tersisa.
Kris Van Bael
sumber
2

Untuk 50 LOC 300 komentar tampaknya agak berlebihan dan - wow - 3 pengulas untuk setiap permintaan tarik? Perusahaan Anda harus memiliki banyak sumber daya.

Dari pengalaman saya untuk proses peninjauan kode yang berguna harus ada beberapa aturan dan / atau pedoman:

  • Prioritas komentar
  • Klasifikasi komentar (Bug, Gaya Kode, dll.)
  • Arsitektur / desain yang disepakati untuk diikuti
  • Gaya kode yang disetujui

Jika Anda tidak mendapatkan prioritas dari pengulas, tanyakan manajer proyek / pemimpin tim Anda yang bertanggung jawab; penanggung jawab biaya harus memiliki pendapat tentang prioritas.

Jika Anda memiliki arsitektur yang ditentukan, pemahaman umum apa pola desain yang Anda gunakan dalam proyek Anda dan gaya kode yang disepakati, maka komentar ulasan harus hanya tentang "masalah nyata" seperti masalah keamanan, bug yang tidak disengaja, kasus sudut tidak tercakup oleh yang ditentukan arsitektur, dll.

Jika tim pengembangan Anda belum menyetujui "masalah rasa" (misalnya variabel anggota harus dimulai dengan "m_"), maka setiap pengulas akan memaksa Anda untuk mengikuti gayanya, yang hanya membuang-buang waktu / uang.

Simon
sumber
1

Bagi saya ini benar-benar seperti masalah komunikasi. Anda memiliki harapan bahwa kode Anda tidak cukup buruk untuk mendapatkan 300 komentar. Para pengulas sepertinya berpikir Anda membutuhkan banyak umpan balik. Berdebat bolak-balik dengan cara asinkron akan menghabiskan banyak waktu. Heck, menulis 300 komentar adalah buang-buang waktu yang luar biasa. Jika ini tidak semuanya cacat maka mungkin sebagai anggota tim baru Anda belum tahu gaya tim. Itu normal dan sesuatu yang harus dipelajari untuk mempercepat seluruh tim.

Saran saya adalah menghemat waktu. Percepat umpan balik. Saya akan:

  • Lakukan lebih banyak ulasan sementara untuk menghindari kesalahan yang sama dan hasilkan komentar yang sama sebanyak 50 kali
  • Duduklah dengan pengulas saat mereka meninjau kode Anda sehingga Anda dapat berbicara tentang masalah yang muncul, sehingga menghindari mendokumentasikan 300 "masalah" yang akan dihapus di komit berikutnya
  • Pasangkan dengan salah satu pengembang "nyata" ini selama beberapa waktu ketika Anda menulis kode untuk melihat apa yang akan mereka lakukan secara berbeda

Orang mungkin berdebat menentang pasangan karena "itu akan memakan waktu lebih lama" tapi itu jelas bukan masalah di sini.

Steve Jackson
sumber