A useful rule of thumb in software development (and many other areas of life) is "Good, On Time, Within Budget — Pick Any Two!"

In other words, if you want a program to be good, to do what it promises, then you'll likely get it late or it will cost more than you expect. If you want the code delivered when promised, then you should anticipate loss of functionality or great expense. And if you focus on cost control, then either performance or schedule will slip.

A shorter but less grammatical form of the same concept is, "You want it bad, you'll get it bad!"

Saturday, May 29, 1999 at 14:17:46 (EDT) = 1999-05-29


(correlates: PerversityPrinciple, PickTwoOutOfThree, CornFloss, ...)