Navigator
- ตรวจจับข้อผิดพลาดเร็วเกินไป
- ให้เวลาคนขับแก้ syntax error และคำพิมพ์ผิดด้วยตัวเอง
- การคอยทักข้อผิดพลาดเล็กน้อยตลอดเวลาจะตัดจังหวะการไหลของงาน และทำให้อีกฝ่ายกังวลกับสายตาของคนอื่น
- หน้าที่ของคุณไม่ใช่การชี้คำที่ผิดทันที แต่คือการมองภาพใหญ่
- สั่งการในระดับล่างเกินไป
- ถ้ามีข้อเสนอแนะให้คนขับ ให้สื่อสารในระดับนามธรรมที่สูงที่สุดเท่าที่อีกฝ่ายจะเข้าใจได้
- ถ้าคุณเริ่มเหมือนกำลังบอกโค้ดทีละบรรทัด (หรือหนักถึงขั้นทีละคีย์) ให้หยุดสักครู่แล้วดูว่าสามารถคุยในระดับที่สูงกว่านี้ได้ไหม
- ถ้ายังไม่ได้ผล ให้ขอเปลี่ยนไป drive ชั่วคราวเพื่อสเก็ตช์ไอเดีย
- ไม่ใช้คีย์บอร์ดของตัวเอง
- พกคีย์บอร์ดของตัวเองมาทุกเซสชัน pairing และเสียบไว้ก่อนเริ่ม
- แบบนี้จะทำให้สลับบทบาทกันได้ง่าย และสามารถแสดงให้ดูแทนการอธิบายได้
- มีเมาส์ของตัวเองด้วยก็ดี แต่ไม่จำเป็น
Driver
- ขับเร็วเกินไป
- ถ้าคุณชำนาญ editor มาก อาจเผลอเร็วเกินกว่าที่แม้แต่ Navigator ที่มีประสบการณ์ก็ยังตามไม่ทัน
- ถ้ายังไม่มั่นใจว่าอีกฝ่ายตามทัน อย่าควบคุมโค้ดด้วยความเร็วสูงสุดของคุณ
- พูดสิ่งที่กำลังทำออกมาด้วยจะช่วยได้
- ปล่อยให้ Navigator หลุดออกจากวง
- ถ้าทำเร็วเกินไป หรือทำสิ่งที่อีกฝ่ายไม่เข้าใจ ก็จะเสียความสนใจของ Navigator ได้ง่าย
- ถ้าสังเกตว่าอีกฝ่ายเริ่มหลุด ให้หยุดแล้วซิงก์กันใหม่
- คำถามที่ไม่ดี: "เข้าใจสิ่งนี้อยู่ใช่ไหม?"
- คำถามที่ดี: "ส่วนไหนที่ตามได้ยาก?"
- การ pairing ต้องอาศัยการสื่อสารสองทางอย่างต่อเนื่อง ถ้าคุณหรือ Navigator ของคุณเงียบไป ให้หยุดและเช็กอินกัน
- การเข้าถึงหน้าจอที่ไม่เท่าเทียมกัน
- วางจอไว้กึ่งกลางระหว่างทั้งสองคน และตรวจให้แน่ใจว่าทั้งคู่มองเห็นได้เท่ากัน (อาจพิจารณาเพิ่มขนาดฟอนต์)
- ถ้าคนหนึ่งต้องเอียงไปด้านข้าง จะก่อให้เกิดลำดับชั้นความไม่เท่าเทียมแบบไม่รู้ตัว
- คู่คือหนึ่งหน่วยเดียวกัน ไม่มีใครสำคัญกว่าใคร
- ไม่พัก
- การ pairing ใช้พลังงานมาก มากกว่าการเขียนโปรแกรมปกติมาก
- วิธีที่ดีในการพักอย่างเหมาะสมคือใช้เทคนิค Pomodoro
- ก่อนเริ่มควรตกลงกันเรื่องความยาวของช่วงทำงาน/พักที่แต่ละคนชอบ
- ได้ยินแต่ไม่ฟัง
- การฟังและการพิมพ์ไปพร้อมกันเป็นเรื่องยาก
- ตอนที่ Navigator เสนอความเห็น ให้ยกมือออกจากคีย์บอร์ด และถ้าจะให้ดีกว่านั้นให้หันตัวไปสบตา
ทั้งสองฝ่าย
- ปล่อยให้มีสิ่งรบกวนที่ไม่ก่อให้เกิดประโยชน์
- ปิดการแจ้งเตือนทั้งหมดก่อนเริ่ม pairing (ทั้งบนคอมพิวเตอร์และโทรศัพท์)
- ระหว่างเซสชันไม่ควรมีการแจ้งเตือนหรือข้อความใด ๆ เด้งขึ้นมา ถ้าพลาดจนมีขึ้นมา ให้ขอโทษและทำให้แน่ใจว่าจะไม่ดังอีก
- อย่าเปิดอีเมลค้างไว้บนจออีกตัว
- (จริง ๆ ควรทำแบบนี้แม้ไม่ได้ pairing ด้วย วิธีเพิ่ม productivity ที่เร็วที่สุดคือการลด interruption)
- ไม่สลับบทบาท
- การขับและการนำทางทำให้เหนื่อยคนละแบบ
- การสลับบทบาทช่วยให้สมองส่วนที่ล้าได้พัก และกระตุ้นส่วนที่ได้พักอยู่แล้วให้กลับมาทำงาน
- การเปลี่ยน Driver เป็นวิธีที่ดีในการเติมพลังให้เซสชัน pairing ลองตั้งตัวจับเวลาเพื่อเตือนทุกครั้งที่ควรสลับ
- ลืมไปว่านี่คือทักษะ
- Pair programming คือ "ทักษะ" ที่ต้องเรียนรู้
- ช่วงแรกอาจทำได้ไม่ดี แต่ถ้าฝึกอย่างสม่ำเสมอก็จะพัฒนาขึ้น
- อย่ายอมแพ้หลังจากประสบการณ์ครั้งแรกที่ยากลำบาก อย่าคิดว่านักพัฒนาที่เก่งจะต้องเป็นคู่ที่ดีเสมอไป และอย่าคาดหวังว่าจะทำได้ดีโดยไม่ฝึก
- หลังจบแต่ละเซสชัน ให้สะท้อนและแลกเปลี่ยน feedback กับคู่ของคุณ เราจะทำให้ดีกว่านี้ได้อย่างไร?
1 ความคิดเห็น
อย่าเปิดอีเมลค้างไว้บนจออีกจอหนึ่ง