The article lists 10 reasons which can basically be boiled down to:
1) Unrealistic assumptions ('perfect' developers, 'perfect' architecture etc.)
2) You simply don't care about quality.
1) Unrealistic assumptions ('perfect' developers, 'perfect' architecture etc.)
2) You simply don't care about quality.