สมมติว่าเราอยู่ในสถานการณ์ต้องเลือกรับงานทำซอฟต์แวร์ให้ลูกค้าหรือพาร์ทเนอร์ … กลายๆว่าเราเป็นมือปืนรับจ้าง ทำให้คนอื่น ของคนอื่น และไม่ใช่ของเราเอง
เมื่อเจ้าของโปรเจกต์ ผู้จ่ายเงินเองก็ยังไม่กล้าจะคอมมิตโปรเจกต์ระยะยาวเพราะปัจจัยหลายอย่าง — ยังไม่เคยร่วมงานกัน งบประมาณไม่มากนัก
ทางเลือกที่หนึ่ง — ค่อยเป็นค่อยไป ค่อยๆทำ ค่อยๆเพิ่มสโคปเมื่อเห็นผลงานมากขึ้น แบบว่าไปเรื่อยๆ โดยไม่มีปลายทางกำหนด
ทางเลือกที่สอง — กำหนดเป้าหมายชัดเจน กำหนดเดดไลน์ชัดเจน และกำหนดงบประมาณชัดเจน // จบแล้วก็หมดภาระกันไป
ถ้าเราต้องอยู่ในสถานการณ์แบบนี้ … อย่าเลือกทางที่หนึ่ง ทางที่ค่อยๆแรมป์อัพงาน เราต้องเลือกทางที่สองเสมอ … แนวทางที่เรียกว่าไทม์บ๊อกซ์โปรเจกต์
เพราะการทำงานแบบไปเรื่อยๆค่อยๆเพิ่มหรือค่อยๆลดไม่เคยให้ผลดีกับใคร คนทำงานไม่เห็นปลายทางที่ชัดเจน ไม่มีความเข้มข้นในการทำงาน ไม่มีคอมมิตเม้นต์ เรื่อยๆไปวันๆ เสร็จก็ส่ง ไม่เสร็จก็ต่อวีคหน้า
ซอฟต์แวร์ที่ดีจะเกิดได้เมื่อ ทีมคนพัฒนารู้ว่าเราทำสิ่งนี้ไปเพื่ออะไรและมีข้อจำกัดอะไรบ้าง (งบประมาณ คน เวลา) ทีมพัฒนาที่ดีจะมองหาหนทางที่เหมาะสมที่สุดที่จะไปยังเป้าหมายได้ภายใต้ทรัพยาการอันน้อยนิด
ทั้งหมดจะเกิดได้เมื่อเราเลือกที่จะทำไทม์บ๊อกซ์เท่านั้น … แรมป์อัพ แรมป์ดาวน์ไม่เคยเป็นไอเดียที่ดี
ถ้าไม่มีคอมมิตเม้นต์จากผู้จ้าง อย่าทำ อย่ารับงานนี้ ถึงจะได้เงินแต่โอกาสที่โปรเจกต์จะล้มเหลวมีสูง — เพราะความไม่ชัดเจน งานจะไม่สร้างคุณค่าให้ผู้ใช้ งานจะเสร็จครึ่งๆกลางๆ เพราะคนที่เกี่ยวข้องไม่มีความรู้สึกเป็นเจ้าข้าวเจ้าของในสิ่งนี้
ถ้าไม่ใช่ไทม์บ๊อกซ์ อย่าทำจะดีที่สุด