Ben Moseley and Peter Marks on complexity.
Simplicity is Hard. (Moseley and Marks 2006, 3)
Hence we define the following two types of complexity: Essential Complexity is inherent in, and the essence of, the problem (as seen by the users). Accidental Complexity is all the rest — complexity with which the development team would not have to deal in the ideal world (e.g. complexity arising from performance issues and from suboptimal language and infrastructure). (Moseley and Marks 2006, 21)
The relational model [Cod70] has — despite its origins — nothing intrinsically to do with databases. Rather it is an elegant approach to structuring data, a means for manipulating such data, and a mechanism for maintaining integrity and consistency of state. These features are applicable to state and data in any context. (Moseley and Marks 2006, 37)
We have argued that complexity causes more problems in large software systems than anything else. We have also argued that it can be tamed — but only through a concerted effort to avoid it where possible, and to separate it where not. (Moseley and Marks 2006, 64)