Kyle Wilson attempts to answer that, and amazingly brings up factors that are not usually discussed. Software development, by itself, is complex because there are always unknown factors, and we are still not capable of anticipating all of them. But a software project can easily turn into an abysmal hole where we keep doing things. [Continue]

