มันเหมาะสมที่จะมีความคิดเห็นในเชิงบวกในการตรวจสอบรหัสหรือมันเป็นเพียงการวิจารณ์ที่สร้างสรรค์?


36

เมื่อไม่นานมานี้ฉันได้ทำการตรวจสอบโค้ดจำนวนมากและฉันไม่แน่ใจเกี่ยวกับผลในเชิงบวกและเชิงลบและความเป็นมืออาชีพในการแสดงความคิดเห็นเชิงบวกและ / หรือตลกในการตรวจสอบรหัส

เราใช้ Github เป็นแพลตฟอร์มตรวจสอบโค้ดของเราในทีมของฉันดังนั้นทุกคนสามารถแสดงความคิดเห็นได้ ฉันมักจะพยายามใช้แพลตฟอร์มนี้เพื่อให้กระบวนการทั้งหมดตั้งแต่ต้นจนจบสามารถมองเห็นและประวัติศาสตร์


ใช่ฉันรู้ว่าสิ่งนี้เกี่ยวข้องกับวัฒนธรรมเป็นส่วนใหญ่ แต่ฉันกำลังมองหาคำตอบทั่วไป
Codeman

22
เป็นสิ่งสำคัญที่ต้องเสริมสิ่งที่คุณต้องการเห็นด้วยความคิดเห็นเชิงบวก

2
ฉันไม่รู้ว่ามันเหมาะสมหรือไม่ แต่บางครั้งฉันโพสต์โค้ดไฮกุสไว้ในความเห็น: โปรแกรมเมอร์รุ่นน้อง - รหัสที่ไม่มีการใส่คอมเม้นท์ของคุณนั้นเป็นเหมือนเศษเล็กเศษน้อยของความเจ็บปวด
yannis

ฉันจริงโปรแกรมเมอร์จูเนียร์ตรวจสอบรหัสอาวุโส - เรามีกระบวนการที่เข้มงวดสวยที่นี่รหัสทั้งหมดจะต้องถูกตรวจสอบ :)
Codeman

คำตอบ:


53

มันเป็นสิ่งสำคัญที่จะเน้นในเชิงบวกเช่นเดียวกับเชิงลบ ฉันรู้ว่าถ้าฉันกำลังทบทวน refactor ของระบบย่อยที่ชั่วร้ายเป็นสิ่งที่เรียบร้อยและสะอาดฉันอาจซื้อโปรแกรมเมอร์สำหรับความพยายามของเขา

หากคุณกำลังใช้บทวิจารณ์เป็นการฝึกอบรมเป็นสิ่งสำคัญทวีคูณการเน้นรหัสที่ดีจะเป็นประโยชน์สำหรับโปรแกรมเมอร์รุ่นใหม่เช่นกัน พวกเขาจะมีโอกาสถามคำถามเกี่ยวกับสาเหตุที่แนวทางหรือเทคนิคเฉพาะนั้นดีกว่าอีก


คุณสามารถเพิ่มบันทึกย่อว่า "ทำไมจึงสำคัญ" ฉันจะทำเครื่องหมายว่าได้รับการยอมรับเมื่อคุณทำอย่างนั้น :)
Codeman

3
ช่วยให้ผู้ใช้ทราบว่าสิ่งที่พวกเขากำลังทำอยู่ (การเขียนโค้ดที่ดี) ได้รับการชื่นชมและให้ความสำคัญกับการเติบโตซึ่งเป็นความคิดเห็นเกี่ยวกับโค้ดทั้งหมด
Jonathan Rich

1
คุณสามารถเพิ่มสิ่งนี้ลงในคำตอบของคุณ?
Codeman

2
+1 คุณสมควรได้รับตราคำตอบที่ดีสำหรับป้ายนี้ จำนวนสถานที่ที่ไม่ให้ความสำคัญกับการวิจารณ์เชิงสร้างสรรค์เพียงพอที่จะทำให้ฉันประหลาดใจเสมอ การบอกผู้คนว่าพวกเขาทำงานได้ดีเมื่อพวกเขาทำงานได้ดีอาจเป็นแรงจูงใจที่มีประสิทธิภาพอย่างน่าประหลาดใจ
Benjamin Gruenbaum

@Benjamin: มีองค์กรจำนวนมากที่ตรวจสอบโค้ดว่าเป็น 'กระบวนการค้นหาข้อบกพร่องของรหัสของฉัน' ซึ่งกันและกันและไม่ใช่ว่า 'ช่วยสร้างทีมที่มีประสิทธิภาพสูง' จากประสบการณ์ของฉันการตรวจสอบโค้ดเป็นวิธีที่เร็วและดีที่สุดในการทำลายอุปสรรคที่ป้องกันไม่ให้ทีมซอฟต์แวร์ทำงานได้จริง เรามีมาตรฐานของสัญกรณ์ที่เรานำหน้าความคิดเห็นด้วย -2 (ต้องแก้ไข) ถึง +2 (ทำได้ดีมาก)
mattnz

8

ตลก:เก็บไว้ในเครื่องทำน้ำเย็นยกเว้นในปริมาณที่น้อยที่สุด - การมีลูกพรุนไม่ใช่ข้อกำหนดสำหรับการตรวจสอบรหัส

แง่บวก:แน่นอน ตรวจสอบรวมถึงทั้งบวกและลบ / สร้างสรรค์ตามคำนิยาม

ข้อเสนอแนะในเชิงบวกจะช่วยให้ทุกคน:

สำหรับคนที่ได้รับการยกนิ้วให้คุณเสริมความมั่นใจและสร้างแรงบันดาลใจให้พวกเขาทำสิ่งเดียวกันได้มากขึ้นผ่านการตอบรับเชิงบวกของคุณ

สำหรับส่วนที่เหลือเป็นคนอื่นได้กล่าวถึงพวกเขาจะได้เรียนรู้สิ่งที่ต้องทำเช่นเดียวกับสิ่ง ที่จะไม่ทำ พวกเขาจะได้รับการส่งเสริมให้เก่งเช่นกันดังนั้นวันหนึ่งพวกเขาก็สามารถอยู่ในความสนใจได้เช่นกัน

ฉันเคยทำงานให้กับเจ้านายที่เป็นอิสระในการตอบรับเชิงบวกของเขา - ทีมประสบความสำเร็จและประสบความสำเร็จอย่างมาก เขาเดินหน้าต่อไปและคนอื่น ๆ ก็เข้ามาแทนที่นั่นทำให้เขาไม่สามารถชื่นชมงานที่ทำได้ดี ผลผลิตและกำลังใจในการทำงานเป็นจิกหัวและสมาชิกในทีมที่เก่งกว่าหลายคนก็ลาออกจาก บริษัท


3

ฉันว่ารักษาความคิดเห็นที่สะอาดและตรงประเด็นเพราะวัฒนธรรม

คุณไม่สามารถหลีกเลี่ยงได้ว่าบางคนจะทำสิ่งที่ผิด
เพื่อที่จะบรรเทาสิ่งนั้นการพูดคุยแบบตัวต่อตัวจะทำให้สิ่งต่าง ๆ ราบรื่นหากไม่สามารถสนทนาแบบเห็นหน้ากันหรืออีเมลหรือ skype ได้


1
จุดดี. การเป็น "ตลก" ในการแสดงความคิดเห็นสามารถย้อนกลับมาได้อย่างง่ายดายโดยเฉพาะในสภาพแวดล้อมที่มีหลายภาษาและหลากหลายวัฒนธรรม
David Navarre

2

การแสดงความคิดเห็นในการตรวจสอบรหัสกำลังจัดการ

ปฏิบัติต่อความคิดเห็นเป็นเครื่องมือในการจัดการ

การใส่ความคิดเห็นในการตรวจสอบรหัสเป็นรูปแบบหนึ่งของการจัดการ ดังนั้นจึงควรใช้วิธีนี้เป็นเครื่องมือในการจัดการ

ใช้แนวทางการบริหารจัดการเมื่อแสดงความคิดเห็น

มีโครงสร้างการจัดการบุคคลที่เป้าหมายคือการบรรลุผลลัพธ์ที่ต้องการ แนวทางหลักบางประการในการจัดการจะไม่นำไปใช้ในการแสดงความคิดเห็น แต่ส่วนใหญ่จะ หัวข้อที่เกี่ยวข้องรวมถึงสภาพแวดล้อมความเป็นผู้นำการจัดระเบียบและการควบคุม

สิ่งแวดล้อม

วัฒนธรรม

สภาพแวดล้อมเป็นตัวกำหนดสไตล์ของการจัดการ ควรคำนึงถึงวัฒนธรรมและสภาพแวดล้อมของสถานที่ทำงานเมื่อใช้เครื่องมือในการจัดการ โดยปกติสิ่งนี้จะได้รับผลกระทบจากอุตสาหกรรมและขนาดของ บริษัท หรือนิติบุคคลที่ได้รับการจัดการ

สไตล์

หากมีวัฒนธรรมที่เบิกบานใจนั่นอาจเกิดขึ้นในรูปแบบของการจัดการที่ใช้ หากมีแนวทางที่เข้มงวดนโยบายและผลที่ตามมาก็ควรสะท้อนให้เห็นในรูปแบบที่ใช้ ดังนั้นหากทุกคนอยู่บนกระดานสำหรับสตาร์วอร์สเรื่องตลกเกี่ยวกับหุ่นอ้างอิงและสตอร์มทรูปเปอร์ที่มีจิตใจอ่อนแอ อย่างไรก็ตามหากมีผลกระทบร้ายแรงที่ไม่ได้รับผลสุดท้ายอย่างจริงจังอาจต้องหลีกเลี่ยง

ความเป็นผู้นำ

ความรู้พื้นฐาน

มีสามเสาหลักของความเป็นผู้นำที่ควรพิจารณาเมื่อแสดงความคิดเห็น พวกเขาคือวิสัยทัศน์การสื่อสารและการตัดสิน

Vision

เป็นสิ่งสำคัญที่จะต้องรักษาวิสัยทัศน์อันยิ่งใหญ่ไว้ในใจเมื่ออธิบายหรือให้คำแนะนำ ในความคิดเห็นสิ่งนี้อาจหมายถึงการชี้ให้เห็นว่าการเปลี่ยนแปลงเล็ก ๆ น้อย ๆ ส่งผลกระทบต่อโครงการโดยรวมอย่างไรความหมายของการใช้วิธีการต่าง ๆ หรือปลายหมวกเพื่อแยกความกังวล

Communication

การเป็นนักสื่อสารที่ดีเป็นสิ่งสำคัญในหลาย ๆ ด้านของชีวิต มันไม่แตกต่างกันในความคิดเห็น การใช้ความกะทัดรัดในระดับที่ฉลาดเป็นสิ่งสำคัญโดยเฉพาะอย่างยิ่งเมื่อความคิดเห็นไม่ควรใช้พื้นที่มาก ไปที่จุดเริ่มต้นแล้วสำรองด้วยตัวอย่างในกรณีที่จำเป็น ในองค์กรขนาดใหญ่สิ่งนี้อาจรวมถึงความต้องการที่จะส่งแถลงการณ์หรือบันทึกช่วยจำหากปัญหาไม่ได้รับการแปลเป็นภาษาท้องถิ่นในการตรวจสอบครั้งเดียว

Judgement

สิ่งสำคัญคือต้องใช้กลยุทธ์เมื่อตัดสินว่าต้องมีการแสดงความคิดเห็นหรือไม่และจำเป็นต้องมีการเปลี่ยนแปลงใด ๆ คำพิพากษาของคุณไม่จำเป็นต้องถูกต้องเสมอไป แต่จะต้องมีการแก้ไขอย่างสม่ำเสมอโดยเฉพาะเมื่อมีการเรียกการตัดสินใจจำนวนมาก

จัดงาน

จากมุมมองของการจัดการการจัดระเบียบจะหมายถึงการรักษาเป้าหมายสุดท้ายไว้ในใจและทำให้มั่นใจว่ากระบวนการนั้นได้รับการจัดแนวให้เป็นไปตามชุดของกฎ ความคิดเห็นควรคำนึงถึงสิ่งนี้ด้วยเมื่อความเห็นควรสร้างขึ้นต่อกันเพื่อให้แน่ใจว่ามีการติดตามการไหลของการออกแบบ นอกจากนี้ยังเป็นสิ่งสำคัญที่จะต้องคำนึงถึงขอบเขตของรหัสที่ได้รับการตรวจสอบเพื่อลดการเชื่อมต่อและปฏิบัติตามการออกแบบโดยรวม

การควบคุม

การควบคุมการกระทำของผู้ที่ถูกจัดการเป็นกระบวนการที่ละเอียดอ่อน ในขณะที่มั่นคงควรระลึกไว้เสมอว่าผู้คนมีความสำคัญ มีทักษะการจัดการหลายอย่างเพื่อใช้ในขณะที่ควบคุมผู้อื่น ทักษะเหล่านี้คือการเมืองแนวคิดความสัมพันธ์ระหว่างบุคคลการวินิจฉัยและทางเทคนิค

ในทางการเมือง

การเมืองสามารถพบได้ตลอดเวลาที่มีปฏิสัมพันธ์ระหว่างผู้คน มันเป็นหัวข้อใหญ่ แต่โดยทั่วไปแล้วการเมืองหมุนรอบอิทธิพล สิ่งสำคัญคือต้องคำนึงถึงการเมืองส่วนตัวและอาชีพในที่ทำงานเมื่อแสดงความคิดเห็น สิ่งนี้อาจเกี่ยวข้องกับคำสั่งเรื่องตลกหรือแม้แต่คำถาม

เกี่ยวกับความคิดเห็น

การจัดการผ่านแนวความคิดเป็นเครื่องมือสำคัญ มันต้องการการวิเคราะห์ที่ซับซ้อนของสถานการณ์ในมือ เมื่อแสดงความคิดเห็นจะเป็นประโยชน์ในการรวมการวิเคราะห์บางส่วนที่ใช้ในการหาข้อสรุปหรือการเปลี่ยนแปลงที่ระบุในการทบทวน

ความสัมพันธ์ระหว่างบุคคล

ทักษะความสัมพันธ์ระหว่างบุคคลมีความสำคัญมากเมื่อจัดการ นี่เป็นหัวข้อใหญ่เช่นกัน สิ่งสำคัญที่ต้องพิจารณาด้วยทักษะความสัมพันธ์ระหว่างบุคคลคือการให้คำปรึกษาการวิจารณ์เชิงสร้างสรรค์และ "ฉมวก"

Mentoring

มันเป็นสิ่งสำคัญที่การจัดการถูกมองว่าเป็นผู้ให้คำปรึกษามากกว่าเป็นศัตรู ในการตรวจสอบรหัสซึ่งหมายความว่าบางครั้งมันจะเป็นประโยชน์ในการรวมพยักหน้าเข้ากับรูปแบบการออกแบบหรือวิธีการที่สามารถนำมาใช้เพื่อปรับปรุงสถานการณ์

Constructive Criticism

คำติชมเป็นสิ่งสำคัญเพราะมันก่อให้เกิดการสะท้อน อย่างไรก็ตามการวิจารณ์ควรเก็บไว้ในเชิงบวกมากที่สุดเท่าที่จะทำได้ นี่หมายถึงการเสนอหลักฐานที่ถูกต้องเพื่อสนับสนุนการวิจารณ์และยังทำให้มั่นใจได้ว่าน้ำเสียงที่ใช้ไม่ได้เป็นลบ เมื่อตรวจสอบรหัสอาจรวมถึงการแสดงข้อยกเว้นหรือสถานการณ์ที่เป็นไปได้ซึ่งจะสร้างข้อผิดพลาดในขณะที่อ้างถึงวิธีการแก้ปัญหาแทนที่จะแสดงทุกสถานที่ซึ่งไม่ถูกต้องเมื่อต้องเปลี่ยนรหัสทั้งหมด

"Harpooning"

"ฉมวก" คือเมื่อคุณฉมวกเปรียบเปรยใครบางคนลงไปที่พื้น สิ่งนี้ทำได้โดยการทำให้พวกเขาล้มลงทีละขั้นโดยไม่มีการบรรเทาใด ๆ จนกว่าจะถึงจุดที่พวกเขารู้สึกไม่สามารถลุกขึ้น หากคุณฉมวกบุคคลในการตรวจสอบรหัสหรือที่อื่นคุณจะสูญเสียความร่วมมือของพวกเขา มันเป็นสิ่งสำคัญที่จะหลีกเลี่ยงการทำลายใครสักคนมากเกินไป


บทสรุปผู้บริหาร

รักษาความคิดเห็นในการตรวจสอบรหัสเป็นเครื่องมือในการจัดการ โปรดทราบว่าความคิดเห็นควรสั้นกระชับตรงประเด็นและสร้างสรรค์ ตรวจสอบให้แน่ใจว่าในขณะที่การแสดงความคิดเห็นบุคคลที่ถูกตรวจสอบจะถูกนำมาพิจารณา


การตรวจสอบรหัสไม่ควรเป็นการจัดการ ชื่ออื่นคือ 'การตรวจสอบโดยเพื่อน' สำหรับเหตุผลที่ดี ปัญหาอื่น ๆ ที่ฉันมีพร้อมกับคำตอบคือควรจะเป็นรหัสที่อยู่ระหว่างการตรวจสอบไม่ใช่บุคคล หากการตรวจสอบโค้ดนั้นถูกพิจารณาว่าเป็นความคิดเห็นของบุคคลมันก็จะกลายเป็นเครื่องมือการจัดการสำหรับ ดูมันกลายเป็นอินพุตใน KPI และดูเกมที่คนรอบข้างเล่น - "รหัสนั้นอาจจะดีกว่านี้ฉันจะปล่อยให้มันเลื่อนลงถ้าคุณสัญญาว่าจะปล่อยรหัสถัดไปของฉันง่ายขึ้น"
mattnz

@mattnz - เพื่อนจัดการกันเองบ่อยครั้ง ยิ่งไปกว่านั้นไม่ใช่ว่าทุกองค์กรจะทำงานในลำดับชั้นบนสุดอย่างเคร่งครัดซึ่งในกรณีนี้เพื่อนคือปัจจัยสำคัญของการจัดการ อย่างไรก็ตามฉันมีปัญหากับการอ้างสิทธิ์ของคุณว่าการตรวจสอบรหัสไม่เกี่ยวข้องกับบุคคล การแก้ไขนิสัยการเขียนโค้ดที่ไม่ดีนั้นจำเป็นต้องมีแนวทางที่เป็นจริงและการออกคำแนะนำนั้นอย่างสง่างามและให้ความเคารพเป็นสิ่งที่สำคัญมากสำหรับการประสบความสำเร็จ
เทรวิส J

@mattnz - โปรดทราบว่าฉันไม่เคยบอกเป็นนัยว่าการตรวจสอบรหัสเป็นการตรวจสอบของบุคคล ฉันสังเกตเห็นว่าคุณได้สนับสนุนคำตอบที่ยอมรับที่นี่ซึ่งฉันเห็นด้วยเช่นกัน อย่างไรก็ตามสิ่งที่แปลกคือคำตอบนั้นมุ่งเน้นไปที่แต่ละคนอย่างชัดเจนซื้อพิซซ่าและเสนอการสรรเสริญเป็นการส่วนตัว ฉันไม่มีปัญหากับสิ่งนั้น แต่คุณจะบอกได้อย่างไรว่าไม่ได้มีส่วนร่วมในการ "ตรวจสอบบุคคล" พูดตามตรงดูเหมือนว่าคุณจะอ่านประโยคแรกและประโยคสุดท้ายของคำตอบนี้เท่านั้น
เทรวิส J

0

การตรวจสอบรหัสเป็นเครื่องมือในการปรับปรุงคุณภาพของรหัสโดยการเปิดเผยข้อบกพร่อง ที่สำคัญคุณต้องการปลูกฝังการเขียนโปรแกรมที่ดี

จากมุมมองนี้มันเป็นสิ่งสำคัญที่จะแสดงความคิดเห็นในสิ่งที่ทำได้ดี ในบริบทการฝึกอบรมควรมีการปรับปรุงความคิดเห็น หากวัฒนธรรมของคุณเป็นหนึ่งในการปรับปรุงอย่างต่อเนื่องคุณควรแสดงความคิดเห็นในการปรับปรุงอยู่เสมอ

ข้อผิดพลาดข้อบกพร่องและการเข้ารหัสที่ไม่ดีจะเกิดขึ้น ชี้ให้พวกเขาในลักษณะที่ไม่ใช่ส่วนบุคคลและปฏิบัติต่อพวกเขาตามที่คาดไว้

จากมุมมองการปรับเปลี่ยนพฤติกรรมรางวัลดีกว่าในการสร้างการเปลี่ยนแปลงมากกว่าการลงโทษ ฉันคิดว่าการทำงานที่ดีเป็นรางวัล

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.