ฉันคิดว่าคุณเป็นคนขี้ฉลาดและเป็นคนโง่
ประการแรกต้นทุนเครื่องจักรนั้นเล็กน้อยเมื่อเทียบกับต้นทุนของนักพัฒนา คุณควรทำงานอย่างมีประสิทธิภาพสูงสุดโดยไม่ต้องลดต้นทุนของเครื่องจักร
ประการที่สองความล่าช้า (ไม่ใช่แบนด์วิดท์) เป็นกุญแจสำคัญในการเขียนโปรแกรมหลายงาน - โดยเฉพาะการแก้ไขข้อความ สำหรับดอลลาร์ / ปอนด์ / ยูโรทุกครั้งที่คุณประหยัดเครื่องจักรสำหรับนักพัฒนาของคุณคุณจะใช้จ่ายอย่างน้อยสิบในการอัปเกรดเครือข่ายเพื่อรักษาประสิทธิภาพการผลิต - และแม้แต่นั้นพวกเขาอาจจะมีประสิทธิผลมากขึ้นถ้าคุณประหยัดด้วยการจัดหา พวกเขาด้วย Pentium III ที่คุณพบในถังขยะที่ไหนสักแห่ง
ฉันยังคิดว่ามีประโยชน์อย่างมากในการให้นักพัฒนาของคุณใช้สภาพแวดล้อมอย่างน้อยก็ใกล้เคียงกับเป้าหมายของผู้ใช้ปลายทาง โดยไม่คำนึงถึงเป้าหมายการทำงานอย่างเป็นทางการในสเป็คและเช่นนั้นโปรแกรมเมอร์ส่วนใหญ่มักจะให้ความสำคัญกับความรู้สึกของรหัสเมื่อทดสอบ เมื่อพวกเขากำลังใช้สภาพแวดล้อมที่แตกต่างอย่างสิ้นเชิงจากผู้ใช้ปลายทางพวกเขามีแนวโน้มที่จะเสียเวลากับเรื่องไม่สำคัญในขณะที่มองปัญหาที่สำคัญอย่างสมบูรณ์
เนื่องจากสภาพแวดล้อมที่เป็นเนื้อเดียวกันนั้นดูน่าดึงดูดจากมุมมองของการสนับสนุนและโดยทั่วไปคุณควรสนับสนุนให้เครื่องของนักพัฒนาซอฟต์แวร์มีความหลากหลายมากที่สุดเท่าที่จะทำได้ นักพัฒนาไม่ค่อยต้องการการสนับสนุนมากนักและรู้ได้ทันทีเมื่อคุณมีรหัสที่จะล้มเหลวด้วยชิปกราฟิก, ซีพียู, อะแดปเตอร์เครือข่าย ฯลฯ ที่แตกต่างกัน
บรรทัดล่าง: หากคุณกำลังเขียนโค้ดที่มีจุดประสงค์ (อย่างน้อยที่สุด) เพื่อใช้ในสภาพแวดล้อมเซิร์ฟเวอร์เสมือนจริงคุณแค่ต้องเตรียมมันสำหรับนักพัฒนาของคุณ หากคุณกำลังทำการทดสอบอยู่ก็สามารถทำได้ (แต่ไม่จำเป็น) ที่จะต้องมีการพัฒนาเช่นกัน ในทำนองเดียวกันหากคุณต้องการ (หรืออย่างน้อยก็มี) เซิร์ฟเวอร์และเครือข่ายที่เจาะจงมากเกินไปอย่างไรก็ตามคุณอาจต้องใช้ประโยชน์จากสิ่งนั้นโดยใช้สิ่งที่คุณมีอยู่แล้ว
ภายใต้สถานการณ์ทั่วไปส่วนใหญ่อย่างไรก็ตามสำหรับฉันแล้วดูเหมือนว่านี่น่าจะมีปัญหามากกว่าที่จะแก้