คำถามนี้ได้รับแรงบันดาลใจจากคนนี้ ในขณะที่คำถามอื่น ๆ ถูกแปลเป็นภาษาท้องถิ่นฉันเชื่อว่าปัญหาพื้นฐานเป็นสิ่งที่พบได้ทั่วไปในอุตสาหกรรมของเรา ฉันรู้ว่ามีนักพัฒนาบางคนที่จะอ่านและคิดว่าฉันทำสิ่งนี้ขึ้นแล้วพวกเขาอาจตอบว่าทุกคนใส่ใจงานของพวกเขาและต้องการเรียนรู้ แต่เพียงแค่ดูโพสต์โปรแกรมเมอร์ SE อื่น ๆ ( ตรงประเด็น ) ฉันรู้ว่านั่นไม่ใช่ความจริงในระดับสากล
ดังนั้นสมมติว่าคุณมีใครบางคนในทีมของคุณ (หรืออาจเป็นคนส่วนใหญ่) ซึ่งเป็นขั้นตอนการปฏิบัติงานมาตรฐานคือการคัดลอก / วางและผู้ที่เชื่อว่าทุกอย่างสามารถแก้ไขได้ถ้าเพียงคุณเพิ่มการเรียกฟังก์ชันและตัวแปร บุคคลนี้ไม่เคยได้ยินเรื่อง TDD, DRY หรือ SOLID และนอกเวลาทำงาน 40 ชั่วโมงเมื่อพวกเขาไม่ว่างที่ทำงานพวกเขาไม่เคยอ่านวิธีการ / การปฏิบัติ / การออกแบบหนังสือเล่มเดียว
ในอดีตฉัน (และคนอื่น ๆ ) ได้ถามคุณจะสอน OODได้อย่างไร แต่ตอนนี้ฉันคิดว่านั่นไม่ใช่คำถามที่ถูกต้อง คำถามที่แท้จริงคือคุณจะเข้าหาบุคคล / ทีมเช่นนั้นได้อย่างไรและทำให้พวกเขาอยากรู้อยากเห็นเกี่ยวกับวิธีที่ดีกว่าในการทำสิ่งต่าง ๆ ? คุณสร้างแรงบันดาลใจให้พวกเขาเรียนรู้ได้อย่างไร หากปราศจากสิ่งนั้นดูเหมือนว่าการสอนการประชุมการบรรยายและการอภิปรายทั้งหมดจะไร้ประโยชน์หากพวกเขามีความสุขอย่างสมบูรณ์แบบที่จะกลับไปที่โต๊ะทำงานของพวกเขาและทำสิ่งที่พวกเขาทำมาตลอด
ฉันทำงานกับกลุ่มคนแบบนี้ จริงๆแล้วพวกเขาเป็นคนที่ค่อนข้างสดใส แต่ฉันเกลียดเมื่อฉันได้ยินว่า "ฉันเขียนโค้ดเสร็จแล้วเพียงแค่ต้องการปรับโครงสร้างและแบ่งออกเป็นหลายคลาสเพื่อให้ DXM มีความสุข" พวกเขาจะไม่ refactor เพื่อทำความสะอาดอ่านง่ายรหัสบำรุงรักษา แต่เพียงเพราะพวกเขาจะได้รับการดุ ฉันรู้ว่าพวกเขามีความสามารถในการเรียนรู้ดูเหมือนว่าไม่มีแรงจูงใจทั่วไป
เมื่อฉันส่งงานโดยทั่วไปจะมีข้อผิดพลาดน้อยลงและงานที่ฉันเป็นเจ้าของไม่เคยกลายเป็นสิ่งที่น่าประหลาดใจในสายการผลิต 5,000 บรรทัด คนอื่นจะแสดงความคิดเห็นเช่น "รหัสของคุณสะอาดและอ่านง่ายกว่าสิ่งของของเรา" ดังนั้นพวกเขาจึงเห็นความแตกต่าง แต่ในเวลาเดียวกันฉันรู้สึกว่าพวกเขาเชื่อว่าพวกเขาได้รับเงิน 40 ชั่วโมงโดยไม่คำนึงถึงสิ่งที่พวกเขาทำดังนั้นพวกเขาจึงไม่รังเกียจถ้าพวกเขาใช้เวลา 3 วันเต็มในการตรวจสอบคุณภาพเพื่อหาจุดบกพร่องที่ไม่ควรนำมาใช้ สถานที่แรก หรือว่าพวกเขาใช้เวลาหนึ่งสัปดาห์ในการปรับเปลี่ยนชั้นหนึ่งเพราะมีการอ้างอิงจำนวนมากที่พวกเขาท้ายสัมผัส แม้ว่า "ชั้นนั้นควรจะถูกเขียนแตกต่างกัน" ดูเหมือนจะไม่ปรากฏขึ้น
สามารถทำอะไรได้บ้างในสถานการณ์เหล่านี้? มีใครประสบความสำเร็จ? หรือเป็นการดีที่สุดที่จะแยกความคิดนั้นออกเป็นส่วนที่ไม่สำคัญของโครงการและลดความเสียหายให้น้อยที่สุด?
หมายเหตุ:เมื่อฉันพูดว่า "ขาดแรงจูงใจ" ฉันไม่คิดว่ามันขาดแรงจูงใจในการทำงานหรือทำงานได้ดีเพราะพวกเขาเพียงแค่หยุดใส่ใจ ทีมของเราส่วนใหญ่ค่อนข้างตรงกันข้าม พวกเขาสนใจผลิตภัณฑ์อย่างแน่นอน เรามีพวกที่จะทำงานทั้งคืนและวันหยุดสุดสัปดาห์ ส่วนที่ฉันพยายามทำคือการปรับปรุงนิสัยและทักษะให้ดีขึ้นจริง ๆ แล้วพวกเขาไม่ต้องทำงานมากนัก ฉันเดาว่าสิ่งที่ "40 ชั่วโมง" ทำให้โพสต์นี้ฟังดูแย่ไปหน่อย