With a touch of humor, the following two laws reflect the state of the art admirably well: - Software expands to fill the available memory. (Parkinson) - Software is getting slower more rapidly than hardware becomes faster.(Reiser)
Clearly, two contributing factors to the acceptance of ever-growing software are
- rapidly growing hardware performance and
- customers' ignorance of features that are essential-versus-nice to have.
Increasingly, people seem to misinterpret complexity as sophistication, which is baffling-the incomprehensible should cause suspicion rather than admiration.