Philosopher Flusser about 2 kinds of complexity
youtube.comStructural complexity (the internals) against functional complexity (the use) reminds me that worse is better because overengineering selects orthogonality into unimportant problem-dimensions, that is tends to enhance the structure while hindering the use.
It would seem that programming languages play a big part in determining the level of structural complexity produced in a piece of software. Lisp, for example, is structurally simple while being functionally complex.